Google Cloud – Set instance hostname/FQDN

Create/edit metadata of instance at:

https://console.cloud.google.com/compute

To use the patch bellow, you need to create a metadata with key name hostname, set this to your hostname/FQDN.

Connect to instance (by SSH) and apply this patch to file /etc/dhcp/dhclient-exit-hooks.d/google_set_hostname

--- before/etc/dhcp/dhclient-exit-hooks.d/google_set_hostname 2018-03-31 04:35:36.482261558 +0000
+++ after/etc/dhcp/dhclient-exit-hooks.d/google_set_hostname 2018-03-31 03:34:44.528862484 +0000
@@ -15,6 +15,10 @@
 
 # Deal with a new hostname assignment.
 
+# https://gist.github.com/yuki-takeichi/3080521322f0f1d159ea6a343e2323e6
+# *** The below line is added by patching. ***
+new_host_name=$(curl --fail --silent http://metadata/computeMetadata/v1/instance/attributes/hostname -H "Metadata-Flavor: Google")
+
 if [ -n "$new_host_name" ] && [ -n "$new_ip_address" ]; then
 # Delete entries with new_host_name or new_ip_address in /etc/hosts.
 sed -i '/Added by Google/d' /etc/hosts

To avoid lose theĀ  patch, use this command:

# dpkg-divert --add /etc/dhcp/dhclient-exit-hooks.d/google_set_hostname

Now, reboot the instance to apply the FQDN set in metadata.

# reboot

Referencias: