雲服務器 ECS 實例自定義數據:自定義 yum 源、NTP 服務和 DNS 服務
實例自定義腳本是阿裏雲 ECS 為用戶提供的一種自定義實例啟動行為的腳本,詳細信息請參考阿裏雲線上幫助文檔:實例自定義數據。
本文檔主要介紹在創建實例時,您怎麼使用這個自定義腳本來配置自己的 yum 源、NTP 服務和 DNS 服務。您也可以使用這個腳本自定義 Windows 實例的 NTP 服務和 DNS 服務。
場景
目前,實例啟動時,阿裏雲會為實例自動配置預定義的 yum 源、NTP 服務和 DNS 服務。但是,您可能想擁有自己的 yum 源、NTP 服務和 DNS 服務,此時,您就可以使用實例自定義腳本來實現這個需求,此時您要注意:
- 如果您自定義了 yum 源,阿裏雲官方將不再提供 yum 源相關支持。
- 如果您自定義了 NTP 服務,阿裏雲官方不再提供相關時間服務。
配置方法
您可以按以下步驟實現上述場景需求。
1.登錄 阿裏雲 ECS 控製台,創建實例,配置如下:
- 網絡類型:VPC 網絡
- 實例規格:I/O 優化實例
- 鏡像:公共鏡像的 CentOS 7.2
2.在創建頁麵的 自定義數據 輸入框中輸入如下內容:
#!/bin/sh
# Modify DNS
echo "nameserver 8.8.8.8" | tee /etc/resolv.conf
# Modify yum repo and update
rm -rf /etc/yum.repos.d/*
touch myrepo.repo
echo "[base]" | tee /etc/yum.repos.d/myrepo.repo
echo "name=myrepo" | tee -a /etc/yum.repos.d/myrepo.repo
echo "baseurl=https://mirror.centos.org/centos" | tee -a /etc/yum.repos.d/myrepo.repo
echo "gpgcheck=0" | tee -a /etc/yum.repos.d/myrepo.repo
echo "enabled=1" | tee -a /etc/yum.repos.d/myrepo.repo
yum update -y
# Modify NTP Server
echo "server ntp1.aliyun.com" | tee /etc/ntp.conf
systemctl restart ntpd.service
注意:
- 第一行必須是 #!/bin/sh,前麵不能帶空格。
- 全文不能有多餘的空格和回車。
- 您可以根據實例情況定製具體的 DNS、NTP Server 和 yum 源 URL。
- 上述內容適用於 CentOS 7.2 鏡像,如果是其他鏡像,請根據需要修改實例自定義腳本。
- 您也可以使用 cloud config 類腳本更改 yum 源設置,但是不夠靈活,不能適配阿裏雲對部分 yum 源進行預配置的情況。建議大家使用 script 類的腳本修改 yum 源設置。
3.根據需要完成 安全設置。
4.完成上述配置後,再單擊 立即購買,並按頁麵指示開通實例。
實例購買完成後,您就可以登錄實例查看具體的效果,如下圖所示。
由上圖可知,您已經成功自定義了 DNS 服務、NTP 服務和 yum 源。
最後更新:2017-08-15 15:02:52