BOSH Director metrics server fails with 'InvalidAddressError, "zero-filled number in IPv4 address is ambiguous'
search cancel

BOSH Director metrics server fails with 'InvalidAddressError, "zero-filled number in IPv4 address is ambiguous'

book

Article ID: 389643

calendar_today

Updated On:

Products

VMware Tanzu Application Service

Issue/Introduction

When running an Apply Changes, the BOSH Director fails to start:

  Updating instance 'bosh/0'... Finished (00:02:50)
  Waiting for instance 'bosh/0' to be running... Failed (00:05:03)
Failed deploying (00:13:35)


After accessing the director via ssh (steps to do so can be found here), running monit summary shows the metrics_server in a failing state. Looking at the logs in /var/vcap/sys/log/director/metrics_server.stderr.log shows the following error:

/var/vcap/data/packages/director-ruby-3.3/xxx/lib/ruby/3.3.0/ipaddr.rb:663:in `block in in_addr': zero-filled number in IPv4 address is ambiguous:  (IPAddr::InvalidAddressError)

      s.match(/\A0./) and raise InvalidAddressError, "zero-filled number in IPv4 address is ambiguous: #{@addr}"

Cause

This issue is caused by have a 0 first in one of the sections of the IP. For example, this address would be valid:

192.168.0.1

However, this would cause the error to occur:

192.168.0.01

 

Resolution

To resolve this, you will need to identify where the invalid IP is configured. This is likely in BOSH Director tile -> Create Networks. You will need to review all IPs across all networks, and remove any leading 0s.

Once identified, you will also need to remove them from the bosh cloud-config. This can be done as follows:

  1. bosh cloud-config > config.yml
  2. Edit config.yml, and remove the invalid 0.
  3. bosh update-cloud-config config.yml

Then run an apply changes against the director. This will resolve the issue.