Application Delivery Management

OpenStack Heat サービスとの統合

OpenStack Neutron LBaaSを利用すると、負荷分散、SSLオフロード、コンテンツスイッチなどの主要な負荷分散サービスをアプリケーションで使用できます。LBaaS は REST API を通じて管理され、API により、テナントは、LBaaS オブジェクトを作成、更新、削除するための REST 呼び出しを行うことができます。LBaaSでは負荷分散サービスが提供されるため、オーケストレーションプロセス中により高度なNetScaler ADC 機能を使用することはできません。Citrix ADC Heat プラグインはこの制限を克服します。

Heatオーケストレーションサービス

OpenStack Heatオーケストレーションサービスでは、テンプレートに基づいて複雑なクラウドアプリケーションを展開することができます。クラウドアプリケーションのインフラストラクチャは、バージョン管理ツールで管理可能なHeatオーケストレーションテンプレート(HOT:Heat orchestration template)により、人間が読み取り/書き込み可能なテキストファイルで指定します。このテンプレートは、YAMLという構造化言語を使用して記述します。HOTを使用することでほとんどの種類のOpenStackリソースを作成でき、このテンプレート内で定義したリソース間の関係を指定できます。Citrix ADC Heat プラグインを使用すると、任意の Citrix ADC インスタンスで高度なアプリケーションデリバリーコントローラー(ADC)機能を設定できます。

Citrix ADC StyleBook

Citrix Application Delivery Management(ADM)StyleBookを使用して、Citrix ADC 機能を作成および構成できます。Heatテンプレートと同様に、StyleBookもYAMLで記述します。機能ごとに個別のStyleBookを作成でき、1つのStyleBookを使用して複数のCitrix ADC インスタンスに構成を展開できます。

Citrix ADC と OpenStack の統合中、Citrix ADM はすべてのCitrix ADM StyleBookを Heat サービスのリソースとして公開します。これには、Citrix ADM に同梱されているStyleBookと、ユーザーが後で作成したStyleBookの両方が含まれます。Heatテンプレートを使用すると、これらのStyleBooksリソースを使用してCitrix ADCの高度な機能を構成できます。

Heat を使用して Citrix ADC インスタンスを設定するためのワークフロー

以下のフローチャートに、Heatスタックを展開するワークフローを示します。

Heat を使用して ADC インスタンスを設定するワークフロー

クラウド管理者として次のタスクを実行します。

OpenStack で Heat サービスを設定するには:

  1. OpenStack 用Citrix ADC バンドルのダウンロード

    Citrix ADC バンドルを OpenStack にインストールします。 Citrix ADM で、「ダウンロード」に移動して Citrix ADC ドライバーバンドルをダウンロードし、バンドルを解凍して、バンドル内の Heat フォルダーの内容を OpenStack の Heat エンジンリソースディレクトリにコピーします。 ディレクトリパスは次のとおりです。 /opt/stack/heat/heat/engine/resources/netscaler_resources

  2. heat.conf ファイルに「netscaler_plugin」セクションを作成し、そのセクションの以下のパラメーターを更新します。

    [netscaler_plugin]

    1. 通信が HTTP の場合、パラメータは次のように更新されます。

      NMAS_BASE_URI=<http://10.146.103.45:80>

      NMAS_USERNAME=

      NMAS_PASSWORD=

    2. 通信が https の場合、パラメータは次のように更新されます。

      NMAS_BASE_URIhttps://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>

      ユーザーがssl_cert_verifyを「False」に設定すると、Citrix 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>

  3. OpenStack で Heat サービスを再起動します。

    OpenStack で Citrix ADC Heat サービスを再起動すると、定義されているすべての Citrix ADM StyleBookがリソースとして Heat にインポートされます。また、Citrix ADC ネットワークリソースと証明書リソースは、Citrix ADC Heat リソースとして OpenStack にインポートされます。

  4. Citrix ADM を OpenStack に登録します。

    1. Citrix ADM で、「オーケストレーション」>「 クラウドオーケストレーション 」>「OpenStack」に移動し、「 OpenStack設定の構成」をクリックします。

    2. OpenStack の設定ページでは 、OpenStack を設定するためのパラメーターを設定できます。[Default]と[Customized]の2つのオプションがあります。

    3. OpenStack サービスがデフォルトポートで実行されている場合は 、「デフォルト」を選択します。以下のパラメーターを入力します。

      1. OpenStackコントローラーのIPアドレス

      2. 管理者ユーザー名

      3. パスワード

      4. OpenStack 管理者テナント

      5. Citrix ADC ドライバーと Heat のパスワード

      注:

      これは heat.conf ファイルに入力したパスワード (NMAS_PASSWORD) と同じです。

  5. サービスパッケージを作成し、テナントで SLA を定義します。

    OpenStackの登録時に、Citrix ADM でユーザーごとにテナントが作成され、テナント情報は LBaaS ドライバーと Heat プラグインの両方で使用されます。Heatプラグインはこの情報を使用してNetScaler ADM に連絡し、OpenStackにHeatリソースとしてStyleBookをインポートします。

    注:

    NetScaler ADM および OpenStack でのサービスパッケージの作成およびその他の事前構成タスクの詳細については、「 NetScaler ADM と OpenStack Platform の統合」を参照してください。

  6. NetScaler ADM内の関連するすべてのStyleBookがリソースとしてOpenStack Heatにインポートされます。また、NetScaler ADC ネットワークリソースとNetScaler ADC証明書リソースがリソースとしてOpenStack Heatにインポートされることも確認します。

    現在、使用できるのはCitrix ADM に付属しているStyleBookのみです。

    テナントはOpenStackでHeatテンプレートを作成して必要なHeatパラメーターの値を入力し、Heatスタックを展開できるようになりました。Heat スタックがデプロイされると、構成が Citrix ADM にプッシュされ、必要な Citrix ADC インスタンスが設定されます。

Heat テンプレートを準備して Heat スタックを起動するには:

  1. OpenStackでは、テナントでHeatリソースを使用してHOTを作成できます。

  2. OpenStack Horizon では、テナント管理者はプロジェクト >**オーケストレーション** > スタックに移動して Heat テンプレートを作成し、Heat スタックを起動できます。HOT を作成するには 2 つの方法があります。

    • ファイル -ローカルディレクトリから更新されたテンプレートを選択します
    • 直接入力 -YAML コンテンツをテンプレートからコピーしてウィンドウに貼り付けます

    注:

    スタックのデプロイが成功すると、テナントはスタック変更テンプレートを使用してスタックを更新できます。ただし、スタックの作成中に初回設定したサブネット情報と仮想IPアドレス(VIP:Virtual IP Address)を変更することはできません。

    テナントがスタックをデプロイしたら、NetScaler ADM で「オーケストレーション 」>「クラウドオーケストレーション」>「OpenStack」>「リクエスト 」の順に選択し、タスクのリストを確認します。また、NetScaler ADMの[アプリケーション ]>[構成 ]の順に選択し、NetScaler ADCインスタンスがStyleBooks構成パックの形式で正常に構成されていることを確認します。

NetScaler ADM StyleBookの例:

次の図は、NetScaler ADM StyleBookの構成例とコンポーネントを簡単に説明したものです。NetScaler ADM StyleBooksおよび同梱されているStyleBookの使用方法の詳細については、「 StyleBook」を参照してください。

StyleBooks の例

Heat テンプレートの例:

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

Heat テンプレートの例

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

OpenStack Heat サービスとの統合