はじめに
NestedでNutanixクラスターをNutanix上に構築しているので、ノウハウ共有ということで記事を書きました。メモリが潤沢な環境の場合、検証用途としてNutanix CEで構築した3ノードクラスターを稼働させておくと、色々と捗ること間違いなし。
VM作成前に済ませるべきこと
事前にIPアドレスの設計を済ませておく
以下、3ノードクラスターでNutanix CEを構築する場合に必要なIPアドレスです。
- AHV:3個
- CVM:3個
- CVMのVIP:1個
- iSCSI Data Service IP:1個
- PCVM:1-3個
- FSVMを構築するならば更に必要です…。1FSVMならば2個。3FSVMならば、Externalで3個、Internalで4個必要となります。
これを見ている方は既にご存じのはずですが、AHV、CVM、DSIP、PCVM、FSVMのExternalは同じセグメントに所属している必要があります。
VMの作成時に使用するVLANを決めておく
特に拘りはありません。ただし、NestedのPCとNon-NestedのPCでLeapを組むなど、検証用途で用意するならば、ルーティングの到達性は確保しましょう。
AHV、CVM、Data用のディスクはVolume Groupで作成しておく
CEのインストールした経験のある方なら既に存じていると思いますが、ディスクを3つ用意する必要があります。それを、単にvDiskとしてVM作成時につけるのではなく、予めVolume Groupとして構築しておきましょう。ディスクアクセスの負荷分散のためです。
- AHV:30GB
- CVM:200GB~
- Data:500GB~
となります。
VMの作成時
NICは偶数個付与する
VM作成画面でNICの設定をします。偶数個付けておくと、構築後にNWの負荷分散方法として、Virtual-Switchのbr0-upをActive-BackupからActive-Activeに変更することができます。
同じセグメントのVLANを使用した方がシンプルです。
現在のAHVのバージョン(2022~)では、最大15個のNICを1つのVMに付与することが可能です。つまり、14個付けておくと良いです。
VMの作成後~電源起動前
CPU Pass-Throughを有効化
GUIでVMを作成後、次のコマンドでcpu pass throughを有効化します。
しないと、VMの起動に失敗します。
acli vm.update VMの名前 cpu_passthrough=true ※CVMから
VM-VM Anti-Affinityを有効化
3ノード以上のクラスターにNestedで3ノード以上のクラスターを構築する場合、同じノードにVMが稼働するのは望ましくありません。そこで、アンチアフィニティを設定します。
次の記事を参照してください。
Volume GroupのLoad Balance機能を有効化
Volume GroupでディスクをVMにアタッチしているので、ロードバランス機能を有効化して、CVMへの負荷を下げます。
acli vg.update VGの名前 load_balance_vm_attachments=true ※CVMから
VirtIO Muti-Queueを設定
パケットの処理は通常1つのCPUコアで行われますが、これを設定することで複数のCPUコアでパケットを処理するため、NWのパフォーマンス = iSCSIトラフィックのパフォーマンスの向上が期待できます。
vm.nic_update VMの名前 VMのNICのMACアドレス queues=N ※CVMから ※VMのNICのMACアドレスはPrismのVM一覧から確認できます。 ※NはCPUの物理コア数以下の数にしてください。 ※NICの数だけこのコマンドを投入してください。 ※Nをやたら大きくしてもパフォーマンスがあがるわけではないので、N = 2がお勧めです。
詳しくは下記のドキュメントを参照してください。
vNUMAを設定
VMにNUMAノードを認識させます。これにより、Nestedクラスターで構築されるVM(NestedのCVMを含む)のパフォーマンス向上を期待できます。
acli vm.update VMの名前 num_vnuma_nodes=2 ※CVMから ※CPUソケットが2つある場合
設定の違いを確かめたい方は、このコマンドの前後で任意のNested CVMから次のコマンドを実行してください。
hostssh "numactl --hardware"
初期構築完了後
Nutanix Guest Toolをインストールする
後述するProtection Domainを用いたリストア時にVolume Groupが自動的にアタッチされるようになります。
ツールをインストールしないと、リストア時にVolume Groupはデタッチされてしまいます。3つのVMに対して毎回、Volume Groupをアタッチするのは面倒くさいので、お勧めです。
Protection DomainでNested VMとVolume Groupを保護
保護対象はNestedクラスター用に作成したVMとVolume Groupです。3ノードクラスターならば合計で6つのEntitiyが保護対象です。
これにより、同じタイミングでNestedクラスターのスナップショットを取得することが可能です。
コメント