Skip to content

VMware

Available in vSphere 8.0 Update 3.

KeyValuedefaultSummary
Mem.TierNvmePct10025NVMe size for memory tiering (in percentage of DRAM)
VMkernel.Boot.memoryTieringtruefalseEnable Memory Tiering
Terminal window
esxcli system tierdevice list
esxcli system tierdevice create -d <the_nvme_disk>
esxcli system tierdevice create -d /vmfs/devices/disks/t10.NVMe____SAMSUNG_MZVLB256HBHQ2D000L7______________3759D60181382500
Terminal window
memstats -r vmtier-stats --unit mb --cSelect name:memSize:active:tier0Consumed:tier1Consumed
# "Pretty" vm names
esxcli --formatter csv vm process list | awk -F ',' '{print $2,$5}' > /tmp/vms
memstats -r vmtier-stats -u mb -s name:memSize:active:tier0Consumed:tier1Consumed | sed "$(while read -r name id; do echo "s/vm.$id/$name/g"; done < /tmp/vms)"
Terminal window
# List all VMs
# Usage: snapshot.get vmid
vim-cmd vmsvc/getallvms
# Get VMid by VM name
vim-cmd vmsvc/getallvms | grep VmName | awk '{print $1}'
# Take snapshot
# Usage: snapshot.create vmid [snapshotName] [snapshotDescription] [includeMemory] [quiesced]
vim-cmd vmsvc/snapshot.create 2 SnapshotName "some description" 0 1
# List snapshots for vmid 2
vim-cmd vmsvc/snapshot.get 2
vim-cmd vmsvc/get.snapshotinfo 2
# Get snapshot id by snapshot name
vim-cmd vmsvc/get.snapshotinfo 2 | grep -C2 "SnapshotName" | grep id | grep -o '[0-9]\+'
vim-cmd vmsvc/snapshot.get 2 | grep -A1 "SnapshotName" | grep "Snapshot Id" | grep -o '[0-9]\+'
# Remove snaphot
# Usage: snapshot.remove vmid snapshotId [removeChildren]
vim-cmd vmsvc/snapshot.remove 2 11