Nutanix上VMのmacアドレスを変更する。

Nutanix上に構築したVMのMACアドレス変更手順メモ

現在のVMのMACアドレスを確認

# nmcli device show eth0| grep HWADDR
GENERAL.HWADDR: 50:6B:8D:8C:CC:52

50:6b:8d:8c:cc:52が割当たっています。

次にCVM上から確認 acliを使います。

$ acli

vm.nic_get Centos7_test
192.168.200.101 {
ip_address: "192.168.200.101"
mac_addr: "50:6b:8d:8c:cc:52" ←確認
network_name: "vlan0"
network_uuid: "75c0ba81-ff8d-4aac-a854-c94586483b4b"
type: "kNormalNic"
vlan_mode: "kAccess"
}

vm.nic_deleteコマンドで一度VMからNICを削除します。

$ vm.nic_delete Centos7_test 50:6b:8d:8c:cc:52

つぎにvm.nic_createでVMを指定して変更したい任意のMACアドレスをNICに割り当てます。
今回は50:6b:8d:8c:cc:55を割り当てます。

$ vm.nic_create Centos7_test mac=50:6b:8d:8c:cc:55 network=vlan0 request_ip=false

acliで確認します。

vm.nic_get Centos7_test
50:6b:8d:8c:cc:55 {
mac_addr: "50:6b:8d:8c:cc:55" ←変更されている
network_name: "vlan0"
network_uuid: "75c0ba81-ff8d-4aac-a854-c94586483b4b"
type: "kNormalNic"
}

更にVMからも確認
変更確認

[root@cent7-test ~]# nmcli device show eth0| grep HWADDR
GENERAL.HWADDR: 50:6B:8D:8C:CC:55

おしまい

NutanixのCVM hostname変更

NutanixのCVMのhostnameをあとから変更するメモ

まずはhostnameを変えたいCVMにログイン
NTNX-aaaaa-CVMからNUTANIX-01-CVMに変えます。

Nutanix Controller VM
Last login: Fri Sep 11 20:05:23 2018
nutanix@NTNX-aaaaa-CVM:172.10.5.5:~$ /usr/local/nutanix/cluster/bin/change_cvm_hostname NUTANIX-01-CVM
Script must be run as root

nutanixユーザーでは実行できません。

sudoで実行

nutanix@NTNX-aaaaa-CVM:172.10.5.5:~$ sudo /usr/local/nutanix/cluster/bin/change_cvm_hostname NUTANIX-01-CVM
Changing hostname to NUTANIX-01-CVM. This will reboot the CVM. Do you want to proceed? (Y/N): y
2018-09-28 12:51:56 INFO hostname_utils.py:72 Did not find the local SVM hostname NUTANIX-01-CVM in the host look uptable /etc/hosts
2018-08-28 12:51:56 INFO hostname_utils.py:97 Found that the SVM hostname in /etc/sysconfig/network does not match NUTANIX-01-CVM
2018-08-28 12:51:56 INFO hostname_utils.py:137 Setting display name to NUTANIX-01-CVM
2018-08-28 12:51:56 INFO hostname_utils.py:156 Writing custom hostname marker
2018-08-28 12:51:56 INFO change_cvm_hostname:86 Forwarding storage traffic to another CVM

これで変更完了

Nutanix VMの動的リソース変更 CPU編

Nutanix上に構築したVMのCPUリソースをコマンドで動的に変えてみたのでメモ

初めにCentos7でテスト用に作成したVMのリソースを確認
lscpuで確認

# lscpu
アーキテクチャ: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1
On-line CPU(s) list: 0
コアあたりのスレッド数:1
ソケットあたりのコア数:1
Socket(s): 1
NUMAノード: 1
ベンダーID: GenuineIntel
CPUファミリー: 15
モデル: 6
Model name: Intel(R) Xeon(R) CPU X5550 @ 2.67GHz
ステッピング: 1
CPU MHz: 2659.998
BogoMIPS: 5319.99
ハイパーバイザーベンダー:Microsoft
仮想化タイプ: 完全仮想化
L1d キャッシュ: 32K
L1i キャッシュ: 32K
L2 キャッシュ: 4096K
L3 キャッシュ: 16384K
NUMAノード 0 CPU: 0
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc nopl pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm

次にCVMにログインしacliで確認

$ acli
<acropolis>

vm.getと打ってTAB連打でVM一覧が表示されます。

<acropolis> vm.get
CE5.5_PC OS-new hoge-01
Cent7-01t hoge-02

vm.listを打てばVM名とUUIDが表示されます。

<acropolis> vm.list
VM name VM UUID
CE5.5_PC 201b781f-eb4f-4e1f-b9fa-a88ww6c7051a
Cent7-01t 59d2b8ec-16ef-463f-8ef7-d1bwf8cee4wa
略~

