MySQL アプリケーションは、NSX Advanced Load Balancer を使用してロード バランシングできます。このトピックでは、MySQL サービスを NSX Advanced Load Balancer に統合する方法について説明します。

このセクションでは、次の構成手順について説明します。

  • レイヤー 4 仮想サービスの作成。

  • MySQL サーバのロード バランシング用のプールの作成。

  • MySQL サーバの外部健全性モニターの作成。

前提条件

SE で IP ルーティングを有効にする必要があります。

IP ルーティングの有効化の詳細については、「デフォルト ゲートウェイ(NSX Advanced Load Balancer SE での IP ルーティング)」を参照してください。

手順

  1. [アプリケーション プロファイル] の場合は System-L4-Profile を、[TCP プロファイル] の場合は System-TCP を使用してレイヤー 4 仮想サービスを作成します。
    1. [アプリケーション] > [仮想サービス] の順に移動し、[仮想サービスの作成] をクリックします。
    2. 目的の仮想サービス名を指定します。[プロファイル] セクションで、[アプリケーション プロファイル]System-L4-Application に、[TCP/UDP プロファイル]System-TCP-Fast-Path に設定します。
    3. [サービス ポート] セクションに移動し、[サービス]3306 に設定します。MySQL 仮想サービスは、このポート (3306) で受信トラフィックをリッスンします。
  2. MySQL サーバのプールを作成します。
    1. [プール] セクションのドロップダウン メニュー オプションを使用して、[プールの作成] を選択します。[アプリケーション] > [プール] の順に移動して、新しいプールを作成することもできます。
    2. [プールの作成] ページの [設定] タブで、プールのロード バランシング アルゴリズムを [コンシステント ハッシュ] に、mdash を [送信元 IP アドレス] に設定します。
  3. MySQL サーバの外部健全性モニターを作成します。MySQL サーバのロード バランシングに必要な健全性モニターには、System-TCP と MySQL サービス用のカスタム健全性モニターの 2 種類があります。次の手順に従って、必要なモニターを作成します。
    1. [アクティブ モニターの追加] をクリックし、[System-TCP] を選択します。
    2. [アクティブ モニターの追加] をもう一度クリックし、ドロップダウン メニューから [健全性モニターの作成] を選択します。
    3. 新しいカスタム健全性モニターに次の属性を指定します。
    • [名前]:必要に応じて指定

    • [タイプ]:外部

    • [外部設定] セクションで次のスクリプト コードを設定します。

    • 'mysql --host=$IP 
      --user=$SQLUSER --password=$SQLPW -e "select 1"' 
    • [スクリプト変数] オプションに次の属性を設定します。

    • SQLUSER=<username> SQLPW=<password for the user>
      注:

      ユーザー SQLUSER は、スキーマまたはデータベースに対する権限を持たない MySQL ユーザーです。

      NSX Advanced Load Balancer での外部健全性モニターの作成の詳細については、「外部健全性モニター」を参照してください。

  4. MySQL サーバのグローバル変数である最大接続数と一致するように、[サーバ 1 台あたりの最大接続数] の値を設定します。

結果

MySQL サービスが NSX Advanced Load Balancer と統合されています。