Konfigurasi Hostname dan Resolv pada Google Cloud Platform

Posted by

Jadi kemarin itu saya menyiapkan satu buah compute dan diinstall Zimbra pada Google Cloud Platform (GCP). Compute yang digunakan adalah CentOS 7 dan tahapan instalasi Zimbra yang digunakan yang ini : https://imanudin.net/2014/10/05/how-to-install-zimbra-8-5-0-on-centos-7-part-1/

Compute itu saya siapkan untuk membuat bahan tulisan rutin setiap minggu. Tulisan tentang script monitoring pada Zimbra 🙂 . Tahapan demi tahapan dilakukan agar Zimbra terinstall sesuai panduan instalasi Zimbra pada CentOS 7. Namun ketika proses instalasi Zimbra berlangsung, ada pertanyaan perihal penggantian hostname. Padahal, sebelumnya saya sudah konfigurasi hostname dengan benar. Menggunakan perintah hostnamectl set-hostname dan hasilnya pun sudah sesuai. Okelah, mungkin terlewat. Saya sesuaikan kembali hostnamenya dan lanjut proses instalasi.

Tidak lama kemudian, hostnamenya berubah kembali. Menjadi nama sesuai dengan nama yang diberikan pada compute. Isian priority pada resolv.conf juga berubah. Yang seharusnya ip diri sendiri di posisi pertama digantikan dengan IP dns dari GCP. Sepertinya ada proses otomatis setiap sekian menit sekali. Coba cek dengan perintah top, tidak ada yang aneh. Coba cek siapa tahu ada cloudinit juga tidak ada. Coba cek dhclient dengan perintah ps, ternyata ada. Dan service dhclient inilah yang selalu mengganti isian resolv.conf yang sudah diubah menjadi default kembali.

Supaya nama hostname dan isian resolv.conf tidak berubah, maka saya melakukan hal berikut :

# Konfigurasi resolv.conf
Tambahkan isian pada file /etc/dhclient.conf seperti berikut :

retry 10;
supersede domain-search "imanudin.net";
prepend domain-name-servers 127.0.0.1, 8.8.8.8;

Isian diatas akan mengganti isian pada file /etc/resolv.conf secara otomatis

# Konfigurasi hostname
Buka file /etc/dhcp/dhclient.d/google_hostname.sh dan ubah isian google_hostname_config menjadi titik dua (:). Lihat contoh berikut :

google_hostname_config() {
#  google_set_hostname
  :
}
google_hostname_restore() {
  :
}

Dengan melakukan perubahan diatas, konfigurasi hostname dengan perintah hostnamectl tidak otomatis berubah kembali setelah sekian menit.

Saat ini baru metode tersebut yang saya ketahui. Mungkin saja ada metode lain yang lebih simple 🙂

Silakan dicoba dan semoga bermanfaat 🙂

2 comments

  1. According to this article https://developers.google.com/compute/docs/metadata#default ‘hostname’ is part of the default metadata entries that provide information about your instance and it is NOT possible to manually edit any of the default metadata pairs You can also take a look at https://www.youtube.com/watch?v=cJNvYOYXkuo from the Google Team. Within the first few minutes it is mentioned that you cannot modify default metadata pairs. As such, it does not seem like you can specify the hostname upon instance creation other than through the use of a start-up script like you’ve done already. It is also worth mentioning that the hostname you’ve specified will get deleted and auto-synced by the metadata server upon reboot unless you’re using a start-up script or something that would modify it every time.

    If what you’re currently doing works for what you’re trying to accomplish, it might be the only workaround to your scenario.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.