免責事項: これは英文の記事「CPU resize failure for onboarded virtual machines」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
エラーメッセージ:
The operation Resize failed. cpuCount needs to be evenly divisible by coreCount in order to have the same number of cores per socket. cpuCount:## coreCount:##
注: パワーオフ状態でオンボードされた仮想マシンは影響を受けません。パワーオフ状態でメタデータが取得できない場合、Aria Automationは coreCount を 1 に設定するためです。
VMware Aria Automation 8.18
これは想定された動作です。Aria Automation は、仮想マシンのメタデータを管理する際、主に以下の2つのテーブルを使用します。
compute_description (静的なレコードを保持するテーブル)
オンボード時に取得した初期構成を保持します。このテーブルに格納された coreCount はデータ同期で更新されません。パワーオフ状態の仮想マシンをオンボーディングした場合は coreCount = 1 が格納されます。
compute_state (動的なリソースを保持するテーブル)
vSphere の構成を反映します。このテーブルに格納された coreCount はデータ同期で更新されます。
カスタム Day-2 アクションで、coreCount を指定せずリサイズ操作を実行する場合、 Aria Automation は、動的な compute_state ではなく、静的な compute_description を参照して coreCount を確認します。つまり CPU 数が、オンボード時のコア数で割り切れなければエラーが発生し、結果的にリサイズ操作は失敗します。
運用中の仮想マシンでこの問題を解決するには、CPU 数 を coreCount で割り切れるように値を更新する必要があります。
更新手順:
ケース | メリット | 考慮事項 / リスク |
Case A: coreCount = 1 | どのような cpuCount を指定しても 1 で必ず割り切れるため、リサイズ操作が該当のエラーで失敗することはなくなります。 | ソケットあたり 1 コアのトポロジを作成します。ゲスト OS によってはソケットのサポートに制約があります。例: Windows 10/11 Pro は 2 ソケットまでしかサポートしていません。例えば、16 vCPUの仮想マシンで coreCount = 1 とした場合、2 CPUしか認識されません。 |
Case B: Specific Divisor | coreCount を CPU 数の約数とします。例: CPU 数 = 9, coreCount = 3 | リサイズ操作は、特定の数値で割り切れる値を維持する必要があります。例: CPU 数 12 へリサイズすることは可能ですが、10 にリサイズすることはできません。 |
カスタム Day-2 Actions のベストプラクティス
カスタム Day-2 アクションでリサイズ操作を実行する場合は coreCount を明示的な入力値として実装してください。