対象のVMの情報を表示します。

<acropolis> vm.get Cent7-01t
Cent7-01t {
config {
agent_vm: False
allow_live_migrate: True
disk_list {
addr {
bus: "ide"
index: 0
}
cdrom: True
device_uuid: "1dbb3878-737a-45f0-a3dd-397f8c58ea65"
empty: True
}
disk_list {
addr {
bus: "scsi"
index: 0
}
container_id: 34440
container_uuid: "f74fb6c0-6614-4f37-8a17-421ba59de94e"
device_uuid: "2238be91-6f33-40bb-a654-073a97f809dd"
vmdisk_size: 107374182400
vmdisk_uuid: "5ad05f95-fbb6-4b3a-9d7b-320c0b2fedfa"
}
hwclock_timezone: "UTC"
max_hotplug_memory_mb: 262144
memory_mb: 6144
name: "Cent7-01t"
nic_list {
mac_addr: "50:6b:8d:8c:cc:55"
network_name: "vlan0"
network_uuid: "75c0ba81-ff8d-4aac-a854-c94586483b4b"
type: "kNormalNic"
uuid: "c1e5a366-144c-4e18-b219-2b7c3d86d3dc"
}
num_cores_per_vcpu: 1 ←ここ
num_vcpus: 1 ←ここ

vm_type: "kGuestVM"
}
host_name: "192.168.100.12"
host_uuid: "9462c17a-8c90-4371-818a-34ff95c15317"
logical_timestamp: 15
state: "kOn"
uuid: "59d2b8ec-164f-463f-83f7-d1b3f8c3e44a"
}

ちなみにncliだとこのようにVM情報を取得

$ ncli

Welcome, admin
You're now connected to 00155eb5-0a3a-1204-4087-345acb8643453 (CE5.5) at 127.0.0.1

vm listでずら~と構築済みのVM一覧がながれ、name=で対象のVM名を絞ります。

ncli> vm list
略~
ncli> vm list name=Cent7-01t

Id : 00055eb5-0a3a-1204-4087-782bcb157802::59d2b8ec-164f-463f-83f7-d1b3f8c3e44a
Uuid : 59d2b8ec-164f-463f-83f7-d1b3f8c3e44a
Name : Cent7-01t
VM IP Addresses : 192.168.100.110
Hypervisor Host Id : 00055eb5-0a3a-1204-4087-782bcb157802::5
Hypervisor Host Uuid : 9462c17a-8c90-4371-818a-34ff95c15317
Hypervisor Host Name : NTNX-cee1ce23-A
Memory : 6 GiB (6,442,450,944 bytes)
Virtual CPUs : 1   ←これ
VDisk Count : 1
VDisks : 00055eb5-0a3a-1204-4087-782bcb157802::NFS:4:0:258
Protection Domain :
Consistency Group :

こんな感じでacliとncliでVMに割り当てられいるリソースの確認ができ
現在、vcpu1、1Socketに1Coreが割り当てられているのが確認できました。

早速本題の動的リソース増強です。

acliで実行します。
もちろんVMは稼働したままです。
vcpu2,core1に変更です。

<acropolis> vm.update Cent7-01t num_vcpus=2 num_cores_per_vcpu=1
Cent7-01t: complete

OS上で確認

# lscpu
アーキテクチャ: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2      ←増えてます
On-line CPU(s) list: 0,1
コアあたりのスレッド数:1
ソケットあたりのコア数:1
Socket(s): 2      ←増えてます
NUMAノード: 1
ベンダーID: GenuineIntel
CPUファミリー: 15
モデル: 6
Model name: Intel(R) Xeon(R) CPU X5550 @ 2.67GHz
ステッピング: 1
CPU MHz: 2659.998
BogoMIPS: 5319.99
ハイパーバイザーベンダー:Microsoft
仮想化タイプ: 完全仮想化
L1d キャッシュ: 32K
L1i キャッシュ: 32K
L2 キャッシュ: 4096K
L3 キャッシュ: 16384K
NUMAノード 0 CPU: 0,1
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc nopl pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm

OSは止まることなく増えてます。

更にテスト
vcpuのみ6に増強して見ます。

<acropolis> vm.update Cent7-01t num_vcpus=6
Cent7-01t: complete

ncli> vm list name=Cent7-01t

Name : Cent7-01t

Virtual CPUs : 12

OS上でも確認

# lscpu
アーキテクチャ: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 12
On-line CPU(s) list: 0-11
コアあたりのスレッド数:1
ソケットあたりのコア数:2
Socket(s): 6

動的リソース増強は問題なく実施できました。