OpenStack Heatサービスとの統合
OpenStack Neutron LBaaSは、アプリケーション向けに、負荷分散、SSLオフロード、コンテンツスイッチングなどのコアな負荷分散サービスを可能にします。LBaaSはREST APIを通じて管理され、このAPIによりテナントはLBaaSオブジェクトの作成、更新、削除を行うためのRESTコールを実行できます。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インスタンスに構成を展開できます。
NetScalerとOpenStackの統合中、NetScaler ADMはすべてのNetScaler ADM StyleBooksをHeatサービスのリソースとして公開します。これには、NetScaler ADMに付属しているStyleBooksと、後でユーザーによって作成されるStyleBooksの両方が含まれます。Heatテンプレートを使用すると、これらのStyleBooksリソースを使用してNetScalerの高度な機能を構成できます。
Heatを使用してNetScalerインスタンスを構成するワークフロー
次のフローチャートは、Heatスタックを展開するためのワークフローを示しています。
Heatを使用してADCインスタンスを構成するワークフロー(/en-us/netscaler-application-delivery-management-software/media/openstack-heat-integration-workflow-kopis.png)
クラウド管理者として、次のタスクを実行します。
OpenStackでHeatサービスを構成するには:
-
OpenStack用NetScalerバンドルをダウンロードするOpenStackにNetScalerバンドルをインストールします。NetScaler ADMで、ダウンロードに移動してNetScalerドライバーバンドルをダウンロードし、バンドルを解凍して、バンドル内のHeatフォルダーの内容をOpenStackのHeatエンジンリソースディレクトリにコピーします。ディレクトリパスは次のとおりです。 /opt/stack/heat/heat/engine/resources/netscaler_resources
-
heat.confファイルに「netscaler_plugin」セクションを作成し、そのセクションで次のパラメーターを更新します。
-
HTTP通信の場合、パラメータは次のように更新されます。NMAS_BASE_URI=<
http://10.146.103.45:80>NMAS\_USERNAME=<openstack_driver_username>NMAS\_PASSWORD=<openstack_driver_password> -
HTTPS通信の場合、パラメータは次のように更新されます。NMAS_BASE_URI=
https://common_name_used_in_certificateNMAS\_USERNAME=\<openstack\_driver\_usernameNMAS\_PASSWORD=\<openstack\_driver\_password\>SSL\_CERT\_VERIFY=\<True\_or\_False\>CERT\_FILE\_PATH=\<path\_of\_the\_certificate\_file\>ユーザーが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アドレス\>
-
-
OpenStackでHeatサービスを再起動します。OpenStackでNetScaler Heatサービスを再起動すると、定義されているすべてのNetScaler ADM StyleBookがリソースとしてHeatにインポートされます。また、NetScalerネットワークリソースと証明書リソースもNetScaler HeatリソースとしてOpenStackにインポートされます。
-
NetScaler® ADMをOpenStackに登録します。
-
NetScaler ADMで、Orchestration \> Cloud Orchestration \> OpenStack に移動し、Configure OpenStack Settings をクリックします。
-
Configure OpenStack Settings ページで、OpenStackを構成するためのパラメーターを設定できます。ここには、DefaultとCustomizedの2つのオプションがあります。
-
OpenStackサービスがデフォルトポートで実行されている場合は、Default を選択します。次のパラメーターを入力します。
-
OpenStackコントローラーのIPアドレス
-
管理者ユーザー名
-
パスワード
-
OpenStack管理者テナント
-
NetScalerドライバーとHeatのパスワード
注これは、heat.confファイルに入力したパスワード(NMAS\_PASSWORD)と同じです。 -
-
-
サービスパッケージを作成し、テナントとのSLAを定義します。OpenStack登録中に、ユーザーごとにNetScaler ADMでテナントが作成され、テナント情報はLBaaSドライバーとHeatプラグインの両方で使用されます。Heatプラグインはこの情報を使用してNetScaler ADMに接続し、StyleBookをHeatリソースとしてOpenStackにインポートします。注NetScaler ADMとOpenStackでのサービスパッケージの作成およびその他の事前設定タスクの詳細については、NetScaler ADMとOpenStackプラットフォームの統合を参照してください。
-
NetScaler ADMの関連するすべてのStyleBookが、リソースとしてOpenStack Heatにインポートされていることを確認します。また、NetScalerネットワークリソースとNetScaler証明書リソースが、リソースとしてOpenStack Heatにインポートされていることを確認します。注現在、NetScaler ADMに付属しているStyleBookのみを使用できます。テナントはOpenStackでHeatテンプレートを作成し、必要なHeatパラメーターの値を入力して、Heatスタックを展開できるようになりました。Heatスタックが展開されると、構成がNetScaler ADMにプッシュされ、必要なNetScalerインスタンスが構成されます。
Heatテンプレートを準備してHeatスタックを起動するには:
-
OpenStackでは、テナントはHeatリソースを使用してHeatオーケストレーションテンプレート(HOT)を作成できます。
-
OpenStack Horizonで、テナント管理者はProject \> Orchestration \> Stacksに移動して、Heatテンプレートを作成し、Heatスタックを起動できます。HOTを作成するには、次の2つの方法があります。
-
ファイル - ローカルディレクトリから更新されたテンプレートを選択します
-
直接入力 - ウィンドウ内のテンプレートからYAMLコンテンツをコピーして貼り付けます
注スタックの展開が成功した後、テナントはChange Stack Templateを使用してスタックを更新できます。ただし、スタックの作成時に最初に提供されたサブネット情報と仮想IPアドレス(VIP)は変更できません。テナントがスタックを展開した後、NetScaler ADMでOrchestration \> Cloud Orchestration \> OpenStack \> Requestsに移動して、タスクのリストを確認します。また、NetScaler ADMでApplications \> Configurationに移動して、NetScalerインスタンスがStyleBook構成パックの形式で正常に構成されていることを確認します。 -
NetScaler ADM StyleBookの例:
以下の画像は、NetScaler ADM StyleBooksがどのように構築され、そのコンポーネントが簡単に説明されている例を示しています。NetScaler ADM StyleBooksの詳細と、付属のStyleBooksの使用方法については、StyleBooksを参照してください。
Heatテンプレートの例:
以下の画像は、YAMLで定義されたHeatテンプレートの構造を示し、HeatリソースとしてインポートされるStyleBooksリソースとNetScalerネットワークリソースを指しています。
Heatサービスとテンプレートの作成方法の詳細については、OpenStack Heat documentationを参照してください。