Message: Failed to validate ESXi Host(s) spec. Remediation Message: Make sure a correct ESXi Host(s) spec is provided.
[YYYY-MM-DDTHH:MM:SS] INFO [vcf_dm,6a158ab5dbc65ccf075958a9dc4d099e,8a23] [c.v.e.s.c.s.a.n.NetworkPoolAdapterImpl,dm-exec-18] Fetching the networks associated with the network pool xxxxxx. [YYYY-MM-DDTHH:MM:SS]INFO [vcf_dm,6a158ab5dbc65ccf075958a9dc4d099e,8a23] [c.v.e.s.c.s.a.n.NetworkPoolAdapterImpl,dm-exec-18] Found 1 reserved IPs for network xxxxx-xxxx-xxxx-xxxxx-xxxxx by excluding already reserved IPs for execution with ID xxxxx-xxxx-xxxx-xxxxx-xxxxx. [YYYY-MM-DDTHH:MM:SS]ERROR [vcf_dm,6a158ab5dbc65ccf075958a9dc4d099e,8a23] [c.v.v.h.s.v.HostNetworkPoolValidator,dm-exec-18] Insufficient free IPs for VMOTION Network. Available IPs 1, Reserved IPs 1, Required IPs 1. Execution ID xxxxx-xxxx-xxxx-xxxx-xxxxxx. [YYYY-MM-DDTHH:MM:SS]INFO [vcf_dm,6a158ab5dbc65ccf075958a9dc4d099e,8a23] [c.v.e.s.c.s.a.n.NetworkPoolAdapterImpl,dm-exec-18] Found 1 reserved IPs for network xxxx-xxxx-xxxx-xxxx by excluding already reserved IPs for execution with ID xxxxx-xxxx-xxxx-xxxx-xxxxxx. [YYYY-MM-DDTHH:MM:SS]ERROR [vcf_dm,6a158ab5dbc65ccf075958a9dc4d099e,8a23] [c.v.v.h.s.v.HostNetworkPoolValidator,dm-exec-18] Insufficient free IPs for VSAN Network. Available IPs 1, Reserved IPs 1, Required IPs 1. Execution ID xxxx-xxxx-xxxx-xxxx-xxxxx.
We do have sufficient ip address in the target network pool for both vmotion and vsan.VMware Cloud Foundation 5.x
The failure was caused by an incorrectly formatted or fragmented ip_inclusion_ranges entry for the target network within the SDDC Manager PostgreSQL database.
A query of the vcf_network table in the SDDC Manager database revealed that the ip_inclusion_ranges for the provided VLAN ID was split into multiple, fragmented ranges rather than a single contiguous block. For example, the database showed the range formatted as:[{"start":"1.1.1.68","end":"1.1.1.70"},{"start":"1.1.1.71","end":"1.1.1.71"}]
This fragmentation prevented the API payload validation from successfully parsing the host's network specification.
To resolve the issue, the ip_inclusion_ranges value needs to be corrected directly within the SDDC Manager database.
psql -h localhost -U postgres -d platform
select id, name, ip_inclusion_ranges from vcf_network where vlan_id='<VLAN_ID>';
update vcf_network SET ip_inclusion_ranges='[{"start":"xxx.xxx.xx.x","end":"xxx.xxx.xx.xxx"}]' where id='<NETWORK_ID>';