One of the new steps when upgrading an existing VMware Cloud Foundation (VCF) 5.x or 9.0.x environment to VCF 9.1 is deploying the new VCF Management Services (VCFMS) component using SDDC Manager.

Unlike a brand new VCF 9.1 deployment using the VCF Installer, the VCFMS deployment workflow during an upgrade requires the VCF Services runtime network to be specified using a CIDR format rather than an IP Range, which can also be tricky if you do not have a contiguous IP address block.

Users can choose from additional IP allocation options, but you will need to use the SDDC Manager API, as I recently shared in this blog post.
To demonstrate this new SDDC Manager API, I have put together a quick PowerShell script called deploy_vcf_management_service_with_custom_ip_allocation.ps1 that simplifies the deployment of VCFMS using a custom IP allocation method.
The script makes use of both the VCF Management Components Validation and Deployment API and you just need to fill out the variables at the top of the script which is the same input requirement as you would see in the SDDC Manager UI with the exception of being able to define the exact IP Addresses you wish to use rather than forcing a CIDR or IP Range.
Here is an example running the script where validation fails and the API will return the specific error message and remediation steps to take.

Here is an example running the script where validation was successful and the deployment has started (you need to update the $ValidateOnly variable)

After the VCFMS deployment has begun, you can monitor the progress by logging into VCF Operations and navigate to Build->Tasks and you should see a new deployment task.

Thanks for the comment!