OpenStack:NetScaler インスタンスの統合

NetScaler Application Delivery Management(ADM)のクラウドオーケストレーション機能により、NetScaler ADC製品とOpenStackプラットフォームを統合できます。OpenStackプラットフォームでこの機能を使用することで、OpenStackユーザーはNetScaler ADC 負荷分散機能(LBaaS)を利用することができます。以後、OpenStackユーザーは、OpenStackのロードバランサー構成をNetScalerインスタンスに展開できます。

以下のセクションでは、NetScaler ADMとOpenStackの統合ワークフローの機能について簡単に説明します。

オープンスタック中性子LBaaS用NetScaler ADC ドライバ

OpenStack ニュートロン LBaaS プラグインには、OpenStack が NetScaler ADM と通信できるようにする NetScaler ドライバーが含まれています。OpenStack はこのドライバーを使用して、LBaaS API を介して行われた負荷分散設定を NetScaler ADM に転送します。これにより、目的の NetScaler インスタンスにロードバランサー設定が作成されます。また、OpenStackはこのドライバーを使用してNetScaler ADMを定期的に呼び出し、NetScalerからすべての負荷分散構成のさまざまなエンティティ(VIPやプールなど)のステータスを取得します。OpenStackプラットフォーム用のNetScalerドライバーソフトウェアは、NetScaler ADMにバンドルされています。ドライバをダウンロードしてインストールするには、まずNetScaler ADM をインストールしてアプリケーションを起動する必要があります。

NetScaler ADMとOpenStackを相互に登録する

まず、NetScaler ADM にOpenStack情報を登録する必要があります。OpenStackコントローラーのIPアドレスとクラウド管理者ユーザー資格情報、さらにOpenStackのNetScalerドライバーのユーザー資格情報を設定します。後でNeutron構成ファイル(neutron.conf)のNetScaler_Driverセクションで同じログイン資格情報を指定して、OpenStackのNetScalerドライバーがLB構成中にNetScaler ADMに接続できるようにすることができます。

OpenStackとNetScaler ADMが相互に登録されると、両方が相互に通信できるようになります。また、OpenStackユーザーは、OpenStackの既存の資格情報を使用してNetScaler ADMユーザーインターフェイスにログオンし、LB構成がNetScalersでどのように機能しているかを確認できます。

OpenStackにおけるテナント

OpenStackでは、テナントはプロジェクトとも呼ばれます。テナントはユーザーのグループであり、テナント(プロジェクト)は、分離されたユーザーグループに割り当てられるリソースのセット(コンピューティング、ネットワーク、ストレージなど)として定義されることもあります。

配置ポリシー

ユーザーが作成した各ロードバランサー構成で使用されるNetScalerインスタンスを、配置ポリシーを通じて柔軟に決定できます。また、NetScaler ADMには、OpenStackテナントに基づいてNetScalerインスタンスを割り当てるオプションも用意されています。

サービスパッケージ

サービスパッケージは、ポリシーおよびSLAと、デバイスまたは自動プロビジョニングの構成仕様、テナントおよび配置ポリシーがまとめられたものです。サービスパッケージは、通常、テナントに提供される分離ポリシーの条件で定義されています。

サービスパッケージに関するいくつかの重要点は次のとおりです。

  • テナントを複数のサービスパッケージに含めることはできません。

  • 複数のテナントを同一のサービスパッケージに割り当てることはできます。

  • 自動プロビジョニング用に設定されたサービスパッケージでは、仮想NetScaler ADC インスタンスは、1つのプラットフォームタイプ(SDXプラットフォームまたはOpenStack Computeプラットフォーム)からのみ作成できます。

LBaaS V1とLBaaS V2でサポートされている機能

OpenStackのLBaaS V1ドライバーはOpenStack Horizonユーザーインターフェイスからの操作をサポートしていますが、LBaaS V2ドライバーがサポートしているのはコマンドライン操作のみです。

次の一覧は、OpenStackのLBaaS V1とLBaaS V2でサポートされている機能を示しています。

  • LBaaS V1

    • 負荷分散
  • LBaaS V2

    • 負荷分散

    • OpenStack のキーマネージャーである Barbicanが管理する証明書で SSL オフロード

    • 証明書パッケージ(中間証明機関を含む)

    • SNIサポート

