Repository navigation
v1.1.0 — host_release.py, routed vmkernel gateways, the second-adapter guard
host_release.py joins deploy_vc.py: release ESXi hosts from the vCenter they are in today so esx_ready.sh can prep them for the one they are going to. Seven phases read from live inventory, check, evacuate, drain, disks, uncluster, nsx, release; survey, plan, apply --commit, verify. It refuses an evacuation that would leave the source vSAN under 25% free, a host found outside the cluster the config names, a cluster every host is leaving unless --dissolve is said out loud, and a host still carrying an N-VDS or TEP vmkernels, for which it prints the nsx_cleanup.py command instead. 158 self-test checks. The source: block lives in the same env file as the destination, so one file describes both ends of a move.
deploy_vc.py learns network.vmotion.gateway and network.vsan.gateway for routed vMotion or vSAN, refuses to add a second vmkernel on a portgroup where the host already has one at another address, and its self-test is 256 checks.
Built and proved out for essential.coach.
Full write-up: https://essential.coach/importing-esxi-8-into-vcf-9-1/
GPL-3.0. Example names only. Nothing secret is printed.