/etc/hosts file can be managed to contain definitions for specific hosts:
salt-master: host.present: - ip: 192.168.0.42
Or using the
names directive, you can put several names for the same IP.
(Do not try one name with space-separated values).
server1: host.present: - ip: 192.168.0.42 - names: - server1 - florida
host.present does not cause an
update to remove the old entry.
server1: host.present: - ip: - 192.168.0.42 - 192.168.0.43 - 192.168.0.44 - names: - server1
You can replace all existing names for a particular IP address:
127.0.1.1: host.only: - hostnames: - foo.example.com - foo
Or delete all existing names for an address:
203.0.113.25: host.only: - hostnames: 
You can also include comments:
server1: host.present: - ip: 192.168.0.42 - names: - server1 - florida - comment: A very important comment
Ensure that the named host is absent
The host to remove
The ip addr(s) of the host to remove
Ensure that only the given hostnames are associated with the given IP address.
New in version 2016.3.0.
The IP address to associate with the given hostnames.
Either a single hostname or a list of hostnames to associate with the given IP address in the given order. Any other hostname associated with the IP address is removed. If no hostnames are specified, all hostnames associated with the given IP address are removed.
present(name, ip, comment='', clean=False)¶
Ensures that the named host is present with the given ip
The host to assign an ip to
The ip addr(s) to apply to the host. Can be a single IP or a list of IP addresses.
A comment to include for the host entry
New in version 3001.
Remove any entries which don't match those configured in the
option. Default is
New in version 2018.3.4.