はじめに
本ドキュメントで紹介する内容は CVIM 3.2.1および3.2.2 に基づいています。その他のバージョンでは内容が異なる場合があります。
OpenStackでは、Compute ノードのCPUとRAMのオーバーコミットをサポートしています。オーバーコミットによって、VM インスタンスにCPUやメモリを割り当てる際、基盤となる物理マシンの上限を超えたリソースを割り当てることができます。オーバーコミットを利用することでクラウド上で動作可能なVM インスタンス数を増やすことができますが、同時にハードウェアリソースの減少によるVM インスタンスのパフォーマンスの低下が生じる可能性もあります。OpenStackでのオーバーコミットのデフォルト値は次のようになっています。
CPU 割当比: 16
RAM 割当比: 1.5
CPU 割当比のデフォルト値 16 は、スケジューラーが1つのノードで物理コア1つあたり最大16個の仮想コアを割り当てることを意味します。またRAM 割当比のデフォルト値 1.5 は、VM インスタンスに割り当てられた RAM の総量がそのCompute ノードで利用できるメモリ量の1.5倍未満であれば、スケジューラーはその Compute ノードにVM インスタンスを割り当てることができます。VM インスタンスのパフォーマンスの観点から、オーバーコミットを無効にする場合はそれぞれの値に1.0を設定します。
現在の設定は ciscovim list-openstack-configs で確認することができます。
# ciscovim list-openstack-configs |grep NOVA_CPU_ALLOCATION_RATIO
| NOVA_CPU_ALLOCATION_RATIO | 16.0 |
#
# ciscovim list-openstack-configs |grep NOVA_RAM_ALLOCATION_RATIO
| NOVA_RAM_ALLOCATION_RATIO | 1.5 |
#
もしくは、次のように Compute ノード上で確認することもできます。
# grep RATIO /docker/nova_common/nova_config
NOVA_CPU_ALLOCATION_RATIO: 16.0
NOVA_RAM_ALLOCATION_RATIO: 1.5
#
オーバーコミットの設定および変更方法
CVIMインストール時に設定する場合
(1) オリジナルの setup_data.yaml ファイルをもとにインストールに使用する setup_data.yaml ファイルを作成し、そのファイルに NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO を追加します。
cd openstack-configs/
cp setup_data.yaml.<C_or_B>_Series_EXAMPLE setup_data.yaml
~/Save/setup_data.yaml
設定値の有効な範囲は NOVA_RAM_ALLOCATION_RATIO が 1.0 から 4.0, NOVA_CPU_ALLOCATION_RATIO では 1.0 から 16.0 となります。
(例)
NOVA_RAM_ALLOCATION_RATIO: 1.5
NOVA_CPU_ALLOCATION_RATIO: 16.0
(2) 編集した setup_date.yaml ファイルを使用して Cisco VIM をインストール
ciscovim --setupfile ~/Save/setup_data.yaml run
現在の設定を変更する場合
ciscovim reconfigure の --setopenstackconfig オプションを使用して NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO の設定を変更することができます。尚、変更した設定値は pod 内のすべての Compute ノードに適用されます。
実行例: NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO に 1.0 を設定
[root@jcvim-mgmt ~]# ciscovim reconfigure --setopenstackconfig NOVA_RAM_ALLOCATION_RATIO,NOVA_CPU_ALLOCATION_RATIO
Perform the action. Continue (Y/N)y
Enter value between 1.0 to 4.0 for NOVA_RAM_ALLOCATION_RATIO:1.0
Enter value between 0.958 to 16.0 for NOVA_CPU_ALLOCATION_RATIO:1.0
Monitoring Setopenstackconfigs Operation
. . . . . . Cisco VIM Runner logs
The logs for this run are available in 10.70.72.130:/var/log/mercury/c6cc8fb7-b014-4405-8f16-7a3a215a1db2
############################################
Cisco Virtualized Infrastructure Manager
############################################
[1/4][INPUT_VALIDATION: INIT] [ / ] 0min 0sec
Management Node Validations!
+--------------------------------------+--------+-------+
| Rule | Status | Error |
+--------------------------------------+--------+-------+
| Check Kernel Version | PASS | None |
| Check Ansible Version | PASS | None |
| Check Docker Version | PASS | None |
| Check Management Node Tag | PASS | None |
| Check Bond Intf. Settings | PASS | None |
| Root Password Check | PASS | None |
... SNIP ...
尚、CVIM 3.4.1 以降のリリースでは、CVIM インストール時にCompute ノード 別に NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO を設定することができます。
次の例のように setup_data.yaml ファイルをテキストエディタで開き、 Compute ノード に値を設定します。
設定例:
setup_data.yaml ファイルをテキストエディタで開き、Compute ノード compute-node-01 の NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO に 1.0 を設定
SERVERS:
compute-node-01:
NOVA_CPU_ALLOCATION_RATIO: 1.0
NOVA_RAM_ALLOCATION_RATIO: 1.0
設定後、保存した setup_data.yaml を使用してCVIMのインストールを実施します。
また、CVIM 3.4.1 以降の稼働中の pod で設定を変更したい場合は、 一旦対象の Compute ノード を ciscovim remove-computes で切り離し、その後に setup_data.yaml に上記のように NOVA_RAM_ALLOCATION_RATIO と NOVA_CPU_ALLOCATION_RATIO を記述した後、その setup_data.yaml を使用して Compute ノードを ciscovim add-computes で追加する操作を行います。
関連情報
[CVIM] Compute ノードの交換手順
https://community.cisco.com/t5/-/-/ta-p/3996949