OpenStack Heatサービスとの統合
OpenStack Neutron LBaaSは、アプリケーション向けにロードバランシング、SSLオフロード、コンテンツスイッチングなどのコアロードバランシングサービスを有効にします。LBaaSはREST APIを通じて管理され、このAPIによりテナントはRESTコールを行ってLBaaSオブジェクトを作成、更新、削除できます。LBaaSはロードバランシングサービスを提供するため、オーケストレーションプロセス中にNetScalerのより高度な機能を使用することはできません。NetScaler Heatプラグインはこの制限を克服します。
Heatオーケストレーションサービス
OpenStack Heatオーケストレーションサービスは、テンプレートに基づいて複雑なクラウドアプリケーションのデプロイを可能にします。Heatオーケストレーションテンプレート(HOT)は、人間が読み書きでき、バージョン管理ツールで管理できるテキストファイルでクラウドアプリケーションのインフラストラクチャを記述します。これらのテンプレートの記述には、構造化言語であるYAMLが使用されます。HOTテンプレートを使用すると、ほとんどのOpenStackリソースタイプを作成し、その中で定義されたリソース間の関係を指定できます。NetScaler Heatプラグインを使用すると、任意のNetScalerインスタンスで高度なアプリケーションデリバリーコントローラー(ADC)機能を構成できます。
NetScaler StyleBooks
NetScaler Application Delivery Management (ADM) StyleBooksは、NetScalerの機能を作成および構成するために使用できます。Heatテンプレートと同様に、StyleBooksもYAMLで記述されます。機能ごとに個別のStyleBooksを作成でき、単一のStyleBooksを使用して複数のNetScalerインスタンスに構成をデプロイできます。
OpenStackとのNetScaler統合中、NetScaler ADMはすべてのNetScaler ADM StyleBooksをHeatサービスのリソースとして公開します。これには、NetScaler ADMに同梱されているStyleBooksと、ユーザーが後で作成したStyleBooksの両方が含まれます。Heatテンプレートを使用すると、これらのStyleBooksリソースを使用してNetScalerの高度な機能を構成できます。
Heatを使用したNetScalerインスタンスの構成ワークフロー
次のフローチャートは、Heatスタックをデプロイするためのワークフローを示しています。

