第12章 エッジでネットワークトラフィックの負荷を分散するためのアベイラビリティーゾーンの作成
Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing サービス (octavia) を使用して、アベイラビリティーゾーン (AZ) にロードバランサーを作成し、トラフィックのスループットを向上させ、レイテンシーを削減し、セキュリティーを強化できます。
RHOSO 管理者は AZ プロファイルを作成し、そのプロファイルを使用して実際の AZ を作成します。RHOSO ユーザーは、さまざまなプロジェクトでこれらの AZ にロードバランサーを作成できます。
このセクションに含まれるトピックは次のとおりです。
12.1. Load-balancing サービス (Amphora プロバイダー) のアベイラビリティーゾーンの作成 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing サービス (octavia) を使用すると、RHOSO 管理者は、負荷分散アベイラビリティーゾーン (AZ) を作成できます。これにより、プロジェクトユーザーは、ロードバランサーを作成してトラフィックのスループットを高め、レイテンシーを短縮できます。負荷分散 AZ の一般的な使用例には、分散コンピュートノード (DCN) とエッジ環境が含まれます。
Load-balancing サービス AZ を作成するには手順を 2 つ実行する必要があります。RHOSO 管理者は、まずロードバランサー AZ プロファイルを作成し、次にそのプロファイルを使用してユーザーに表示される Load-balancing サービス AZ を作成する必要があります。
前提条件
-
ワークステーションに
ocコマンドラインツールがインストール済みである。 -
cluster-admin権限を持つユーザーとして、RHOSO コントロールプレーンにアクセスできるワークステーションにログオン済みである。 AZ で作成されたロードバランサーは、amphora 負荷分散プロバイダーを使用する必要があります。
OVN 負荷分散プロバイダーは、OVN ネイティブな別のメカニズムを使用してアベイラビリティーゾーンをサポートします。
-
DCN 環境があり、その環境で
octavia-dcn-deployment.yamlAnsible Playbook を実行して、必要なネットワークリソースが作成されている。
- Compute サービス (nova) AZ にアクセスできる。
サイトは管理ネットワークにアクセスできる。2 つのオプションがあります。
- "ストレッチされた" レイヤー 2 負荷分散管理ネットワーク。
- ネットワークを分離する分散コンピュートノード (DCN) 環境。
手順
ワークステーションから OpenStackClient Pod のリモートシェルにアクセスします。
$ oc rsh -n openstack openstackclientLoad-balancing サービス AZ に使用する Compute サービス AZ の名前を収集します。
ヒントLoad-balancing サービスの AZ にコンピュートサービスの AZ の名前と一致する名前を付けると、AZ の管理が容易になります。
$ openstack availability zone list --compute- 出力例
+-----------+-------------+ | Zone Name | Zone Status | +-----------+-------------+ | az0 | available | | az1 | available | | az2 | available | | internal | available | +-----------+-------------+
Load-balancing サービス AZ の作成に使用する管理ネットワークの ID を収集します。
$ openstack network list -c Name -c ID- 出力例
+--------------------------------------+----------------------+ | ID | Name | +--------------------------------------+----------------------+ | 0947ddcf-d9be-4b8c-94a1-be3852e5d905 | dcn2-public | | 4f35cb1c-69d7-4582-b3a5-0cf380c56f62 | dcn1-public | | 55e761de-ef4c-4a5c-8198-89d20a06eca3 | lb-mgmt-az2-net | | a1894c48-823c-4def-bb6f-e9b7ec4d0c0a | public | | bf72ef9b-e0f1-4d4e-a8b5-7f5bb036a275 | lb-mgmt-az1-net | | ff8f3153-a74b-499c-a850-947ad199fc6d | octavia-provider-net | +--------------------------------------+----------------------+注記サイトの仮想 IP を作成するために有効なネットワークを把握しているか確認してください。
AZ プロファイルを作成します。
$ openstack loadbalancer availabilityzoneprofile create \ --name <AZ_profile_name> --provider amphora --availability-zone-data \ '{"compute_zone": "<compute_AZ_name>","management_network": \ "<lb_mgmt_AZ_net_UUID>", "valid_vip_networks": ["<valid_AZ_VIP_net_UUID>"]}'-
<AZ_profile_name>は、作成する AZ プロファイルの名前に置き換えます。 -
<compute_AZ_name>は、AZ プロファイルを作成するコンピュート AZ の名前に置き換えます。 -
<lb_mgmt_AZ_net_UUID>は、作成される AZ で使用可能な管理ネットワークの ID に置き換えます。 (オプション)
<valid_AZ_VIP_net_UUID>は、仮想 IP の使用が許可されているネットワーク ID に置き換えます。この AZ 内の仮想 IP に利用可能なネットワークを制限する場合は、valid_vip_networksを使用します。- 例 -
az0のプロファイルを作成します この例では、Compute AZ (
az0_profile) で実行される Compute ノード上の管理ネットワーク (lb-mgmt-net) を使用する AZ プロファイル (az0) が作成されます。$ openstack loadbalancer availabilityzoneprofile create \ --name az0_profile --provider amphora --availability-zone-data \ '{"compute_zone": "az0","management_network": \ "662a94f5-51eb-4a4c-86c4-52dcbf471ef9"}'
- 例 -
-
手順 4 を繰り返して、作成する Load-balancing サービス AZ ごとに AZ プロファイルを作成します。
- 例 -
az1のプロファイルを作成します この例では、Compute AZ (
az1-profile) で実行される Compute ノード上の管理ネットワーク (lb-mgmt-az1-net) を使用する AZ プロファイル (az1) が作成されます。$ openstack loadbalancer availabilityzoneprofile create \ --name az1-profile --provider amphora --availability-zone-data \ '{"compute-zone": "az1","management-network": \ "a2884aaf-846c-4936-9982-3083f6a71d9b"}'- 例 -
az2のプロファイルを作成します この例では、Compute AZ (
az2-profile) で実行される Compute ノード上の管理ネットワーク (lb-mgmt-az2-net) を使用する AZ プロファイル (az2) が作成されます。$ openstack loadbalancer availabilityzoneprofile create \ --name az2-profile --provider amphora --availability-zone-data \ '{"compute-zone": "az2","management-network": \ "10458d6b-e7c9-436f-92d9-711677c9d9fd"}'
- 例 -
AZ プロファイルを使用して、Load-balancing サービス AZ を作成します。各 AZ に適切なプロファイルを使用して、追加の AZ に対してこの手順を繰り返します。
- 例: AZ (
az0) を作成します この例では、AZ プロファイル (
az0-profile) を使用して、Load-balancing サービス AZ (az0) が作成されます。$ openstack loadbalancer availabilityzone create --name az0 \ --availabilityzoneprofile az0-profile \ --description "AZ for Headquarters" --enable- 例: AZ (
az1) を作成します この例では、AZ プロファイル (
az1-profile) を使用して、Load-balancing サービス AZ (az1) が作成されます。$ openstack loadbalancer availabilityzone create --name az1 \ --availabilityzoneprofile az1-profile \ --description "AZ for South Region" --enable- 例: AZ (
az2) を作成します この例では、AZ プロファイル (
az2-profile) を使用して、Load-balancing サービス AZ (az2) が作成されます。$ openstack loadbalancer availabilityzone create --name az2 \ --availabilityzoneprofile az2-profile \ --description "AZ for North Region" --enable
- 例: AZ (
検証
AZ (
az0) が作成されたことを確認します。各 AZ に適切な名前を使用して、追加の AZ に対してこの手順を繰り返します。- 例 -
az0を検証します $ openstack loadbalancer availabilityzone show az0- 出力例
+------------------------------+--------------------------------------+ | Field | Value | +------------------------------+--------------------------------------+ | name | az0 | | availability_zone_profile_id | 5ed25d22-52a5-48ad-85ec-255910791623 | | enabled | True | | description | AZ for Headquarters | +------------------------------+--------------------------------------+- 例 -
az1を検証します $ openstack loadbalancer availabilityzone show az1- 出力例
+------------------------------+--------------------------------------+ | Field | Value | +------------------------------+--------------------------------------+ | name | az1 | | availability_zone_profile_id | e0995a82-8e67-4cea-b32c-256cd61f9cf3 | | enabled | True | | description | AZ for South Region | +------------------------------+--------------------------------------+- 例 -
az2を検証します $ openstack loadbalancer availabilityzone show az2- 出力例
+------------------------------+--------------------------------------+ | Field | Value | +------------------------------+--------------------------------------+ | name | az2 | | availability_zone_profile_id | 306a4725-7dac-4046-8f16-f2e668ee5a8d | | enabled | True | | description | AZ for North Region | +------------------------------+--------------------------------------+
- 例 -
次のステップ