9.2. HTTPS 非終端ロードバランサーの作成
アプリケーションがバックエンドメンバーサーバーで終端する HTTPS トラフィックを必要とする場合に (一般的に HTTPS パススルー と呼ばれます)、ロードバランサーリスナーに HTTPS プロトコルを使用できます。
前提条件
- インターネットから到達できる共有外部 (パブリック) サブネット。
手順
Source コマンドで認証情報ファイルを読み込みます。
例
source ~/overcloudrc
$ source ~/overcloudrc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パブリックサブネット (
public-subnet
) にロードバランサー (lb1
) を作成します。注記丸かっこ内の値は、この手順のコマンド例で使用されるサンプルの値です。これらのサンプル値を、実際のサイトに適した値に置き換えてください。
例
openstack loadbalancer create --name lb1 \ --vip-subnet-id public_subnet --wait
$ openstack loadbalancer create --name lb1 \ --vip-subnet-id public_subnet --wait
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ポート (
443
) にリスナー (listener1
) を作成します。例
openstack loadbalancer listener create --name listener1 \ --protocol HTTPS --protocol-port 443 lb1
$ openstack loadbalancer listener create --name listener1 \ --protocol HTTPS --protocol-port 443 lb1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow リスナーのデフォルトプール (
pool1
) を作成します。例
この例のコマンドは、TCP ポート 443 上の TLS 暗号化 Web アプリケーションで設定された HTTPS アプリケーションをホストするバックエンドサーバーが含まれるプライベートサブネットを使用する HTTPS プールを作成します。
openstack loadbalancer pool create --name pool1 \ --lb-algorithm ROUND_ROBIN --listener listener1 \ --protocol HTTPS
$ openstack loadbalancer pool create --name pool1 \ --lb-algorithm ROUND_ROBIN --listener listener1 \ --protocol HTTPS
Copy to Clipboard Copied! Toggle word wrap Toggle overflow バックエンドサーバーに接続し、パス (
/
) をテストする型 (TLS-HELLO
) のプール (pool1
) 上に、ヘルスモニター (healthmon1
) を作成します。ヘルスチェックは推奨されていますが、必須ではありません。ヘルスモニターが定義されていない場合、メンバーサーバーは
ONLINE
とみなされます。例
openstack loadbalancer healthmonitor create --name healthmon1 \ --delay 15 --max-retries 4 --timeout 10 --type TLS-HELLO \ --url-path / pool1
$ openstack loadbalancer healthmonitor create --name healthmon1 \ --delay 15 --max-retries 4 --timeout 10 --type TLS-HELLO \ --url-path / pool1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow プライベートサブネット (
private_subnet
) のロードバランサーメンバー (192.0.2.10
および192.0.2.11
) をデフォルトのプールに追加します。例
この例では、バックエンドサーバー
192.0.2.10
および192.0.2.11
の名前は、それぞれmember1
およびmember2
です。openstack loadbalancer member create --name member1 --subnet-id \ private_subnet --address 192.0.2.10 --protocol-port 443 pool1 openstack loadbalancer member create --name member2 --subnet-id \ private_subnet --address 192.0.2.11 --protocol-port 443 pool1
$ openstack loadbalancer member create --name member1 --subnet-id \ private_subnet --address 192.0.2.10 --protocol-port 443 pool1 $ openstack loadbalancer member create --name member2 --subnet-id \ private_subnet --address 192.0.2.11 --protocol-port 443 pool1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
ロードバランサー (
lb1
) の設定を表示して確認します。例
openstack loadbalancer show lb1
$ openstack loadbalancer show lb1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ヘルスモニターが存在し正常に機能する場合は、各メンバーのステータスを確認することができます。
例
動作中のメンバー (
member1
) のoperating_status
値はONLINE
です。openstack loadbalancer member show pool1 member1
$ openstack loadbalancer member show pool1 member1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow