Error: "Failed to validate host spec - Insufficient free IPs" or "Failed to allocate IPs from networks with error"
search cancel

Error: "Failed to validate host spec - Insufficient free IPs" or "Failed to allocate IPs from networks with error"

book

Article ID: 316098

calendar_today

Updated On:

Products

VMware Cloud Foundation

Issue/Introduction

This KB provides instructions on how to run the script to release unused vMotion or vSAN IP addresses from the SDDC Manager network pool, or how to remove special characters from an IP address.

  • Adding an ESXi host to a new or existing cluster in the SDDC fails because there are no free IP addresses for vMotion and vSAN in the network pool.

  • One of the following errors may be observed:

    • Failed to validate host spec - Insufficient free IPs for VSAN Network, Available free IPs 0: Required free IPs 1, Insufficient free IPs for VMOTION Network, Available free IPs 0: Required free IPs 1
    • Failed to allocate IPs from networks with error... Remediation Message: Use supported network types for IP allocation to ESXi Hosts

  • When running the 'Get Network Of Network Pool' API call on the SDDC Manager, the vMotion or vSAN IP address is either missing from the 'freeIps' section of the response or contains an unexpected value or character.

Environment

  • VMware Cloud Foundation (VCF) 4.x
  • VMware Cloud Foundation (VCF) 5.x
  • VMware Cloud Foundation (VCF) 9.x

Cause

  • An ESXi host experiences a PSOD and is forced to be rebuilt.
  • The host is manually removed from the SDDC Manager database because standard decommissioning is not possible.
  • Extra or special characters may be found in the vMotion or vSAN IP address of the host that fails to add.

Resolution

  1. Take a snapshot of the SDDC Manager.
  2. SSH into the SDDC Manager using the vcf user, and then elevate to root using su.
  3. Copy the attached staleIpCleanup.py python script to the /home/vcf/ directory on the SDDC Manager.
  4. Run the cleanup script using the following command: python staleIpCleanup.py

Attachments

staleIpCleanup.py get_app