このドキュメントでは、以下の内容について説明します。

ユースケースのシナリオ

以下のユースケースシナリオでは、NetScaler ADMとOpenStackプラットフォームを統合するワークフローについて説明します。

Example-Cloud-Providerという名前のある企業では、OpenStackコンポーネントを使用してクラウドをセットアップし、テナントにインフラストラクチャを提供しています。スティーブはこのクラウドプロバイダーの管理者であり、トムはExample-Cloud-Providerのクラウドインフラストラクチャのテナントです。トムの組織であるExample-Sportsonline.comは、S1とS1の2台のサーバを必要とする。また、TomはOpenStackプラットフォーム上のサーバS1とS2間のトラフィックを負荷分散するために、専用のNetScaler ADC デバイスも必要とする。

この要件を満たすには、Steve は OpenStack と NetScaler ADM の両方をインストールして構成し、相互に互換性を持たせるように準備する必要があります。スティーブは、OpenStackにExample-SportsOnlineという名前のテナントアカウントを作成し、そのテナントアカウントにリソースを割り当てる必要があります。また、リソースと構成を管理するために、Example-SportsOnline用の複数のログオン資格情報(ユーザー)も作成する必要があります。これらの手順を経ると、トムがOpenStackに2台のサーバー、S1とS2を作成し、Example-SportsOnline.comのトラフィックを管理できるようになります。  

スティーブはOpenStackの詳細をNetScaler ADMに登録し、OpenStackのネットワークコンポーネントであるNeutronでNetScaler LBaaSドライバーを構成する必要があります。登録が完了すると、NetScaler ADMはOpenStackのすべてのテナントの詳細を表示します。スティーブは、NetScaler LBaaS機能を必要とするユーザーを一覧からExample-SportsOnlineを選択し、NetScaler ADMのロードバランサー構成に専用のNetScalerを割り当てるようにトムを構成できます。

このため、スティーブはNetScaler ADMユーザーインターフェイスを使用してOpenStackのコンピューティングレイヤー(Nova)にNetScaler VPXインスタンスをプロビジョニングすることも、トムがOpenStackでLB構成を行うときにMASがNetScaler VPXインスタンスをオンデマンドで自動プロビジョニングできるようにすることもできます。いずれの場合も、NetScaler ADMはVPXインスタンスを管理します。これを実現するために、SteveはNetScaler ADMでサービスパッケージを作成し、TomとのSLAで合意した条件をサービスパッケージに定義します。たとえば、ロードバランサー構成を実現する専用インスタンスをトムに提供する場合、スティーブは「Dedicated」分離ポリシーを選択します。つまり、サービスパッケージでトムに対して非共有インスタンスを選択します。次に、さまざまなNetScaler VPXインスタンスをサービスパッケージに割り当て、そのサービスパッケージの専用NetScalerを必要とする他のテナントと共に、Example-SportsOnlineを割り当てます。その結果、トムが初めてロードバランサー構成を実行すると、NetScaler ADMはサービスパッケージ内のNetScaler VPXインスタンスの1つをExample-SportsOnlineに割り当てて、その構成もそのNetScalerに展開します。

これでトムは、OpenStackのLBaaSおよびUIによるプール、VIP(Virtual IP:仮想IPアドレス)、ヘルスモニターの作成を通じて、負荷分散構成を作成できるようになります。OpenStackのプールとVIPは、NetScalerインスタンスのサービスグループおよび仮想サーバーとして配置されます。また、トムはヘルスモニターを作成して、サーバーを監視したり、常にUPの状態でNetScalerから到達可能なサーバーだけにアプリケーショントラフィックを送信したりできます。

こうしてOpenStackで作成された負荷分散構成はNetScalerインスタンスに実装されます。完全に構成されると、NetScaler VPX インスタンスが負荷分散機能を引き継ぎ、アプリケーショントラフィックの受け入れを開始し、Tomによって作成されたサーバーS1とS2間のトラフィックの負荷分散を行います。  

NetScaler ADMとOpenStackワークフローの統合

次のフローチャートは、LBaaS V1およびLBaaS V2構成時に従う必要のあるワークフローです。

LBaaS V1 および V2 の設定ワークフロー

OpenStack:NetScaler インスタンスの統合