15.3. CPU ピニングパラメーターの更新
Red Hat OpenStack Platform 17.1 へのアップグレードが完了した後、CPU ピニング設定を NovaVcpuPinSet パラメーターから以下のパラメーターに移行する必要があります。
NovaComputeCpuDedicatedSet- 専用の (ピニングされた) CPU を設定します。
NovaComputeCpuSharedSet- 共有の (ピニングされていない) CPU を設定します。
手順
-
アンダークラウドに
stackユーザーとしてログインします。 Compute ノードが同時マルチスレッド (SMT) をサポートするが
hw:cpu_thread_policy=isolatedポリシーでインスタンスを作成している場合は、以下のオプションのいずれかを実施する必要があります。hw:cpu_thread_policyスレッドポリシーを設定しない新しいフレーバーを作成し、そのフレーバーでインスタンスのサイズを変更します。source コマンドでオーバークラウドの認証ファイルを読み込みます。
$ source ~/overcloudrcデフォルトのスレッドポリシー
preferを使用してフレーバーを作成します。(overcloud) $ openstack flavor create <flavor>注記インスタンスのサイズを変更する場合は、新しいフレーバーを使用する必要があります。現在のフレーバーを再利用することはできません。詳細は、インスタンスの作成と管理 ガイドの インスタンスのサイズ変更 を参照してください。
新しいフレーバーを使用するようにインスタンスを変換します。
(overcloud) $ openstack server resize --flavor <flavor> <server> (overcloud) $ openstack server resize confirm <server>-
hw:cpu_thread_policy=isolatedポリシーを使用するすべての固定インスタンスに対して、このステップを繰り返します。
Compute ノードからインスタンスを移行して、Compute ノードの SMT を無効にする。
source コマンドでオーバークラウドの認証ファイルを読み込みます。
$ source ~/overcloudrcCompute ノードが新しい仮想マシンを受け入れるのを無効にします。
(overcloud) $ openstack compute service list (overcloud) $ openstack compute service set <hostname> nova-compute --disable- Compute ノードからすべてのインスタンスを移行します。インスタンスの移行の詳細は、コンピュートノード間の仮想マシンインスタンスの移行 を参照してください。
- Compute ノードをリブートし、Compute ノードの BIOS で SMT を無効にします。
- Compute ノードをブートします。
Compute ノードを再度有効にします。
(overcloud) $ openstack compute service set <hostname> nova-compute --enable
stackrcファイルを取得します。$ source ~/stackrc-
NovaVcpuPinSetパラメーターが含まれる環境ファイルを編集します。 CPU ピニングの設定を
NovaVcpuPinSetパラメーターからNovaComputeCpuDedicatedSetとNovaComputeCpuSharedSetに移行します。-
これまでピニングされたインスタンス用に使用されていたホストの場合には、
NovaVcpuPinSetの値をNovaComputeCpuDedicatedSetに変更します。 -
これまでピニングされていないインスタンス用に使用されていたホストの場合には、
NovaVcpuPinSetの値をNovaComputeCpuSharedSetに変更します。 -
NovaVcpuPinSet の値が設定されていない場合には、ノード上でホストするインスタンスの種別に応じて、すべての Compute ノードのコアを
NovaComputeCpuDedicatedSetまたはNovaComputeCpuSharedSetのどちらかに割り当てる必要があります。
たとえば、以前の環境ファイルに以下のピニング設定が定義されていたとします。
parameter_defaults: ... NovaVcpuPinSet: 1,2,3,5,6,7 ...設定をピニング設定に移行するには、
NovaComputeCpuDedicatedSetパラメーターを設定し、NovaVcpuPinSetパラメーターの設定を解除します。parameter_defaults: ... NovaComputeCpuDedicatedSet: 1,2,3,5,6,7 NovaVcpuPinSet: "" ...設定をピニングしない設定に移行するには、
NovaComputeCpuSharedSetパラメーターを設定し、NovaVcpuPinSetパラメーターの設定を解除します。parameter_defaults: ... NovaComputeCpuSharedSet: 1,2,3,5,6,7 NovaVcpuPinSet: "" ...重要NovaComputeCpuDedicatedSetまたはNovaComputeCpuSharedSetのいずれかが、NovaVcpuPinSetで定義した設定と一致するようにします。NovaComputeCpuDedicatedSetまたはNovaComputeCpuSharedSetのいずれかの設定を変更する、またはその両方を設定するには、設定を更新する前にピニング設定の Compute ノードが 1 つのインスタンスも実行していないようにします。-
これまでピニングされたインスタンス用に使用されていたホストの場合には、
- ファイルを保存します。
デプロイメントコマンドを実行して、新しい CPU ピニングパラメーターでオーバークラウドを更新します。
(undercloud) $ openstack overcloud deploy \ --stack _STACK NAME_ \ --templates \ ... -e /home/stack/templates/<compute_environment_file>.yaml ...