N1 Service Provisioning System 4.1 ユーザーガイド

第 1 章 N1 Service Provisioning System ソフトウェア の概要

この章では、データセンターでアプリケーションを管理するための、N1TM Service Provisioning System ソフトウェアのソリューションを紹介します。 プロビジョニングソフトウェア により解決される問題、 プロビジョニングソフトウェア のアーキテクチャー、およびアプリケーション管理に適用されるオブジェクト指向の手法についても説明します。

この章の内容は次のとおりです。

データセンターが直面する課題

あらゆる種類のビジネスは、その中核業務を担うソフトウェアアプリケーションへの依存を高めています。 これらのアプリケーションの管理作業は、ミッションクリティカルな作業です。 しかし現在まで、データセンターの IT オペレーターには、アプリケーションの配備、設定、および分析を行うためのツールは、基本的なものしかありませんでした。 大部分のデータセンターでは、重要な機能の実行をカスタマイズしたスクリプトに頼っています。 IT オペレーターは、このようなスクリプトに関わるリスクを認識しています。

N1 Service Provisioning System ソフトウェア のソリューション

N1 Service Provisioning System ソフトウェア はエンタープライズクラスのソフトウェアプラットフォームで、データセンターにおけるアプリケーションの配備、設定、および分析を自動化します。 プロビジョニングソフトウェア は、次の要素に対してオブジェクト指向のアプローチを適用します。

このオブジェクト指向のアプローチにより、コンポーネントがアクションの対象になるたびに、アプリケーションコンポーネントに関するすべての情報が自動的に考慮されるようになります。 このような一貫性により、データセンターでの処理がより正確になり、エラーも発生しにくくなります。 アプリケーション認識、つまりアプリケーションの全体としての必要に対する知識により、IT オペレーターはアプリケーションとデータセンターの処理を極めて高度に制御することができます。

N1 Service Provisioning System ソフトウェア には、次の機能があります。

N1 Service Provisioning System ソフトウェア は、企業全体のコンピュータ環境を管理するタスクを簡単かつ素早く行えるようにできる、すべての範囲の機能を提供します。

プロビジョニングソフトウェア は、次の機能を実現しています。

自動配備

パッケージアプリケーションとカスタムアプリケーションの配布、設定、および起動を含む、配備プロセスのエンドツーエンドでの自動化。

差分配備

大規模コンテンツディレクトリの増分のみの配布を実現することによる、配備の大幅なスピードアップと増分ディレクトリ更新の最適化。

配備のシミュレーション

配備前に、配備を成功させるための主要な要件が完備していることを確認するための、完全なシミュレーション。

動的設定

対象環境のためのアプリケーション設定をリアルタイムに作成することにより、配備時に柔軟性が実現されます。

依存性の管理

ダウンタイムの原因になるエラーを防止し、オペレーションチーム全体でベストプラクティスを 活用するための、配備のシミュレーション時にチェックされるアプリケーション依存性情報をコード化する機能。

アプリケーションの比較

アプリケーション設定の差分を追跡し、サーバーへの不正な変更を特定する機能により、アプリケーションエラーの根本原因の分析に必要な時間が短縮されます。

バージョン管理

参照および再構築に使用し、以前の状態へのロールバックを自動化するための、配備および設定の全データを追跡する中央リポジトリ。

ログ記録とレポート

すべてのアプリケーションと管理対象サーバーの全体でシステムにより行われたあらゆるアクションを詳細にログに記録することで、各サーバーに対して 行われたあらゆる変更の完全な監査履歴が提供されます。

Windows のネイティブでのサポート

COM+ コンポーネントに関しては、COM+ コンポーネントを Interactive User または特定の User および Password のいずれかとしてインストールする場合でも、XML を編集する必要はありません。

Windows システムの再起動

多くのアプリケーションでは、ソフトウェアのインストール時またはインストール後にサーバーを再起動する必要があります。 プランには、Microsoft Windows サーバーを再起動できる手順が含まれています。

N1 Service Provisioning System ソフトウェア のアーキテクチャー

N1 Service Provisioning System ソフトウェア は、分散型のソフトウェアプラットフォームで、企業全体のコンピュータ環境における配備と設定作業を自動化し、サーバー、インストールされたアプリケーション、およびファイル構造の可視性と制御を向上させます。

プロビジョニングソフトウェア には、特別な目的に使用する、次のアプリケーションが含まれています。

次の図に、企業ネットワーク上でのアプリケーションのインストール形態の例を示します。

図 1–1 N1 Service Provisioning System ソフトウェア のアーキテクチャー

>

Master Server (MS)

Master Server は、N1 Service Provisioning System ソフトウェア の主処理エンジンです。 専用マシンにインストールされ、プロビジョニングソフトウェア のさまざまな機能を実行する一次処理エンジンを提供します。 Master Server には、オブジェクト、オブジェクト属性、および実行されるタスクを定義するプランがすべて格納されます。 また Master Server は、Command Line Interface (CLI) Client を実行して、N1 Service Provisioning System ソフトウェア、および HTML (グラフィカル) インタフェースを実現する Web Server に対する、タイプ入力による制御を実現します。

Master Server には次の要素が含まれます。

