検索

3.2. Red Hat OpenStack のデプロイメント設定

download PDF

Red Hat OpenStack Platform (RHOSP) デプロイメント設定の推奨事項に関する以下のリストを確認してください。

小規模なデプロイメントにより heat テンプレートを検証する
3 つ以上のコントローラーノード、1 つのコンピュートノード、および 3 つの Ceph Storage ノードで構成される、小規模な環境をデプロイします。この設定を使用して、すべての heat テンプレートが正しいことを確認できます。
コンピュート全体のインスタンスの分散を改善する

多数のインスタンスの作成中、Compute スケジューラーは、コンピュートノードの以前のインスタンスのリソース割り当てが確定するまで、そのコンピュートノードのリソースを認識しません。コンピュートノードの不均一な生成を避けるために、次のいずれかの操作を実行できます。

  • NovaSchedulerShuffleBestSameWeighedHosts パラメーターの値を true に設定します。

    parameter_defaults:
       NovaSchedulerShuffleBestSameWeighedHosts: `True`
  • インスタンスによってコンピュートノードが過負荷になるのを防ぐには、max_instances_per_host をコンピュートノードが生成できるインスタンスの最大数に設定し、NumInstancesFilter パラメーターが有効になっていることを確認します。コンピュートノードがこのインスタンス数に達すると、スケジューラーがそのノードをそれ以降のインスタンス生成スケジュールの対象として選択しなくなります。

    注記

    NumInstancesFilter パラメーターはデフォルトで有効になっています。ただし、環境ファイルの NovaSchedulerEnabledFilters パラメーターを変更する場合は、必ず NumInstancesFilter パラメーターを有効にしてください。

    parameter_defaults:
      ControllerExtraConfig
        nova::scheduler::filter::max_instances_per_host: <maximum_number_of_instances>
        NovaSchedulerEnabledFilters:
        - AvailabilityZoneFilter
        - ComputeFilter
        - ComputeCapabilitiesFilter
        - ImagePropertiesFilter
        - ServerGroupAntiAffinityFilter
        - ServerGroupAffinityFilter
        - NumInstancesFilter
    • <maximum_number_of_instances> は、コンピュートノードが生成できるインスタンスの最大数に置き換えます。
Networking サービス (neutron) のスケール設定

パフォーマンスとスケールの安定性を向上させるために、表 3.1. の設定を、大規模な OpenStack 環境でテストおよび検証しました。

サーバー側のプローブ間隔は、ovsdb-server によってクライアント (neutronovn-controller、および ovn-metadata-agent) に送信されるプローブのタイムアウトを制御します。タイムアウトが経過するまでにクライアントから応答が得られない場合、クライアントとの接続が切断され、強制的に再接続されます。クライアントがタイムアウトする可能性が最も高い状況は、クライアントが ovsdb-server に初めて接続し、データベースのコピーをメモリーにロードするときです。タイムアウトが短すぎると、データベースのダウンロード中に ovsdb-server がクライアントを切断します。その結果、クライアントが再接続して再試行することになり、このサイクルが永久に繰り返されます。したがって、最大タイムアウト間隔が機能しない場合は、プローブ間隔の値をゼロに設定してプローブを無効にしてください。

クライアント側のプローブ間隔が無効になっている場合、ovsdb-server への接続が TCP キープアライブメッセージを使用して監視されます。

注記

可能な場合は、常に tripleo heat template (THT) のパラメーターを使用して必要な設定を行ってください。THT または Puppet でデフォルト値が定義されている場合、手動で行った設定が、設定ダウンロードの実行によって上書きされるためです。さらに、手動で設定できるのは既存の環境のみであるため、設定の変更は新しいノードや置き換えられたノードには適用されません。

表3.1 Networking サービスに推奨されるスケール設定
設定説明手動による設定THT のパラメーター

コンピュートノード上の OVS サーバー側の非アクティブ状態プローブ

このプローブ間隔を 5 秒から 30 秒に増やします。

ovs-vsctl set Manager . inactivity_probe=30000
 

コントローラーノード上の OVN Northbound サーバー側の非アクティブ状態プローブ

このプローブ間隔を 180000 ミリ秒に増やすか、0 に設定して無効にします。

podman exec -u root ovn_controller ovn-nbctl --no-leader-only set Connection . inactivity_probe=180000
 

コントローラーノード上の OVN Southbound サーバー側の非アクティブ状態プローブ

このプローブ間隔を 180000 ミリ秒に増やすか、0 に設定して無効にします。

