Because of the model that Puppet follows and its requirement of uniqueness this is a tricky thing to satisfy without the breakdown of Puppet’s declarative operation.In this specific case, either each line would have to be accompanied by a unique comment or each entry needs a composite namevar.That would give the least worst behaviour given the way that different platforms handle this content.
The outcome of this is that i can only ping a node by hostname if i know it's address, which means setting a static dhcp allocation and putting the hostname into /etc/hosts manually, which is very annoying and kind of defeats the poit of dhcp.
There must be a way to get dnsmasq to update the hosts file, surely The clients aren't using fqdn's if that matters, and i think i've tried every combinination of "expand-hosts" and "domain=" following is the dnsmasq config file contents: .
Note: The Docker networks feature allows you to create user-defined networks in addition to the default bridge network. The exact details of how Docker maintains these files inside the container can change from one Docker version to the next, so you should leave the files themselves alone and use the following Docker options instead.
Please refer to the Docker Embedded DNS section for more information on DNS configurations in user-defined networks. /dev/disk/by-uuid/1fec..on /etc/hostname type ext4 ... /dev/disk/by-uuid/1fec..on /etc/hosts type ext4 ... Four different options affect container domain name services.
The least worst model is that the IP address, of which there is one record per line, is the unique key, and the official name and aliases hang from that; this exposes the platform inconsistency around handling duplicate hostname entries to the user, but isn’t too terrible.
The parser should be tolerant of duplicate IP rows, however, and merge those into a uniqified set of host names and aliases.
Because this feature is currently incompatible with the overlay filesystem driver, a Docker daemon using “overlay” will not be able to take advantage of the to the host will be updated immediately to this newest host configuration.
It sounds crazy, but setting or changing the hostname of a Linux system can be an extremely confusing process.
My latest attempt at getting composite namevars into Puppet can be found at https://github.com/ody/puppet/tree/feature/master/composite_namevar, based off another PSE’s attempt at the same problem. My code functions in my smoke testing but causes ~800 Puppet unit and spec tests to fail.