N1 Service Provisioning System ソフトウェア のリポジトリには、権限のあるユーザーにのみアクセス可能な、セキュリティー保護された組み込み SQL リレーショナルデータベースの形式で、コンポーネントとプランが保存されます。 各コンポーネントと各プランのバージョンは、リポジトリにより追跡されます。 たとえば、ある配備の一部として IT オペレーターは、バージョン 3 の Web サーバーと、バージョン 4 のカスタムアプリケーションを配備する、バージョン 5 のプランを実行することができます。

実稼働データセンターの運用では、アプリケーションに対して提案される変更は、 元のアプリケーション開発グループ、QA チーム、実稼働サーバーを管理する IT チームなど、数多くから要求されることがあります。 プロビジョニングソフトウェア では、IT オペレーターはこれらのソースからの設定データを取得し、リポジトリにこれらの変更をチェックインすることができます。 IT オペレーターは、コマンド行インタフェース (CLI) を使用してネットワーク上の任意のマシンにアクセスし、その設定データを取得することができます。 また IT オペレーターは、マシンに Remote Agent をインストールし、HTML インタフェースを使用して、リソースをそのマシンから選択することができます。そのリソースは、プロビジョニングソフトウェア によりリポジトリに保存され、コンポーネントを作成するために設定データと結合されます。

Remote Agent (RA)

Remote Agent は JavaTM アプリケーションで、N1 Service Provisioning System ソフトウェア により管理される各システム上で実行されます。 Remote Agent が受け持つ仕事は、Master Server により要求されるタスクの実行です。 通常、Remote Agent が起動されるのはアプリケーションの起動時または停止時のみであるため、Remote Agent とデータセンターサーバー上のアプリケーションが、リソースをめぐって競合することはありません。

Remote Agent には、次の機能があります。

Local Distributor (LD)

Local Distributor の使用は任意です。 Local Distributor を使用すると、Local Distributor は一時的に Master Server として動作するプロキシになって、アプリケーション、ファイル.およびディレクトリの配布と管理を最適化します。

データセンターでは、Local Distributor を次の目的に使用できます。

Command-Line Interface Client

Command-Line Interface Client は、Master Server への通信パスを提供して、遠隔システムからの N1 Service Provisioning System ソフトウェア コマンドの実行を可能にします。 これらのコマンドは、Windows のコマンド行や、bash などの UNIX® シェルを使用して入力します。 コマンド行インタフェースは、sh または Perl を使用したシェルスクリプトの使用もサポートしています。

また Command-Line Interface Client では、Jython プログラミング言語も使用できます。 Jython は、高レベル、動的かつオブジェクト指向の言語である Python の Java による実装です。 Command-Line Interface Client をインストールするプランがあるすべてのシステムでは、Jython をインストールする必要があります。 Jython の詳細および Jython のダウンロードに関しては、http://www.jython.org にアクセスしてください。

Web

Web は、Master Server への通信パスを提供します。

ネットワークプロトコル

N1 Service Provisioning System ソフトウェア は、N1 Service Provisioning System ソフトウェア アプリケーション間での通信に対して、さまざまなネットワークプロトコルをサポートしています。 次のプロトコルがサポートされています。

Raw TCP/IP

Raw TCP/IP は、暗号化や認証が追加されていない、標準の TCP/IP です。 Raw TCP/IP の利点としては、追加の設定が不要な点があります。 データセンターネットワークがファイアウォールにより保護され、侵入からセキュリティー保護されている場合は、Raw TCP/IP を使用すると、N1 Service Provisioning System ソフトウェア アプリケーション間で通信を行うための便利な手段になります。

Secure Shell

SSH (Secure Shell) は、遠隔コンピュータに安全にアクセスするための、UNIX ベースのコマンドスイートおよびプロトコルです。 SSH は、デジタル証明書を使用して両方のエンドポイントを認証し、パスワードを暗号化することにより、ネットワーククライアント/サーバーの通信をセキュリティー保護します。 ssh では RSA 公開鍵暗号を使用して、接続と認証を管理します。 SSH は telnet などのシェルベースの通信方式よりもセキュリティーが高いため、多くのシステム管理者は SSH を使用して Web サーバーなどの遠隔システムを管理します。

