The /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
Note
Changing the names in 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: []
salt.states.host.absent(name, ip)¶Ensure that the named host is absent
salt.states.host.only(name, hostnames)¶Ensure that only the given hostnames are associated with the given IP address.
New in version 2016.3.0.
salt.states.host.present(name, ip, clean=False)¶Ensures that the named host is present with the given ip
Remove any entries which don't match those configured in the ip
option.
New in version 2018.3.4.