Google Cloud自定義GCE主機名

來源:  谷歌開發(fā)者
作者: Google Cloud
時間:2020-10-23
17331
本文內(nèi)容為Google Cloud自定義GCE主機名教程。

文/Google Cloud魏衡和盛駿

ia_5700000605.png

DHCP客戶端將覆蓋GCE主機名

GCE的網(wǎng)卡IP地址是由DHCP分配,同時,DHCP服務(wù)器還將發(fā)送DNS服務(wù)器和主機名,使用的DHCP Option有:DHCP Option 6-DNS服務(wù)器,以及DHCP Option 12-主機名。

NetworkManager DHCP租約信息

cat/var/lib/NetworkManager/dhclient-xxx.lease:

ia_5700000606.png

系統(tǒng)日志信息:

ia_5700000607.png

點擊以下文件:

cat/etc/dhcp/dhclient.d/google_hostname.sh

ia_5700000608.png

點擊文件

cat/usr/bin/google_set_hostname

ia_5700000609.png

如果您已經(jīng)修改了DNS服務(wù)器和主機名,則當(dāng)dhcp客戶端請求IP地址時,配置將會被覆蓋。

操作流程如下:

  1. DHCP Server ->
  2. NetworkManager DHCP Option ->
  3. DHCP client ->
  4. google_set_hostname ->
  5. change DNS server & hostname(更改 DNS 服務(wù)器或者主機名)


這篇文章將說明如何保持主機名(hostname)不被改變。

解決方案

根據(jù)上面的描述,我們可以更改以下的任何一項:

Don’t receive NetworkManager config on dhcp option 12

Change/etc/dhcp/dhclient.d/google_hostname.sh

Change/usr/bin/google_set_hostname

Can prohibit DHCP change the hostname.

這樣做,就可以禁止DHCP更改主機名。

2.1更改NetworkManager的配置

更改NetworkManager配置的目的,是取代DHCP選項12-hostname。DHCP客戶端將不再通過DHCP接收主機名。

2.2.1設(shè)置/etc/hostname

設(shè)置靜態(tài)主機名:

echo whvm05.weiheng.ink>/etc/hostname

2.1.2取代dhcp選項的12-hostname

Create a config file,add config to supersede the dhcp option:

創(chuàng)建一個配置文件,添加配置以取代dhcp選項:

touch/etc/dhcp/dhclient-eth0.conf

echo‘supersede host-name“”;’>>/etc/dhcp/dhclient-eth0.conf

2.1.3重新啟動NetworkManager

systemctl重新啟動NetworkManager

檢查配置:

cat/var/lib/NetworkManager/dhclient-eth0.conf

ia_5700000610.png

NetworkManager自動生成的配置文件將包含2.1.2中的先前配置。

2.1.4測試

ia_5700000612.png

如果重新引導(dǎo)VM,則主機名仍保持為/etc/hostname配置。

2.2更改google_hostname.sh

2.2.1編輯/etc/hostname文件

echo whvm03.weiheng.ink>/etc/hostname

2.2.2移除yum-cron

任何配置的改變都會有yum-cron的存儲,所以我們需要移除它們:

yum remove yum-cron-y

2.2.3編輯google_hostname.sh

將“google_set_hostname”替換為“:”:

sed-i“1,$s/google_set_hostname/:/g”/etc/dhcp/dhclient.d/google_hostname.sh

cat/etc/dhcp/dhclient.d/google_hostname.sh

ia_5700000611.png

2.2.4設(shè)置hostname

hostname`cat/etc/hostname

2.2.5測試

ia_5700000613.png

在reboot之后,主機名仍還沒有變化:

ia_5700000614.png

2.3更改google_set_hostname

2.3.1編輯google_set_hostname

設(shè)置新的new_host_name

sed-i‘1 anew_host_name=cat/etc/hostname’/usr/bin/google_set_hostname

sed-i‘1,$s/%%.*//g’/usr/bin/google_set_hostname

2.3.2移除yum-cron

正如2.2中提到的那樣,需要移除yum-cron,以保證配置沒有隨之改變:

yum remove yum-cron-y

2.3.3測試

ia_5700000614.png

總結(jié)

谷歌計算引擎的代理將更改虛擬機的主機名,通過更改dhcp客戶端配置,以及谷歌代理腳本,可以保持主機名不變。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于 谷歌開發(fā)者,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家