プロビジョニングソフトウェア は、アプリケーションが SSH を使用して通信を行うように設定できます。 N1 Service Provisioning System ソフトウェア は、OpenSSH を明示的にサポートしています。 OpenSSH は SSH のフリーバージョンで、OpenBSD Project が主体となって開発されてきました。 (詳細については、http://www.openssh.com を参照してください。) プロビジョニングソフトウェア は、SSH のほかのバージョンのサポートも設定可能です。

Secure Sockets Layer

Secure Sockets Layer (SSL) は、IP ネットワークで通信をセキュリティー保護するためのプロトコルです。 SSL は、RSA により開発された公開鍵と非公開鍵からなる暗号化システムを使用してメッセージを保護しつつ、TCP/IP ソケットテクノロジを使用してクライアントとサーバーの間でメッセージを交換します。 SSL のサポートは、Netscape や Microsoft の Web ブラウザだけでなく、大部分の Web サーバー製品にも含まれています。

N1 Service Provisioning System ソフトウェア のアプリケーションは、ネットワーク通信に SSL を使用するよう設定して、プロビジョニングソフトウェア のメッセージが読み取られたり改ざんされることを防止できます。 オプションで、さらにネットワークセキュリティーを高めるため、通信前に SSL を使用して相互に認証を行うように、N1 Service Provisioning System ソフトウェア のアプリケーションを設定できます。

特定のニーズに合わせたプロトコルの選択

N1 Service Provisioning System ソフトウェア を使用すると、次の各種類のネットワーク接続に適用するプロトコルを選択できます。

特定のネットワークトポロジのニーズに合うよう、ネットワークセキュリティーを適合させることができます。 たとえば、各データセンターの内部の通信がセキュリティー保護されていても、遠隔データセンターへのネットワーク接続が一般のインターネットを通過する場合は、インターネットを経由したすべての通信のセキュリティーが保護されるように、遠隔データセンターのファイアウォールの内側にインストールされたLocal Distributor と通信するときはSSL を使用するよう、Master Server を設定することができます。 また、Local Distributor はその子との通信には Raw TCP/IP を使用できますが、これはローカルネットワーク上のすべての通信はセキュリティー保護され、SSL は不要であるためです。

SSL と SSH の設定の詳細については、『N1 Service Provisioning System 4.1 インストールガイド』を参照してください。

複雑な異機種混在データセンター環境

N1 Service Provisioning System ソフトウェア は、データセンター環境に適合し、すでに配置されているシステムの管理、監視、および制御を補完するよう設計されています。

多くのインターネットデータセンターに見られるハードウェアとソフトウェアの多様性を認識し、プロビジョニングソフトウェア はクロスプラットフォームサポートを念頭に置いて設計されています。 標準的な通信プロトコル (HTTP、HTTPS、SSH、および TCP/IP) と標準のファイル形式およびプレゼンテーション形式 (HTML および XML) を使用し、標準的なアプリケーションアーキテクチャー (J2EETM および .Net) と連携します。 アプリケーションが UNIX ベースであるか Windows であるかに関係なく、すべてのアプリケーションを管理するための標準ベースのシステムをデータセンターに提供します。

サポートされるオペレーティングシステム

N1 Service Provisioning System ソフトウェア の Master Server は、次のオペレーティングシステムが稼働するシステムにインストールできます。

N1 Service Provisioning System ソフトウェア の Remote Agent、Local Distributor、および CLI Client は、次のオペレーティングシステムが稼働するシステムにインストールできます。

システム要件の詳細については、『N1 Service Provisioning System 4.1 インストールガイド』を参照してください。

サポートされる Web ブラウザ

次の表に、HTML ユーザーインタフェースに関する Web ブラウザの要件の概要を示します。

表 1–1 HTML ユーザーインタフェースの Web ブラウザの要件

プラットフォーム 

ブラウザ 

Solaris 

Netscape 6.2.2、Netscape 7.0 

Red Hat 

Netscape 6、Netscape 7.1 

Windows 

Internet Explorer 5.5 および 6、Netscape 6、Netscape 7.1 

サポートされるロケール

N1 Service Provisioning System ソフトウェア は、地域対応された環境でインストールおよび実行できるように、国際化対応になっています。 地域対応された環境でソフトウェアを実行する場合は、次の要件に従う必要があります。

N1 Service Provisioning System ソフトウェア のオブジェクトモデル

N1 Service Provisioning System ソフトウェア は、アプリケーションの配備と設定を管理するための、オブジェクト指向の手法を提供し、 サーバー、インストールされたアプリケーション、およびファイル構造の可視性と制御が改善されています。

オブジェクトは大まかに、インフラストラクチャ、メイン、サポートのグループに分けられています。 インフラストラクチャオブジェクトには、ユーザー、ユーザーグループ、ホストおよびホストセットがあります。 メインオブジェクトには、リソース、コンポーネント、およびプランが該当します。 サポートオブジェクトには、比較および通知が該当します。

コンポーネント

コンポーネントとは、アプリケーションを定義するソース情報 (ソフトウェア/ファイル構造などのコンポーネント) の論理グループです。

N1 Service Provisioning System ソフトウェア は、単純コンポーネントと複合コンポーネントの 2 種類をサポートしています。 単純コンポーネントは、1 つのソース項目を参照するコンポーネントです。 単純コンポーネントにより参照されるソース項目の型は、そのコンポーネントのコンポーネント型に対応します。 ファイル、ファイルのディレクトリ、レジストリキー、COM オブジェクト、JavaTM Archive (JAR)、EAR、IIS Web サイトなどがその例です。複合コンポーネントは、その他のコンポーネントを参照するコンポーネントです。 複合コンポーネントが含むことができる単純コンポーネントまたは複合コンポーネント、あるいはその両方の数は、制限されていません。

単純、複合に関係なく、すべてのコンポーネントには次の特性が共通しています。

名前

コンポーネントを識別するテキストフィールドです。 これには、コンポーネントが保存されているパスが含まれます。

ソース情報の処理方法の制御に使用される、ユーザー定義可能なオブジェクト (コンポーネント型) です。 コンポーネント型オブジェクトは、実際には別のコンポーネントで、ファイル、ディレクトリ、設定などのソースオブジェクトの取得と配備を管理します。 プロビジョニングソフトウェア には、WebLogic、Windows、UNIX® およびいくつかの汎用モデルをサポートする多数のコンポーネント型が装備されています。

バージョン

コンポーネントのバージョン番号です。 コンポーネントを変更するたびに、リポジトリによってバージョン番号が増分されます。

プラットフォーム

コンポーネントの配備に有効なターゲットである、プラットフォームまたはオペレーティングシステムを識別します。

ソース

コンポーネントのソース情報の発生源を識別します。 これにはパスが含まれています。

チェックイン

コンポーネントがチェックインされた日付と時刻です。 つまり、作成または変更された日付と時刻です。

チェックイン実行者

コンポーネントをチェックインしたユーザーのユーザー ID です。 これにより、問題や矛盾の障害追跡を行う際の監査トレールが提供されます。

ラベル

「components」ページでの並べ替えの制御に使用できる、ユーザー定義可能なテキスト文字列です。

説明

コンポーネントオブジェクトを説明するテキスト文字列です。 この属性は プロビジョニングソフトウェア によっては使用されませんが、ユーザーに有意義な情報を提供できます。

コンポーネントの属性の詳細な説明については、「コンポーネントの構築」を参照してください。

N1 Service Provisioning System ソフトウェア は、次の操作の実行方法を含む、コンポーネントに関する重要な情報が含まれるメタデータとともに、各コンポーネントを保存します。

このメタデータを読み込み、コンポーネントを比較することで、プロビジョニングソフトウェア はコンポーネントを識別し、コンポーネント間の依存性を追跡することができます。

図 1–2 に、コンポーネントの内容を示します。

図 1–2 N1 Service Provisioning System ソフトウェア のコンポーネントには、ソフトウェア、テンプレート、およびメタデータが含まれる

>

このメタデータ以外に、コンポーネントには設定テンプレートが含まれます。IT オペレーターは設定テンプレートを使用すると、サーバーごとに、または実行プランで定義されている規則に従って、ポート番号などの特定の設定パラメータを調整することができます。 これらの変数は、従来のデータセンタースクリプトにハードコードされているのではなく、操作の実行時に設定可能です。

コンポーネントモデルは XML で記述します。 オブジェクトモデルには、Common Information Model (CIM) と、J2EE コンポーネントの標準管理モデルの提案である Java Specification Request (JSR-77) の機能が組み込まれています。 N1 Service Provisioning System ソフトウェア のコンソールを介して、コンポーネントテンプレートを使用して、依存のコンポーネントを素早くカスタマイズすることができます。 また、社内で開発されるアプリケーション用の新しいテンプレートを作成することもできます。 複雑な J2EE コンポーネントに対して高度なカスタマイズを行うために、コンソールの HTML インタフェースや、XML Spy などの XML 編集ツールを用いてコンポーネントを編集することができます。

プロビジョニングソフトウェア では、コンポーネントとプランはセキュリティー保護されたリポジトリに保存されます。 コンソールを使用すると、コンポーネントおよびプランをリポジトリとの間でチェックインまたチェックアウトし、比較を実行して、変更を行うことができます。

配備などのデータセンター操作を実行するには、コンポーネントにプランを適用します。 N1 Service Provisioning System ソフトウェアを介して、データセンターのあらゆる操作には、各コンポーネントに関して入手可能なすべての情報が組み込まれます。 またエラーは自動的に検出され、 失われた情報にはフラグが付けられます。 自動化によって、配備と設定変更はより迅速かつ正確に行われるようになります。

コンポーネントライブラリ

N1 Service Provisioning System ソフトウェア では、IT オペレーターがコンポーネントモデルをすぐ簡単に使用できるようになっています。 Master Server には、インターネットデータセンターで最も使用頻度が高いコンポーネント用のテンプレートが付属する、コンポーネントライブラリが含まれています。 表 1–2 に、ライブラリに含まれるテンプレートの一覧を示します。

表 1–2 コンポーネントライブラリのテンプレート

アプリケーションコンポーネントテンプレート 

シンプルなファイルおよびディレクトリ 

J2EE Enterprise Archive (EAR) 

J2EE Web Archive (WAR) 

J2EE Java Archive (JAR) 

Solaris パッケージ 

Solaris OS パッチ 

IIS Web サイトまたは仮想ディレクトリ 

COM+ アプリケーション 

COM コンポーネント 

MSI アプリケーション 

Windows レジストリキー 

Windows データソース 

.Net アプリケーション 

ASP .Net アプリケーション 

Web サーバーテンプレート 

SunTMONE /iPlanetTM (管理対象インスタンスが付属する admin)

Apache Web サーバー 

Microsoft IIS (Metabase 設定が付属) 

アプリケーションサーバーテンプレート 

(単純、管理対象、およびクラスタ化インスタンスが付属する admin) 

IBM WebSphere (単純および複製されたインスタンスが付属する admin) 

Microsoft コンポーネントサービス/COM+ 

Microsoft Transaction Server (MTS) 

これらのコンポーネントとの連携に加えて、プロビジョニングソフトウェア は、アプリケーションの配備、設定、および分析の一部として、標準的なデータベース、ロードバランサーおよびオペレーティングシステムと協調して処理を行うことができます。 表 1–3 に、アクションの対象にすることができる、データベース、ロードバランサー、およびオペレーティングシステムの一覧を示します。

表 1–3 アクションの対象にすることができる、データベース、オペレーティングシステム、およびロードバランサー

データベース 

Oracle Enterprise 

Microsoft SQL Server 

サポートされるオペレーティングシステム 

SolarisTM 6、Solaris 7、または Solaris 8 の各リリース

IBM AIX 4.3.x、5.1、5.2 

Red Hat Linux 7.2、7.3、8.0 

Red Hat Advanced Server 2.1 

Microsoft Windows Server 2000 

ロードバランサー 

Nortel/Alteo WebSystems ACEdirector 

Foundry ServerIron 

プラン

N1 Service Provisioning System ソフトウェア は、アプリケーションに関する情報をコンポーネントモデルに取得するのと全く同じように、データセンターの手続きに関する情報をプランに保存します。 プランは XML 文書で、1 つ以上のコンポーネント、またはほかのプランの呼び出しを操作するために使用される一連の命令が含まれます。 プランでは、この情報を明示的にコード化したり、特定のサーバー名やポート番号などの詳細情報の一部を、IT オペレーターが実行時に指定できるようにすることが可能です。 プロビジョニングソフトウェアは、プランを実行する際にコンポーネントモデルを読み込み、特定のファイルセットのインストールやディレクトリへのアクセス権の設定など、特定の操作を実行するための設定要件、依存性、および命令に関する詳細情報を得ます。

N1 Service Provisioning System ソフトウェア は、プランを次の目的に使用します。

プランには、単純と複合の 2 種類があります。 単純プランには、1 つまたは複数の対象ホストに対して一方的に実行され、ほかのプランを呼び出すことはできない一連の命令が含まれます。 アプリケーションのシャットダウン、ロードバランサーからのサーバーの除外などの、複数の手順から成る配備における各手順が、注意深く記述された独自のプランにより管理できるように、複合プランはほかのプランのみを呼び出すことができます。

たとえば、多階層のアプリケーションをロールアウトするプランは、次の 4 つのサブプランから構成されます。

またロールアウトプラン自体も、サブプランとサーバーとの間の動作を同期化します。 たとえば、10 台のサーバーから成るクラスタでこのプランを実行すると、N1 Service Provisioning System ソフトウェア により、各サブプランが正しく完了し、次のサブプランを継続する前に 10 台のサーバーすべてが同期していることが保証されます。

コンポーネント、プラン、およびサブプランに変数を挿入すると、オペレーターはデータセンターの操作をきめ細かく制御できます。 たとえば、コンポーネントを設定して、ポート番号に関する変数を追加することができます。 プランでは、この変数に値を割り当てることができます。 またIT オペレーターは、CLI またはHTML インタフェースを介して、プランで指定されている値に優先した 値を変数に割り当てることができます。 変数の設定は、ホストのセットや個別のホストに適用できます。

実行プランのための共通形式を提供することで、プロビジョニングソフトウェア は、多くのデータセンターに見られる、さまざまなスクリプト形式や言語の混沌状態を置き換えることができます。 オペレーターは、急いで書かれたスクリプトの内容を理解しようとするのではなく、集中的にバージョン管理が実施されるリポジトリから、必要なプランを選択することができます。

組み込み手続きとプラン

N1 Service Provisioning System ソフトウェア は、最も一般的な型のコンポーネントに対して、インストールやアンインストールなど数多くの操作に関する手続きを自動的に生成します。 配備で、1 セットのホストに対して一度に 1 つのコンポーネントをインストールする場合は、組み込み手続きを使用できるため、プランを作成する必要がありません。

次のような目的には、組み込み手続きではなくプランを使用します。

ホスト

N1 Service Provisioning System ソフトウェア では、サーバーやホストをオブジェクトとしてモデル化し、そのモデルをホストデータベースに保存することにより、サーバーやホストの管理が簡単に行えます。 プロビジョニングソフトウェア ではホスト型を定義できるため、ホストを設定や機能によって分類できます。 また、ホストセット、つまり 1 つの単位として管理できるホストのグループも作成できます。 ホスト検索を使用すると、現在の属性に基づいて、ホストを動的にグループ化することができます。 このようなホスト管理機能は、すでに説明したコンポーネントやプランなどのオブジェクトと連携して、データセンターにおけるアプリケーションの配備、設定、および分析を大幅に単純化します。 プロビジョニングソフトウェア でホストを操作するためには、Remote Agent をインストールし、データベースに登録し、プロビジョニングソフトウェア で使用する準備を行う必要があります。 これらの処理をすべて経たホストは、ノードとも呼ばれます。 ホストの詳細については、第 4 章「ホスト」 を参照してください。

オブジェクトの属性

N1 Service Provisioning System ソフトウェア の全オブジェクトには数多くの属性があり、属性には、名前などオブジェクトを識別するもの、オブジェクトを分類するもの、バージョンを追跡するもの、グループ化や表示/非表示を定義するものなどがあります。 属性は、特定のオブジェクトに固有のものもあれば、一部またはすべてのオブジェクトに使用できるものもあります。

カテゴリ

N1 Service Provisioning System ソフトウェア には、内部リソースに自動的に適用される、system と呼ばれる組み込みカテゴリが含まれます その他すべてのカテゴリはユーザー定義可能です。 命名規則に関しては、カテゴリの定義には慎重な計画が必要です。 カテゴリの命名規則が十分適切に考慮されたものであれば、検索で使用すると強力なツールになり、またオブジェクトのグループを素早く識別または選択するための表示になります。 各オブジェクトのカテゴリは、特定の各オブジェクトに関連する節で詳細に説明されています。

カテゴリを使用すると、次の要素を分類できます。

表示/非表示

時間が経過すると、オブジェクトは古くなる場合があります。 不要な表示を減らすため、Web ページのデフォルトや CLI コマンドで表示されないように、不要なオブジェクトを非表示にすることができます。 また、多くのオブジェクトを削除することも可能です。

モデル化のへアプローチ

アプリケーションをターゲットのホストコンピュータでインストール、設定、および管理できるように、モデル化によりアプリケーションの表現が作成されます。 アプリケーションのモデルは、アプリケーションが動作する特定のホストコンピュータの設定に基づいて作成できます。また、ソースコード制御システムなどのリポジトリに保存されるコンポーネントに基づいても作成できます。

特定のアプリケーションの参照システムとして機能するよう設計されたホストコンピュータは、Gold Server と呼ばれます。 [Gold Server の設計思想の概要については、Traugott および Huddleson『Bootstrapping an Infrastructure』 Twelfth USENIX Systems Administration Conference (LISA "98), Boston, Massachusetts を参照してください。 この資料を含む、IT インフラストラクチャの問題を専門に扱うその他の資料は、http://www.infrastructures.org から入手できます。 ] 多くの組織では、開発チーム、QA チーム、またはデータセンターチームが Gold Server を作成し、稼働環境に配備する必要があるアプリケーションの、テストと承認が完了した例を IT オペレーターが使用できるようにします。

N1 Service Provisioning System ソフトウェア を使用すると、Gold Server などのリポジトリから、アプリケーションをモデル化することができます。 作成されたコンポーネントモデルには、次の機能があります。

モデルを作成することで、アプリケーションがより管理しやすくなります。 アプリケーションモデルは、手動での管理が困難または不可能である、ファイル、ディレクトリなどの大量の情報を収容することができます。

一般的な J2EE のモデル化プロセス

J2EE アプリケーションでは、一般的にコンポーネントはディレクトリやアーカイブなどの複数のリソースから構成されます。 J2EE アプリケーションのモデル化においては、ユーザーはコンポーネントを構成するリソースにチェックインしてから、リソースに基づいてコンポーネントモデルを構築します。

一般的に、J2EE アプリケーションのモデル化は、次の手順で行います。

  1. ホストを定義および設定します。

  2. 各コンポーネントを構成するリソースをチェックインします。

    • モデル化するコンポーネントとともに、Remote Agent を Gold Server または開発システムにインストールします。

    • コンポーネントに含めるリソースを選択します。

  3. コンポーネントを定義します。

    • コンポーネントを構成するリソースの定義に加えて、設定パラメータ用の変数を作成し、コンポーネントの依存性に関する情報を追加することなどが可能です。

  4. コンポーネントを配備および設定するためのプランを記述します。

  5. プランを実行します。

  6. 必要に応じて比較を実行し、アプリケーション環境を分析します。

一般的な Windows のモデル化プロセス

通常、Windows のアプリケーションコンポーネントは、独立したリソースのコレクションとしてではなく、全体を 1 つの単位として管理されます。

一般的に、Windows アプリケーションのモデル化は、次の手順で行います。

  1. ホストを定義および設定します。

  2. コンポーネントをチェックインします。

    • モデル化するコンポーネントとともに、Remote Agent を Gold Server または開発システムにインストールします。

    • モデル化するコンポーネントを選択します。 N1 Service Provisioning System ソフトウェア には、最も一般的な Windows アプリケーションコンポーネント用のモデルテンプレートが含まれています (リストは、表 1–2 を参照)。 多くの場合、Windows コンポーネント用のリソーステンプレートを選択したら、それ以上のモデル化は必要ありません。

  3. 適宜、コンポーネントにリソースを追加します。

    • コンポーネントを構成するリソースの定義に加えて、設定パラメータ用の変数を作成し、コンポーネントの依存性に関する情報を追加することなどが可能です。

  4. コンポーネントを配備および設定するためのプランを記述します。

  5. プランを実行します。

  6. 必要に応じて比較を実行し、アプリケーション環境を分析します。

N1 Service Provisioning System ソフトウェア のインタフェース

N1 Service Provisioning System ソフトウェア には、次の 2 つのインタフェースがあります。

HTML インタフェース

HTML インタフェースは一連のWeb ページから構成され、認証済みユーザーはコンポーネントのモデル化、プランの開発および実行、およびその他の処理の実行が可能になります。 HTML インタフェースは、使いやすいように設計されています。 Netscape および Microsoft Internet Explorer Web ブラウザと連携し、各ページでは小数の基本的なナビゲーションツールを使用します。

HTML インタフェースのすべての Web ページでは、次の規則を使用します。

HTML インタフェースのナビゲーション

数多くの組み込みコンポーネントと、ユーザーが作成するコンポーネントに埋もれて、コンポーネント、コンポーネント型、およびプランの数が極めて大きくなり、必要なコンポーネントを探すことが困難になる場合があります。 特定のオブジェクトを検出および使用しやすくするため、N1 Service Provisioning System ソフトウェア では、コンポーネント、コンポーネント型、およびプランを階層型のファイリングシステムに整理することができます。

次では、HTML ユーザーインタフェースの「Path」領域について説明します。

Path

現在の作業用ディレクトリの名前が表示されます。

Show

コンポーネントまたはプランを一覧表示できます。 プランを選択すると、左側のナビゲーションメニューで「plans」オプションをクリックした場合と同じように、HTML ユーザーインタフェースには「plans」ページが表示されます。

Category

リストオブジェクトをカテゴリによりフィルタリングします。

特定のディレクトリにあるオブジェクト (コンポーネント、コンポーネント型、またはプラン) にアクセスするには、「change path...」というテキストをクリックします。 プロビジョニングソフトウェア により、「Change Path」ページが表示されます。

単に「selected path」テキストフィールドに目的のパスを入力するか、必要なアイコンをクリックしてパスを選択します。

コマンド行インタフェース (CLI)

コマンド行インタフェース (CLI) は、Windows プロンプト、シェル、スクリプトなど、HTML ではないインタフェースを介して プロビジョニングソフトウェア にアクセスするためツールの集まりです。 CLI コマンドをスクリプトで使用すると、ファイルのチェックインなどの操作が自動化できます。 CLI コマンドは、Web ブラウザや HTTP 接続が使用できないシステムから Master Server にアクセスするためにも使用できます。

CLI は、Master Server にネットワークで接続可能なすべてのコンピュータにインストールできる、Command-Line Interface Client です。 このクライアントはコマンドをネイティブオブジェクトに解析し、それらを Master Server に送信します。 続いてコマンドの結果は、クライアントによりテキスト形式に変換され、ユーザーに表示されます。

大部分の CLI コマンドには認証が必要です。 ユーザーは、ユーザー名とパスワードを指定するか、各コマンドにセッション ID を指定することにより、自分自身の認証を行います。 詳細については、『N1 Service Provisioning System 4.1 リファレンスガイド』を参照してください。

CLI を起動するツールには、次の 2 つがあります。

cr_cli: シングル行コマンドモード

シングル行コマンドモードでは、一度に 1 つのコマンドを入力として受け取ります。 発行される各コマンドは完全である必要があります。ユーザーが対話形式で次の入力パラメータを求められることはありません。 このモードで動作すると、Command-Line Interface Client はコマンドの履歴を保持しません。

cr_cli ツールを使用して実行された CLI コマンドの例を示します。 このコマンドにより、型 prodserver のホストがホストデータベースに追加されます。 このコマンド rbarnes を実行するユーザーは、パスワードを入力して Master Server に対して自分自身を認証します。


cr_cli –cmd hdb.h.add -u barnes -p bar123 -name webb1  -desc `web server 1' –tID prodserver 

cr_cliコマンドは、ファイルとして保存し、シェルスクリプトから呼び出すことができます。 これは、実行プラン、比較、ホストの生成など、繰り返しの多いタスクに便利です。

cr_clij: 対話型コマンドモード

対話型コマンドモードは、シェルとして Jython インタプリタを使用します。 このモードで動作すると、CLI には次のような利点があります。

CLI コマンドの構造

cr_cli と cr_clij のどちらから呼び出されたかに関係なく、すべての CLI コマンドは次の形式を使用します。

サブシステム.オブジェクト.コマンド引数 

たとえば、 N1 Service Provisioning System ソフトウェア データベースにホストを追加するコマンドは、hdb.h.add となります。 このコマンドは、次のものを特定する 3 つの要素から構成されています。

表 1–4 に、各 N1 Service Provisioning System ソフトウェア のサブシステムの CLI 接頭辞と、そのサブシステムを説明する、このガイドの章の一覧を示します。

表 1–4 N1 Service Provisioning System ソフトウェア のサブシステムと、その CLI 接頭辞

サブシステム 

CLI 接頭辞 

章 

コンポーネントデータベース 

cdb 

N1 Service Provisioning System 4.1 リファレンスガイド』の第 6 章を参照

設定ジェネレータ 

cfg 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 7 章を参照

比較エンジン 

cmp 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 8 章を参照

ホストデータベース 

hdb 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 9 章を参照

ネットワーク操作 

net 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 10 章を参照

プランデータベース 

pdb 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 11 章を参照

プラン実行 

pe 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 12 章を参照

リソース 

cdb.rsrc 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 13 章を参照

通知の規則 

rule 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 14 章を参照

ユーザーデータベース 

udb 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 15 章を参照

カテゴリ 

cat 

N1 Service Provisioning System 4.1 リファレンスガイド』 の第 16 章を参照


注 –

このユーザーマニュアルには、CLI コマンドの完全なリストはありません。 各セクションには、特定のトピックに関連する使用頻度の高い CLI コマンドの一覧があります。 CLI コマンドの完全なリストは、『N1 Service Provisioning System 4.1 リファレンスガイド』を参照してください。


N1 Service Provisioning System ソフトウェア の使用法

この節では、N1 Service Provisioning System ソフトウェア を使用してアプリケーションの配備と設定を行う方法の概要を説明します。 従う手順は、HTML ユーザーインタフェースとコマンド行インタフェースのどちらを使用するかによって異なります。 このガイドのこの章以外の章では、各手順の実行方法に関する詳細を説明します。

ProcedureHTML ユーザーインタフェースを使用する

HTML ユーザーインタフェースを使用すると、コンポーネントをモデル化し、対象ホストにコンポーネントをインストールすることができます。

手順
  1. Gold Server、ソースコード制御システム、またはその他のタイプのサーバーなどに関係なく、モデル化する各サーバーに Remote Agent をインストールします。


    注 –

    Remote Agent のインストール方法の詳細については、『N1 Service Provisioning System 4.1 インストールガイド』を参照してください。


  2. モデル化するホストと、アプリケーションの配備先であるホストの、ホスト型を定義します。 動的に設定するすべての設定変数に対しては、ホスト型の属性を含めます。この属性は、名前と値のペアになっています。


    注 –

    ホストタイプの詳細については「ホストタイプの操作」を参照してください。


  3. 「Hosts」ページを使用して、各ホストをホストリポジトリに追加します。 ホストを追加する作業の最後の手順は「ホストの準備」で、これにより プロビジョニングソフトウェア は、ホストに対する操作を行う準備として、ホストの Remote Agent の設定を微調整できるようになります。


    注 –

    ホストの追加と準備の詳細については、「ホストの操作」を参照してください。


  4. リソースのコレクションから複数のコンポーネントを定義する予定がある場合、次にリソースをチェックインすることができます。 しかし通常は、ユーザーは独自のリソースのセットを持つコンポーネントを操作するため、ユーザーは最初にコンポーネントを直接作成する必要があります。

    • 「Components」ページを使用して、新しいコンポーネントを作成します。

    • 「Component」>「Details」ページで、コンポーネントを構成するリソースを追加します。リソースがすでにチェックインされている場合は、それを既存のリソースとして追加します。それ以外の場合は、新しいリソースとしてリソースをチェックインします。

    • コンポーネントを保存します。 コンポーネントを保存することでコンポーネントが構築されます。つまり、N1 Service Provisioning System ソフトウェア でコンポーネントが特定の名前とバージョン番号を使用して保存され、この特定のバージョンのコンポーネントが、コンポーネントを構成する特定のバージョンのリソースと関連付けられます。

  5. これで、コンポーネントをインストールしたり、XML を編集することでコンポーネントを拡張できるようになります。

    • 大部分のコンポーネントについては、プロビジョニングソフトウェア で自動的に作成されたインストール手続きを使用して、インストール手続きを実行する準備が完了します。 インストール手続きや、このコンポーネントと関連付けられた その他の拡張制御サービスを実行するには、そのコンポーネントの「Component」>「Details」ページを表示し、実行する手続きのチェックボックスを選択して、「run」をクリックします。この手続きの実行方法を直接実行と呼びます。

    • 追加の設定変数、特定の手続き時に実行する追加の手順、または比較時に追加または除外するものに関する詳細情報など、コンポーネントにさらに情報を追加する場合は、コンポーネントをチェックアウトし、その XML を編集してから、コンポーネントをチェックインして戻します。

  6. XML の編集が完了したら、操作を続行する準備ができています。

    単一セットのホストに対して一度に 1 つのコンポーネントをインストールする場合は、コンポーネントの「component details」ページにあるインストール手続きを実行できます。 さまざまなホストセットへのコンポーネントのインストールを自動化する場合は、インストールに依存性チェックを追加し、インストールの手順を同期化し、コンポーネント用のプランを記述してから、コンポーネントをインストールするプランを実行します。

Procedureコマンド行インタフェースを使用する

コマンド行インタフェースを使用してコンポーネントをモデル化し、対象ホストにコンポーネントをインストールすることもできます。

手順
  1. CLI コマンドの実行場所であるサーバーに、Command Line Interface Client をインストールします。 このサーバーは、Master Server へのネットワーク接続を確立できる必要があります。

  2. TurboXML などの XML エディタを使用して、コンポーネントの XML 定義を記述します。

  3. cdb.cd.ci コマンドを実行して、コンポーネントをチェックインします。


    注 –

    コンポーネントのチェックインが完了すれば、HTML ユーザーインタフェースを使用してコンポーネントのインストール手続きを直接実行することで、対象ホストの単一セットにコンポーネントをインストールするオプションが使用できます。 直接実行手続きは HTML ユーザーインタフェースから呼び出すことができますが、コマンド行インタフェースからは呼び出すことができません。


  4. TurboXML などの XML エディタを使用して、コンポーネントのプランを記述します。

  5. pdb.ci コマンドを実行して、プランをチェックインします。

  6. pe.p.run コマンドを実行して、プランを実行します。


    注 –

    プランを実行するCLI コマンドでは、プランの実行の進行状況は報告されません。 プランの実行時の進行状況を監視するには、HTML ユーザーインタフェースからプランを実行します。