CubeCOSでロードバランサーを作成する方法
ロードバランサーは、受信するネットワークトラフィックを複数のサーバーに分散させ、特定のサーバーに過大な負荷がかからないようにします。 これにより、アプリケーションのパフォーマンス、信頼性、および可用性が向上します。
USBストレージデバイスは、デフォルトでブロックされています。 USBデバイスへのアクセスが必要な場合は、管理者としてログインした後、CLI > tuning > configure を使用して、チューニングオプション cubesys.probeusb を true に設定してください。
前提条件
- Amphora ロードバランサーのイメージをダウンロード:amphora-x64-haproxy_yoga
ロードバランサーをアップロードしてインストールする
-
SCP や WinSCP などのツールを使用して、ロードバランサーのイメージを CubeCOS クラスタの Glance イメージディレクトリ
/mnt/cephfs/glanceにアップロードしてください。 クラスタのVIPへの管理権限を持つコンピュータから。scp amphora-x64-haproxy_yoga.qcow2 root@<cluster-vip>:/mnt/cephfs/glance/ -
SSHを使用して、CubeCOSクラスタ管理用VIPに
adminとしてログインします。 -
次のコマンドでロードバランサーのイメージをインポートします:
image import_lbcc1> image import_lb1: usb2: localEnter index: 21: amphora-x64-haproxy_yoga.qcow2Enter index: 1Importing...[13:49:33] Converting image to RAW format ...(100.00/100%)[13:49:36] Creating image amphora-x64-haproxy ...[=============================>] 100%b726a8b9-d6a8-492c-8102-9247c252d779[13:50:04] Finished creating image amphora-x64-haproxyImporting complete. It is safe to remove the local image file.
ロードバランサーの機能をテストする
ロードバランサーのプールに属するインスタンスを少なくとも2つ設定してください。
以下の手順では、Webサイトをホストするために、NginxとHTTPプロトコルを使用し、ポート80で動作する2つのRocky8 Webサーバーインスタンスを設定する方法を説明します。

ロードバランサーを作成
- 「プロジェクト」>「ネットワーク」>「ロードバランサー」>「+ ロードバランサーを作成」の順に選択します。

-
ロードバランサーを作成する前に、5つの設定手順を完了する必要があります。
- 基本設定
- リスナーの詳細
- プールの詳細
- 会員詳細
- 健康モニターの詳細
-
基本設定
- *ロードバランサー名 : 希望するロードバランサー名を入力してください。
- 説明 : ロードバランサーに関する追加の説明。
- *所有ネットワーク:ロードバランサーに使用するネットワークインターフェースとサブネットを選択してください。
- 管理状態:ポートの管理状態を指定します(デフォルトはオン)。

-
リスナーの詳細
-
*リスナー名 : 希望するリスナー名を入力してください。
-
リスナーの説明 : リスナーに関する追加の説明。
-
*リスナープロトコル:リスナーに使用するプロトコルを選択してください。対応しているプロトコルタイプは以下の通りです。
- HTTP
- TCP
- HTTPS
- UDP
-
*リスナープロトコルポート : 上記で選択したプロトコルによるリスナー用のポート。
-
*リスナーの接続数制限:リスナーへの同時接続数を制限します(デフォルト -1)。
-1 は接続制限なしを意味します_
-
管理状態:リスナーの管理状態を指定します(デフォルトはオン)。
-
カスタムヘッダー:バックエンドメンバーに送信する前にリクエストに挿入するオプションのヘッダー
- X-Forwarded-For : クライアントのIPアドレスを指定します
- X-Forwarded-Port : リスナーポートを指定します

-
-
プールの詳細:
-
*プール名 : 希望するプール名を入力してください。
-
プールの説明:プールに関する追加情報。
-
*プールアルゴリズム:プールに使用するアルゴリズムを選択します。 以下のアルゴリズムタイプに対応しています
- 接続数が最も少ない
- ラウンドロビン
- 送信元IP
-
*プールプロトコル:プールに使用するプロトコルを選択します。 以前に設定した「Listener Protocol」の選択に基づいて。
-
管理状態:プールの管理状態を指定します(デフォルトはオン)。

-
-
会員詳細
「既存のポートを選択」から既存のインスタンスを選択してください。 「メンバーを追加」ボタンをクリックすると、そのメンバーが「選択したメンバー」に追加されます。

選択したインスタンスに特定のポートを割り当てます。

-
健康モニタリングの詳細
-
ヘルスモニターを有効にする:ヘルスモニターを有効または無効にするスイッチ(デフォルトは「はい」)。
-
*ヘルスモニター名 : 希望するヘルスモニター名を入力してください。
-
*ヘルスモニターの遅延:各ヘルスチェックの応答に対する最大間隔(デフォルトは5)。
-
*ヘルスモニターの最大再試行回数:ヘルスチェックが連続して失敗した回数に応じて、バックエンドのクラウドサーバーの状態が「正常」から「異常」に切り替わります(デフォルトは3)。
-
*ヘルスモニターのタイムアウト:ヘルスチェックのリクエストに対する応答を待機する時間。この時間内に応答がない場合、チェックは失敗とみなされます(デフォルトは3)。
-
*ヘルスモニターの種類:ヘルスモニターに使用するプロトコルを選択してください。 以前に設定した「Listener Protocol」の選択に基づいて。
-
管理状態:ヘルスモニターの管理状態を指定します(デフォルトはオン)。

-
-
ロードバランサーを起動し、そのステータスが「作成待ち」になっていることを確認してください。

-
ロードバランサーのステータスが「Activate」になるまでお待ちください

-
ウェブサイトにアクセスして、ロードバランサーの信頼性を確認してください。 テスト対象のプール内のインスタンスを終了させるか、またはインスタンスに負荷を追加します。