podman exec -u root ovn_controller ovn-sbctl --no-leader-only set Connection . inactivity_probe=180000
 

コンピュートノード上の OVN コントローラーのリモートプローブ間隔

このプローブ間隔を 180000 ミリ秒に増やすか、0 に設定して無効にします。

podman exec -u root ovn_controller ovs-vsctl --no-leader-only set Open_vSwitch . external_ids:ovn-remote-probe-interval=180000

OVNRemoteProbeInterval: 180000

コントローラーノード上の Networking サービスのクライアント側プローブ間隔

このプローブ間隔を 180000 ミリ秒に増やすか、0 に設定して無効にします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/plugins/ml2/ml2_conf.ini ovn ovsdb_probe_interval 180000

OVNOvsdbProbeInterval: 180000

コントローラーノード上の Networking サービスの api_workers

neutron-server の負荷に基づいて、個別の API ワーカープロセスのデフォルト数を 12 から 16 以上に増やします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron.conf DEFAULT api_workers 16

NeutronWorkers: 16

コントローラーノード上の Networking サービスの agent_down_time

非常に大規模なクラスターの場合は、agent_down_time を最大許容数に設定します。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron.conf DEFAULT agent_down_time 2147483

NeutronAgentDownTime: 2147483

コンピュートノード上の OVN メタデータの report_agent

大規模なインストールでは、report_agent を無効にします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron_ovn_metadata_agent.ini agent report_agent false
 

コンピュートノード上の OVN のmetadata_workers

すべてのコンピュートノードの metadata_workers を最小限に減らし、OVN Southbound データベースへの接続を減らします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron_ovn_metadata_agent.ini DEFAULT metadata_workers 1

NeutronMetadataWorkers: 1

コンピュートノード上の OVN メタデータの rpc_workers

すべてのコンピュートノードで rpc_workers を最小限に減らします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron_ovn_metadata_agent.ini DEFAULT rpc_workers 0

NeutronRpcWorkers: 0

コンピュートノード上の OVN メタデータのクライアント側プローブ間隔

このプローブ間隔を 180000 ミリ秒に増やすか、0 に設定して無効にします。

crudini --set /var/lib/config-data/puppet-generated/neutron/etc/neutron/neutron_ovn_metadata_agent.ini ovn ovsdb_probe_interval 180000

OVNOvsdbProbeInterval: 180000

同時にプロビジョニングされるノードの数を制限する

平均的なエンタープライズレベルのラックユニット内に収まるサーバーの数は、通常 50 台です。そのため、同時にデプロイできるノードの数は、平均 1 ラック分です。

デプロイの問題を診断するのに必要なデバッグを最小限に抑えるには、一度にデプロイするノードを 50 個までにしてください。より大きな数のノードをデプロイする場合として、Red Hat は最大 100 ノードの同時テストに成功しています。

コンピュートノードをバッチでスケーリングするには、--limit オプションを指定して openstack overcloud deploy コマンドを使用します。これにより、時間が節約され、アンダークラウドでのリソース消費が削減されます。

未使用の NIC を無効にする

デプロイ中にオーバークラウドに未使用の NIC がある場合は、NIC 設定テンプレートで未使用のインターフェイスを定義して、インターフェイスを use_dhcp: false および defroute: false に設定する必要があります。

未使用のインターフェイスを定義しない場合は、イントロスペクションおよびスケーリング操作中に、ルーティングの問題や IP 割り当ての問題が発生する可能性があります。デフォルトでは、NIC は BOOTPROTO=dhcp を設定します。つまり、未使用のオーバークラウド NIC は、PXE プロビジョニングに必要な IP アドレスを消費します。これにより、ノードで利用可能な IP アドレスのプールが減少する場合があります。

未使用の Bare Metal Provisioning (ironic) ノードの電源をオフにする
メンテナンスモードにある未使用の Bare Metal Provisioning (ironic) ノードの電源をオフにしてください。Bare Metal Provisioning は、メンテナンスモードのノードの電源状態を追跡せず、メンテナンスモードで電源オン状態のまま維持されている以前のデプロイメントのノードの電源状態を、誤ってオフとして報告します。これにより、未使用のノードのオペレーティングシステムに古い設定 (オーバークラウドネットワークの IP アドレスなど) がある場合、進行中のデプロイで問題が発生する可能性があります。デプロイが失敗した後に再デプロイする場合は、未使用のノードをすべて電源オフにしてください。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.