I have an inelegant solution -
1. Create a template that has networking disabled - I used Ubuntu cloud image and used a system rescue boot ISO to set the ubuntu user password so I could login and disable cloud init control of networking and configure the netplan network config yaml manually with no IP/DHCP set
2. Use that template to provision the cluster out of with Rancher - Rancher will clone it and wait for vsphere to report an IP…
3. Log into to each cloned VM and change the netplan yaml config with a static IP and apply to activate the static IP so it shows up in vsphere which will trigger rancher to continue the setup process