Update hostname and FQDN¶
For a full list of keys, refer to the update hostname module schema.
Default behavior¶
When preserve_hostname
is not specified, cloud-init updates
/etc/hostname
per-boot based on the cloud-provided local-hostname
setting. If you manually change /etc/hostname
after boot, cloud-init will
no longer modify it.
This default cloud-init behavior is equivalent to this cloud-config:
1#cloud-config
2preserve_hostname: false
Note that the same cloud-config will also prevent cloud-init from updating the system hostname.
Prevent updates to /etc/hostname
¶
This example will prevent cloud-init from updating the system hostname or
/etc/hostname
.
1#cloud-config
2preserve_hostname: true
Set hostname¶
This example sets the hostname to external.fqdn.me
instead of myhost
.
1#cloud-config
2fqdn: external.fqdn.me
3hostname: myhost
4prefer_fqdn_over_hostname: true
5create_hostname_file: true
Override cloud metadata¶
Set the hostname to external
instead of external.fqdn.me
when cloud
metadata provides the local-hostname
: external.fqdn.me
.
1#cloud-config
2prefer_fqdn_over_hostname: false
Don’t create /etc/hostname
file¶
On a machine without an /etc/hostname
file, this config instructs
cloud-init not to create one.
In most clouds, this will result in a DHCP-configured hostname provided by the cloud.
1#cloud-config
2create_hostname_file: false