クラウド管理者として、次のタスクを実行します。
OpenStackでHeatサービスを構成するには:
-
OpenStack用NetScalerバンドルのダウンロード
OpenStackにNetScalerバンドルをインストールします。NetScaler ADMで、[ダウンロード] に移動し、NetScalerドライバーバンドルをダウンロードし、バンドルを解凍して、バンドル内のHeatフォルダーの内容をOpenStackのHeatエンジンリソースディレクトリにコピーします。ディレクトリパスは次のとおりです。 /opt/stack/heat/heat/engine/resources/netscaler_resources
-
heat.confファイルに「netscaler_plugin」セクションを作成し、そのセクションで次のパラメーターを更新します。
[netscaler_plugin] <!--NeedCopy-->-
通信がHTTPの場合、パラメーターは次のように更新されます。
NMAS_BASE_URI=<`http://10.146.103.45:80`> NMAS\_USERNAME=<openstack_driver_username> NMAS\_PASSWORD=<openstack_driver_password> <!--NeedCopy--> -
通信がHTTPSの場合、パラメーターは次のように更新されます。
NMAS_BASE_URI=`https://common_name_used_in_certificate` NMAS\_USERNAME=\<openstack\_driver\_username NMAS\_PASSWORD=\<openstack\_driver\_password\> SSL\_CERT\_VERIFY=\<True\_or\_False\> CERT\_FILE\_PATH=\<path\_of\_the\_certificate\_file\> <!--NeedCopy-->ユーザーがssl_cert_verifyを「False」に設定した場合、NetScaler ADMはリクエストコールでverify=Falseを送信し、SSL証明書の検証を無効にします。ssl_cert_verifyが「True」に設定され、cert_file_pathエントリが存在する場合、NetScaler ADMはリクエストのverifyパラメーターにこのパスを送信します。それ以外の場合、NetScaler ADMはverify=Trueを送信します。
注
“高可用性”モードでNetScaler ADMをデプロイするには、heat.confファイルで次のパラメーターを更新します。
NMAS_BASE_URI=<IP address of the front-end virtual server>
-
-
OpenStackでHeatサービスを再起動します。
OpenStackでNetScaler Heatサービスを再起動すると、定義されているすべてのNetScaler ADM StyleBooksがリソースとしてHeatにインポートされます。また、NetScalerネットワークリソースと証明書リソースもNetScaler HeatリソースとしてOpenStackにインポートされます。
-
NetScaler® ADMをOpenStackに登録します。
-
NetScaler ADMで、[オーケストレーション] > [クラウドオーケストレーション] > [OpenStack] に移動し、[OpenStack設定の構成] をクリックします。
-
[OpenStack設定の構成] ページで、OpenStackを構成するためのパラメーターを設定できます。ここには、デフォルトとカスタマイズの2つのオプションがあります。
-
OpenStackサービスがデフォルトポートで実行されている場合は、[デフォルト] を選択します。次のパラメーターを入力します。
-
OpenStackコントローラーIPアドレス
-
管理者ユーザー名
-
パスワード
-
OpenStack管理者テナント
-
NetScalerドライバーおよびHeatパスワード
注
これは、heat.confファイルに入力したパスワード(NMAS_PASSWORD)と同じです。
-
-
-
サービスパッケージを作成し、テナントとのSLAを定義します。
OpenStack登録中に各ユーザーに対してNetScaler ADMにテナントが作成され、テナント情報はLBaaSドライバーとHeatプラグインの両方で使用されます。Heatプラグインはこの情報を使用してNetScaler ADMに接続し、StyleBooksをHeatリソースとしてOpenStackにインポートします。
注
サービスパッケージの作成およびNetScaler ADMとOpenStackでのその他の事前構成タスクの詳細については、「NetScaler ADMとOpenStackプラットフォームの統合」を参照してください。
-
NetScaler ADM内のすべての関連StyleBooksがOpenStack Heatにリソースとしてインポートされていることを確認します。また、NetScalerネットワークリソースとNetScaler証明書リソースがOpenStack Heatにリソースとしてインポートされていることも確認します。
注
現在、NetScaler ADMに同梱されているStyleBooksのみを使用できます。
テナントはOpenStackでHeatテンプレートを作成し、必要なHeatパラメーターの値を入力して、Heatスタックをデプロイできるようになります。Heatスタックがデプロイされると、構成がNetScaler ADMにプッシュされ、必要なNetScalerインスタンスが構成されます。
Heatテンプレートを準備してHeatスタックを起動するには:
-
OpenStackでは、テナントはHeatリソースを使用してHeatオーケストレーションテンプレート(HOT)を作成できます。
-
OpenStack Horizonで、テナント管理者は[プロジェクト] > [オーケストレーション] > [スタック] に移動して、Heatテンプレートを作成し、Heatスタックを起動できます。HOTを作成するには2つの方法があります。
- ファイル - ローカルディレクトリから更新されたテンプレートを選択します。
- 直接入力 - テンプレートからYAMLコンテンツをウィンドウにコピーして貼り付けます。
注
スタックのデプロイに成功した後、テナントは[スタックテンプレートの変更]を使用してスタックを更新できます。ただし、スタック作成時に最初に提供されたサブネット情報と仮想IPアドレス(VIP)は変更できません。
テナントがスタックをデプロイした後、NetScaler ADMで[オーケストレーション] > [クラウドオーケストレーション] > [OpenStack] > [リクエスト] に移動して、タスクのリストを確認します。また、NetScaler ADMで[アプリケーション] > [構成] に移動して、NetScalerインスタンスがStyleBooks構成パックの形式で正常に構成されていることを確認します。
NetScaler ADM StyleBooksの例:
次の図は、NetScaler ADM StyleBooksがどのように構築されているかの例を示し、コンポーネントを簡単に説明しています。NetScaler ADM StyleBooksと同梱されているStyleBooksの使用方法の詳細については、「StyleBooks」を参照してください。

Heatテンプレートの例:
次の図は、YAMLで定義されたHeatテンプレートの構造を示し、HeatリソースとしてインポートされるStyleBooksリソースとNetScalerネットワークリソースを指しています。

Heatサービスとテンプレートの作成方法の詳細については、「OpenStack Heatドキュメント」を参照してください。