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

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

以下のセクションでは、NetScaler Consoleの機能とOpenStack統合ワークフローの概要を説明します。

OpenStack Neutron LBaaS用NetScalerドライバー

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

NetScaler ConsoleとOpenStackの相互登録

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

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

OpenStackのテナント

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

配置ポリシー

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

サービスパッケージ

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

サービスパッケージに関するいくつかの点を以下に示します。

  • テナントは複数のサービスパッケージの一部になることはできません
  • 複数のテナントを同じサービスパッケージに関連付けることができます
  • 自動プロビジョニング用に設定されたサービスパッケージでは、仮想NetScalerインスタンスは1つのプラットフォームタイプ (SDXプラットフォームまたはOpenStack Computeプラットフォーム上) からのみ作成できます

LBaaS V1およびLBaaS V2でサポートされる機能

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

以下のリストは、OpenStackのLBaaS V1とLBaaS V2の両方でサポートされる機能を示しています。

  • LBaaS V1
    • 負荷分散
  • LBaaS V2
    • 負荷分散
    • Barbican (OpenStackのキーマネージャー) によって管理される証明書を使用したSSLオフロード
    • 証明書バンドル (中間認証局を含む)
    • SNIサポート

このドキュメントでは、以下の情報を提供します。

ユースケースシナリオ

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

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

この要件を満たすために、SteveはOpenStackとNetScaler Consoleの両方をインストールして構成し、相互に互換性があるように準備する必要があります。SteveはOpenStackにExample-SportsOnlineというテナントアカウントを作成し、そのテナントアカウントにリソースを割り当てる必要があります。また、SteveはExample-SportsOnlineのリソースと構成を管理するために、異なるログオン資格情報 (ユーザー) を作成する必要があります。Tomはこれで、OpenStack上に2台のサーバーS1とS2を作成し、組織内のトラフィックを管理できます。

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

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

Tomはこれで、OpenStack LBaaS/UIを使用して、プール、仮想IP (VIP)、およびヘルスモニターを作成することで、負荷分散構成を作成できます。OpenStackのプールとVIPは、NetScalerインスタンス上でサービスグループおよび仮想サーバーとして展開されます。Tomはまた、サーバーを監視するためにヘルスモニターを作成し、いつでもUP状態でありNetScalerから到達可能なサーバーにのみアプリケーショントラフィックを送信できます。

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

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

以下のフローチャートは、LBaaS V1およびLBaaS V2を構成する際に従う必要があるワークフローを示しています。

LBaaS V1およびV2構成ワークフロー

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