9.2. Real-time Compute ロールのデプロイメント
Red Hat OpenStack Platform director では、ComputeRealTime
ロールのテンプレートが利用可能です。これを使用して、real-time コンピュートノードをデプロイすることができます。コンピュートノードを real-time 用に指定するためには、追加のステップを実施する必要があります。
手順
/usr/share/openstack-tripleo-heat-templates/environments/compute-real-time-example.yaml ファイルをベースに、
ComputeRealTime
ロールのパラメーターを設定する compute-real-time.yaml 環境ファイルを作成します。cp /usr/share/openstack-tripleo-heat-templates/environments/compute-real-time-example.yaml /home/stack/templates/compute-real-time.yaml
cp /usr/share/openstack-tripleo-heat-templates/environments/compute-real-time-example.yaml /home/stack/templates/compute-real-time.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルには、以下のパラメーター値を含める必要があります。
-
IsolCpusList
およびNovaComputeCpuDedicatedSet
: リアルタイム負荷のために確保する分離 CPU コアおよび仮想 CPU のピニングの一覧。この値は、real-time コンピュートノードの CPU ハードウェアにより異なります。 -
NovaComputeCpuSharedSet
: エミュレータースレッド用に確保するホスト CPU の一覧 -
KernelArgs
: Real-time コンピュートノードのカーネルに渡す引数。たとえば、default_hugepagesz=1G hugepagesz=1G hugepages=<number_of_1G_pages_to_reserve> hugepagesz=2M hugepages=<number_of_2M_pages>
を使用して、複数のサイズのヒュージページを持つゲストのメモリー要求を定義することができます。この例では、デフォルトのサイズは 1 GB ですが、2 MB のヒュージページを確保することもできます。
-
ComputeRealTime
ロールをロールデータのファイルに追加し、ファイルを再生成します。以下は例になります。openstack overcloud roles generate -o /home/stack/templates/rt_roles_data.yaml Controller Compute ComputeRealTime
$ openstack overcloud roles generate -o /home/stack/templates/rt_roles_data.yaml Controller Compute ComputeRealTime
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドにより、以下の例のような内容で
ComputeRealTime
ロールが生成され、ImageDefault
オプションにovercloud-realtime-compute
が設定されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow カスタムロールおよび roles-data.yaml に関する一般的な情報は、「ロール」セクションを参照 し てください。
リアルタイム負荷用に指定するノードをタグ付けするために、
compute-realtime
フレーバーを作成します。以下は例になります。source ~/stackrc openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 compute-realtime openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute-realtime" compute-realtime
$ source ~/stackrc $ openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 compute-realtime $ openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="compute-realtime" compute-realtime
Copy to Clipboard Copied! Toggle word wrap Toggle overflow リアルタイム負荷用に指定するそれぞれのノードを、
compute-realtime
プロファイルでタグ付けします。openstack baremetal node set --property capabilities='profile:compute-realtime,boot_option:local' <NODE UUID>
$ openstack baremetal node set --property capabilities='profile:compute-realtime,boot_option:local' <NODE UUID>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の内容の環境ファイルを作成して、
ComputeRealTime
ロールをcompute-realtime
フレーバーにマッピングします。parameter_defaults: OvercloudComputeRealTimeFlavor: compute-realtime
parameter_defaults: OvercloudComputeRealTimeFlavor: compute-realtime
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -e
オプションを使用してopenstack overcloud deploy
コマンドを実行し、新しいロールファイルと共に作成したすべての環境ファイルを指定します。以下に例を示します。openstack overcloud deploy -r /home/stack/templates/rt~/my_roles_data.yaml -e home/stack/templates/compute-real-time.yaml <FLAVOR_ENV_FILE>
$ openstack overcloud deploy -r /home/stack/templates/rt~/my_roles_data.yaml -e home/stack/templates/compute-real-time.yaml <FLAVOR_ENV_FILE>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow