ソフトウェア アーキテクトは、再利用可能なソフトウェア コンポーネントを作成して、構成プロパティを標準化し、アクション スクリプトを使用して、展開の拡張処理中にコンポーネントをインストール、構成、アンインストール、更新する方法を具体的に指定します。これらのアクション スクリプトはいつでも記述し直して、同時に公開し、プロビジョニングされたソフトウェア コンポーネントに変更を反映させることができます。

汎用かつ再利用可能なアクション スクリプトを設計するには、ソフトウェア プロパティと呼ばれる名前と値のペアを定義して使用し、これをパラメータとしてアクション スクリプトに渡します。ソフトウェア プロパティに未知の値や、将来定義する必要のある値が含まれる場合は、他のブループリント アーキテクトまたはエンド ユーザーに値を入力するように要求または許可することができます。マシンの IP アドレスなど、ブループリント内の別のコンポーネントからの値を使用する必要がある場合は、そのマシンの IP アドレス プロパティにソフトウェア プロパティをバインドできます。ソフトウェア プロパティを使用してアクション スクリプトをパラメータ化すると、汎用かつ再利用可能になるため、スクリプトを変更することなく、さまざまな環境にソフトウェア コンポーネントを展開できます。

表 1. ライフ サイクル アクション

ライフ サイクル アクション

説明

インストール

ソフトウェアをインストールします。たとえば、Tomcat サーバ インストーラをダウンロードして、Tomcat サービスをインストールできます。インストール ライフ サイクル アクション用に記述するスクリプトは、初期導入申請中またはスケール アウトの一環として、ソフトウェアが最初にプロビジョニングされる際に実行されます。

構成

ソフトウェアを構成します。Tomcat の例の場合は、JAVA_OPTS と CATALINA_OPTS を設定できます。インストール アクションの完了後に構成スクリプトが実行されます。

開始

ソフトウェアを開始します。たとえば、Tomcat サーバで start コマンドを使用して、Tomcat サービスを開始できます。構成アクションの完了後に開始スクリプトが実行されます。

アップデート

拡張可能なブループリントをサポートするようにソフトウェア コンポーネントを設計する場合は、スケール インまたはスケール アウトの処理の後に必要なアップデートを処理します。たとえば、拡張された展開のクラスタのサイズを変更し、ロード バランサを使用してクラスタ化されたノードを管理できます。複数回実行(idempotent)し、スケール インとスケール アウトの両方に対応できるようにアップデート スクリプトを設計します。拡張処理を実施する際には、すべての従属ソフトウェア コンポーネントでアップデート スクリプトが実行されます。

アンインストール

ソフトウェアをアンインストールします。たとえば、展開を破棄する前にアプリケーションで特定のアクションを実行することができます。アンインストール スクリプトは、ソフトウェア コンポーネントが破棄されるたびに実行されます。

VMware Solution Exchange では、さまざまなミドルウェア サービスやアプリケーション用の事前定義された ソフトウェア コンポーネントをダウンロードできます。vRealize CloudClient または vRealize Automation の REST API を使用することで、事前定義された ソフトウェア コンポーネントを vRealize Automation インスタンスにプログラムでインポートできます。