N1 Service Provisioning System 5.1 は、分散型のソフトウェアプラットフォームです。このプロビジョニングシステムには、次に示す特殊用途のアプリケーションが含まれます。ユーザーは、これらのアプリケーションをネットワーク内のサーバーにインストールして使用します。これらのアプリケーションは、ユーザーがネットワーク内のサーバーにソフトウェアを配備できるよう連係して動作します。
「マスターサーバー」 – コンポーネントとプランを保持するセントラルサーバーであり、アプリケーション配備を管理するインタフェースを提供します。
「ローカルディストリビュータ」 – マスターサーバーのプロキシとして機能するオプションサーバーであり、データセンター間のネットワーク通信やファイアウォールを介したネットワーク通信を最適化します。
「リモートエージェント」 – ホスト上で処理を行う管理アプリケーション。N1 Service Provisioning System 5.1 を使用して制御する各サーバーに、リモートエージェントアプリケーションが存在しなければなりません。
「CLI Client」 – マスターサーバー上で実行されるコマンドを受け付けるオプションのアプリケーション。
マスターサーバーは、Linux、UNIX、および Windows ベースのサーバーで稼働します。マスターサーバーは、次のような処理を行うセントラルサーバーです。
このプロビジョニングソフトウェアに登録されているすべてのホストを識別するデータベースを管理する
リポジトリ内にコンポーネントとプランを格納する
リポジトリ内に格納されているオブジェクトのバージョン制御を行う
プロビジョニングシステムユーザーの認証を行い、承認されたユーザーだけが一定の処理を行えるようにする
依存性の追跡および配備などのタスクを実行する専用エンジンを含める
ユーザーにブラウザインタフェースとコマンド行インタフェースの両方を提供する
ローカルディストリビュータは、リモートエージェントの配布と管理を最適化するプロキシです。データセンターでは、ローカルディストリビュータを使用して次の処理を行えます。
配備時のネットワークトラフィックを最小限に抑える。マスターサーバーは、コンポーネントのコピー一式をローカルディストリビュータに送信します。ローカルディストリビュータは、ほかのサーバーでのインストールのためにこのコンポーネントを複製します。
ファイアウォールの再構成を最小限に抑える。ファイアウォールがマスターサーバーと複数のサーバー間に位置付けられている場合、管理者がファイアウォールをオープンできるのは (配備に関連するすべてのサーバーに対してではなく) ローカルディストリビュータ に対してだけです。
大規模配備の際にマスターサーバーにかかる負荷を最小限に抑える
リモートエージェントは、N1 Service Provisioning System 5.1 によって管理されているすべてのサーバーで動作するアプリケーションです。リモートエージェントは、マスターサーバーによって要求されるタスクを実行します。リモートエージェントは次の作業に利用できます。
サーバーのハードウェア構成とソフトウェア構成をマスターサーバーに報告する
サービスの開始と停止を行う
ディレクトリのコンテンツとプロパティを管理する
ソフトウェアのインストールとアンインストールを行う
コンポーネントとプランで指定されたオペレーティングシステムコマンドとネイティブスクリプトを実行する
CLI (Command Line Interface: コマンド行インターフェース) Client は、ローカルサーバーとリモートサーバーからのコマンド実行を可能にする、マスターサーバーへの通信パスを提供します。CLI Client は、次の環境でコマンドの実行を許可します。
Windows コマンド行
UNIX シェル (bash など)
これらのコマンドを実行する場合、CLI Client は TCP/IP を使用するか、あるいは SSL または SSH のセキュリティー保護された接続を介してマスターサーバーへの接続を確立します。
CLI Client は、次の 2 つのモードで動作します。
単一コマンドモード: コマンドを 1 つずつ実行します。
対話モード: コマンド入力のプロンプトが表示され、コマンドの履歴が保持されます。Jython によるスクリプト記述も行えます。
対話モードで処理する場合、CLI Client は Jython プログラミング言語を使用します。Jython は、オブジェクト指向の高度な動的言語 Python の Java 実装です。
対話モードで CLI Client を実行する予定のあるすべてのサーバーに Jython をインストールしてください。Jython の詳細の確認とダウンロードは、http://www.jython.org で行えます。