使用自定義數(shù)據(jù)進行實例初始化
如您希望在創(chuàng)建ECS實例時完成系統(tǒng)配置或運行特定業(yè)務(wù)腳本,例如預(yù)裝Nginx、Docker等軟件或修改主機名等,可以通過設(shè)置自定義數(shù)據(jù)參數(shù)來實現(xiàn)。
自定義數(shù)據(jù)介紹
實例自定義數(shù)據(jù)是指用戶上傳給實例的腳本、指令或配置文件等數(shù)據(jù),可用來完成實例初始化或其他配置,例如,在實例首次啟動時,自動運行服務(wù)啟動腳本、安裝軟件、打印日志等。自定義數(shù)據(jù)支持在實例首次啟動時自動運行,部分自定義數(shù)據(jù)格式還支持在Linux實例每次啟動時都運行。詳細(xì)說明,請參見自定義數(shù)據(jù)格式及運行頻率。
使用限制
實例的網(wǎng)絡(luò)類型必須為專有網(wǎng)絡(luò)VPC。
實例必須使用公共鏡像或基于公共鏡像創(chuàng)建的自定義鏡像,且操作系統(tǒng)需為以下類型之一:
Alibaba Cloud Linux、CentOS、CentOS Stream、Ubuntu、SUSE Linux Enterprise Server、Red Hat Enterprise Linux、OpenSUSE、Debian、AlmaLinux、Rocky Linux、Fedora
Windows Server 2008 R2及更高版本
已停售的實例規(guī)格中,僅I/O優(yōu)化實例支持實例自定義數(shù)據(jù)功能,非I/O優(yōu)化實例不支持該功能。更多信息,請參見已停售的實例規(guī)格。
創(chuàng)建實例時使用自定義數(shù)據(jù)
1. 準(zhǔn)備自定義數(shù)據(jù)
初始化工具在實例初始化過程中,通過讀取用戶提供的自定義數(shù)據(jù)以完成自定義配置。Linux實例和Windows實例使用不同的初始化工具。此外,同一初始化工具支持多種自定義數(shù)據(jù)格式。有關(guān)數(shù)據(jù)格式及其運行頻率的詳細(xì)說明,請參見以下內(nèi)容。
自定義數(shù)據(jù)格式及運行頻率
Linux實例
Linux實例使用cloud-init
組件實現(xiàn)實例初始化動作。根據(jù)實例是否首次啟動,執(zhí)行不同的配置內(nèi)容(一些使用較早版本鏡像的實例也采用Upstart Job
進行初始化工作)。
cloud-init
工具支持的自定義數(shù)據(jù)類型包括可直接配置實例的User-Data
和Cloud Config
格式,同時還支持其他用戶數(shù)據(jù)格式,最常見的為include
文件和Gzip
壓縮內(nèi)容。除cloud-init
初始化工具外,一些使用較早版本鏡像的實例也采用Upstart Job
進行初始化工作。
自定義數(shù)據(jù)格式的詳細(xì)說明,可參見cloud-init文檔User-Data Formats。
如果您的User-Data腳本、Cloud Config數(shù)據(jù)或Include文件內(nèi)容的大小超過32 KB,數(shù)據(jù)類型建議選擇Gzip壓縮內(nèi)容。
如果任務(wù)需要在實例每次啟動時都執(zhí)行,數(shù)據(jù)類型建議選擇Cloud Config數(shù)據(jù)或Upstart Job。
User-Data腳本
簡介
User-Data腳本傳入Linux實例后直接作為Shell腳本執(zhí)行,且僅在實例首次啟動時運行一次。
運行頻率
啟動實例:僅在實例首次啟動時運行一次,重啟實例不會再自動運行。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行均以
#!
開頭。User-Data腳本示例
運行自定義腳本
#!/bin/sh echo "Hello World. The time is now $(date -R)!" | tee /root/userdata_test.txt
示例User-Data腳本的效果是在實例首次啟動時,向userdata_test.txt文件寫入系統(tǒng)時間。
自定義實例軟件源、DNS解析配置及時間同步服務(wù)
在創(chuàng)建實例時,您可以通過User-Data腳本自定義實例的軟件源、DNS解析配置及時間同步服務(wù)。以下示例以CentOS Stream 9為例,實際使用中請根據(jù)您的操作系統(tǒng)進行相應(yīng)配置替換。
重要系統(tǒng)會在實例啟動時自動配置默認(rèn)的yum源、NTP服務(wù)和DNS服務(wù),您可以使用實例自定義數(shù)據(jù)更改默認(rèn)的yum源、NTP服務(wù)和DNS服務(wù),但請注意:
如果您自定義了yum源,阿里云官方不再提供yum源相關(guān)支持。
如果您自定義了NTP服務(wù),阿里云官方不再提供相關(guān)時間同步服務(wù)。
#!/bin/sh # Modify DNS echo "nameserve 114.114.114.114" | tee /etc/resolv.conf # Modify yum repo and update cp /etc/yum.repos.d/centos.repo /etc/yum.repos.d/centos.repo.bak cp /etc/yum.repos.d/centos-addons.repo /etc/yum.repos.d/centos-addons.repo.bak sed -i "s@http://mirrors.cloud.aliyuncs.com/centos-stream/@https://mirror.stream.centos.org/@g" /etc/yum.repos.d/centos.repo sed -i "s@http://mirrors.cloud.aliyuncs.com/centos-stream/@https://mirror.stream.centos.org/@g" /etc/yum.repos.d/centos-addons.repo yum update -y # Modify NTP Server echo "server ntp1.aliyun.com" | tee /etc/ntp.conf systemctl restart ntpd.service
說明其中
114.114.114.114
為DNS服務(wù)器地址、https://mirror.stream.centos.org
為CentOS Stream的yum倉庫地址、server ntp1.aliyun.com
為阿里云的NTP服務(wù)器地址,請您根據(jù)實際環(huán)境替換。您也可以使用Cloud Config數(shù)據(jù)更改yum源,但是不夠靈活,不能適配阿里云已對部分yum源進行預(yù)配置的情況,建議使用User-Data腳本。
自定義管理員賬號
Linux實例默認(rèn)使用root用戶作為管理員,您可以使用實例自定義數(shù)據(jù)使用其他用戶作為管理員。
#!/bin/sh useradd test-user echo "test-user ALL=(ALL) NOPASSWD:ALL" | tee -a /etc/sudoers mkdir /home/test-user/.ssh touch /home/test-user/.ssh/authorized_keys echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCRnnUveAis****" | tee -a /home/test-user/.ssh/authorized_keys
說明請使用您的公鑰替換示例中的公鑰ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCRnnUveAis****。
當(dāng)User-Data執(zhí)行遇到問題時,可以通過云助手公共命令ACS-ECS-UserData-Check-for-linux.sh
來獲取失敗相關(guān)的錯誤日志。如果返回有錯誤信息表示腳本執(zhí)行有問題,如果沒有返回錯誤信息表示執(zhí)行沒有報錯,需要排查其他方面。關(guān)于云助手公共命令的更多信息,請參見查看和執(zhí)行公共命令。
Cloud Config數(shù)據(jù)
簡介
在Cloud-init中,定義了一系列的功能模塊,來完成部分需要執(zhí)行的任務(wù)和配置,例如安裝軟件包、設(shè)置網(wǎng)絡(luò)等。執(zhí)行哪些模塊及具體的執(zhí)行邏輯,由Cloud Config數(shù)據(jù)決定,可從vendordata、自定義數(shù)據(jù)、內(nèi)核參數(shù)中獲取。在創(chuàng)建ECS實例時,用戶可自定義Cloud Config數(shù)據(jù),指定需要執(zhí)行的模塊和任務(wù),并作為自定義數(shù)據(jù)提供給實例。實例啟動時,cloud-init會讀取并解析Cloud Config數(shù)據(jù),并按照配置文件中的指示運行對應(yīng)模塊并執(zhí)行配置任務(wù),自動配置和部署ECS實例。
運行頻率
啟動實例:Cloud Config數(shù)據(jù)中的任務(wù)是否會被執(zhí)行,取決于這些任務(wù)對應(yīng)模塊的頻率設(shè)置。各模塊的說明,請參見Modules。
頻率為once-per-instance:僅在實例首次啟動時運行。例如配置的是Apt、Set Passwords等模塊,運行頻率為once-per-instance,重啟實例時不會運行。
頻率為always:實例每次啟動都運行。例如配置的是Bootcmd、Update Etc Hosts等模塊,運行頻率為always,實例每次啟動都運行。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
#cloud-config
,且起始位置不能有空格。必須遵循YAML語法編寫內(nèi)容。
Cloud Config數(shù)據(jù)示例
自定義實例軟件源
在自定義數(shù)據(jù)區(qū)域輸入以下內(nèi)容,以配置自定義實例軟件源。示例中使用Ubuntu鏡像創(chuàng)建實例,如果您使用其他鏡像,請?zhí)鎿Q為對應(yīng)模塊的配置內(nèi)容。
#cloud-config apt: preserve_sources_list: false disable_suites: - $RELEASE-updates - backports - $RELEASE - mysuite primary: - arches: - amd64 - i386 - default uri: http://us.archive.ubuntu.com/ubuntu
配置自動安裝nginx服務(wù)
在自定義數(shù)據(jù)區(qū)域輸入如下內(nèi)容,以配置實例自動安裝nginx服務(wù)。
#cloud-config packages: - nginx runcmd: - systemctl start nginx.service
配置自定義主機名
在自定義數(shù)據(jù)區(qū)域輸入如下內(nèi)容,以自定義設(shè)置主機名。
#cloud-config hostname: my-instance fqdn: my-instance.localdomain
配置自動運行自定義腳本
在自定義數(shù)據(jù)區(qū)域輸入如下內(nèi)容,以配置實例每次啟動時自動運行shell腳本。
#cloud-config bootcmd: - echo "Hello World. The time is now $(date -R)!" | tee /root/userdata_test.txt
Include文件
簡介
通過Include文件指向一個或多個User-Data腳本或Cloud Config數(shù)據(jù)的鏈接,多個鏈接按行分隔。實例啟動時,cloud-init會逐個解析并讀取鏈接里的內(nèi)容。如果在讀取某一個鏈接的內(nèi)容時出錯,則停止讀取剩余的鏈接。
說明您可以通過阿里云對象存儲OSS,上傳User-Data腳本或Cloud Config數(shù)據(jù)、獲取鏈接、設(shè)置鏈接有效期等。具體操作,請參見OSS控制臺快速入門。
運行頻率
啟動實例:執(zhí)行頻率由鏈接里的內(nèi)容決定。例如,鏈接的內(nèi)容為User-Data腳本,則僅在實例首次啟動時運行一次;腳本類型鏈接的內(nèi)容為Cloud Config數(shù)據(jù),則遵循Cloud Config數(shù)據(jù)的運行頻率。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
#include
,且起始位置不能有空格。Include文件示例
#include https://ecs-image-test.oss-cn-hangzhou.aliyuncs.com/userdata/myscript.sh
示例Include文件包含一個腳本鏈接,該腳本為User-Data腳本,則僅在實例首次啟動時運行一次。
說明如果您采用Include文件或Gzip壓縮內(nèi)容的方式,需要使用存儲服務(wù)上傳腳本、獲取腳本鏈接、設(shè)置鏈接有效期等操作,推薦您使用阿里云對象存儲OSS。具體操作,請參見OSS控制臺快速入門。
Gzip壓縮內(nèi)容
簡介
如果您的User-Data腳本、Cloud Config數(shù)據(jù)或Include文件內(nèi)容的大小超過32 KB,可以采用Gzip壓縮內(nèi)容(
.gz
格式)并做成鏈接,然后以Include文件的形式輸入。cloud-init會自動解壓Gzip壓縮內(nèi)容,運行解壓后內(nèi)容的效果和直接傳入后運行沒有區(qū)別。說明您可以通過阿里云對象存儲OSS,上傳User-Data腳本或Cloud Config數(shù)據(jù)、獲取鏈接、設(shè)置鏈接有效期等。具體操作,請參見OSS控制臺快速入門。
運行頻率
啟動實例:由腳本類型和模塊類型決定。例如,Gzip壓縮內(nèi)容鏈接的腳本類型為User-Data腳本,則僅在實例首次啟動時運行一次。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
#include
,且起始位置不能有空格。Gzip壓縮內(nèi)容示例
#include https://ecs-image-test.oss-cn-hangzhou.aliyuncs.com/userdata/myscript.gz
示例Gzip壓縮內(nèi)容表示Include文件包含一個Gzip壓縮內(nèi)容鏈接,cloud-init讀取該Gzip壓縮內(nèi)容后會自動解壓并運行,該Gzip壓縮內(nèi)容由User-Data腳本壓縮得到,所以僅在實例首次啟動時運行一次。
Upstart Job
如需使用Upstart Job,您需要為實例安裝upstart服務(wù),支持采用upstart服務(wù)管理啟動行為的操作系統(tǒng)有CentOS 6、Ubuntu 10/12/14以及Debian 6/7。
簡介
Upstart是一個事件驅(qū)動型的初始化系統(tǒng),Upstart Job是一個配置文件,定義了一個服務(wù)或任務(wù)何時啟動、停止和如何運行。它通常放置在/etc/init/目錄下,文件擴展名為.conf。
運行頻率
啟動實例:實例每次啟動都會自動運行。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
#upstart-job
,且起始位置不能有空格。Upstart Job內(nèi)容示例
#upstart-job description "upstart test" start on runlevel [2345] #在運行級別2、3、4、5執(zhí)行 stop on runlevel [!2345] #在運行級別2、3、4、5以外不執(zhí)行 exec echo "Hello World. The time is now $(date -R)!" | tee /root/output.txt
示例Upstart Job表示在系統(tǒng)進入指定的運行級別時輸出一條包含時間戳的消息,并將該消息記錄到
/root/output.txt
文件中。當(dāng)系統(tǒng)離開這些運行級別時,作業(yè)會停止執(zhí)行。
Windows實例
Windows實例是通過Vminit工具的Plugin_Main_CloudinitUserData插件來運行自定義數(shù)據(jù)腳本,該插件僅支持在實例首次啟動時運行,該插件支持Bat和PowerShell兩種腳本。
bat腳本
運行頻率
啟動實例:實例首次啟動時運行一次,重啟實例不會自動運行。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
[bat]
,且起始位置不能有空格。只能輸入半角字符,不能有多余字符。
寫入數(shù)據(jù)的路徑不能為
C:\Users
目錄,否則自定義數(shù)據(jù)會執(zhí)行失敗。說明在Windows系統(tǒng)中,
C:\Users
及其子目錄是用戶配置文件和數(shù)據(jù)的默認(rèn)存儲位置,需要登錄系統(tǒng)后才可以訪問,而在系統(tǒng)初始化執(zhí)行userdata階段實際還未登錄系統(tǒng),所以寫入數(shù)據(jù)到C:\Users
目錄會失敗。
Bat腳本示例
運行自定義腳本
[bat] echo "bat test" > C:\userdata_test.txt
示例Bat腳本的效果是在實例首次啟動時向userdata_test.txt文件寫入內(nèi)容
"bat test"
。
PowerShell腳本
運行頻率
啟動實例:實例首次啟動時運行一次,重啟實例不會自動運行。
更換操作系統(tǒng):自動運行。
重新初始化系統(tǒng)盤:自動運行。
重要以下情況不會自動運行腳本:
如果更換操作系統(tǒng)使用的是自定義鏡像且來源于原實例,更換操作系統(tǒng)時會判斷實例不是初次啟動,因此不會自動運行腳本。
如果創(chuàng)建使用的是自定義鏡像,則創(chuàng)建實例時系統(tǒng)盤就有數(shù)據(jù),初始化系統(tǒng)盤時會判斷實例不是首次啟動,因此不會自動運行腳本。
格式
首行為
[powershell]
,且起始位置不能有空格。只能輸入半角字符,不能有多余字符。
寫入數(shù)據(jù)的路徑不能為
C:\Users
目錄,否則自定義數(shù)據(jù)會執(zhí)行失敗。說明在Windows系統(tǒng)中,
C:\Users
及其子目錄是用戶配置文件和數(shù)據(jù)的默認(rèn)存儲位置,需要登錄系統(tǒng)后才可以訪問,而在系統(tǒng)初始化執(zhí)行userdata階段實際還未登錄系統(tǒng),所以寫入數(shù)據(jù)到C:\Users
目錄會失敗。
PowerShell腳本示例
運行自定義腳本
[powershell] write-output "powershell test" | Out-File C:\userdata_test.txt
示例PowerShell腳本的效果是在實例首次啟動時向userdata_test.txt文件寫入內(nèi)容
powershell test
。
2. 創(chuàng)建實例時使用自定義數(shù)據(jù)
通過控制臺創(chuàng)建實例
在實例購買頁展開高級選項區(qū)域,在自定義數(shù)據(jù)區(qū)域輸入實例自定義數(shù)據(jù)。
重要如果實例自定義數(shù)據(jù)已進行Base64編碼,請勾選輸入已采用Base64編碼,且在進行Base64編碼前自定義數(shù)據(jù)內(nèi)容的大小不能超過32 KB。否則,無需勾選,系統(tǒng)會自動對內(nèi)容進行Base64編碼。
通過API創(chuàng)建實例
如果您通過API方式創(chuàng)建實例,請在RunInstances - 批量創(chuàng)建ECS實例或CreateInstance - 創(chuàng)建ECS實例接口指定
UserData
字段。
3. 驗證自定義數(shù)據(jù)運行效果
您需要結(jié)合自定義腳本的實際內(nèi)容進行運行效果的驗證,以下以在Linux實例中傳入如下User-Data腳本為例,為您演示如何進行腳本運行效果驗證。
#!/bin/sh
echo "Hello World. The time is now $(date -R)!" | tee /root/userdata_test.txt
該示例中,User-Data腳本的效果是在實例首次啟動時,向userdata_test.txt文件寫入系統(tǒng)時間。為驗證該腳本的執(zhí)行效果,您可以運行cat userdata_test.txt
命令來查看效果,系統(tǒng)已經(jīng)向userdata_test.txt
文件寫入系統(tǒng)時間。
當(dāng)User-Data執(zhí)行遇到問題時,可以通過云助手公共命令ACS-ECS-UserData-Check-for-linux.sh
來獲取失敗相關(guān)的錯誤日志。如果返回有錯誤信息表示腳本執(zhí)行有問題,如果沒有返回錯誤信息表示執(zhí)行沒有報錯,需要排查其他方面。關(guān)于云助手公共命令的更多信息,請參見查看和執(zhí)行公共命令。
其他操作
查看已有實例自定義數(shù)據(jù)
自定義數(shù)據(jù)傳入實例后,您可以通過元數(shù)據(jù)服務(wù)或控制臺查看實例的自定義數(shù)據(jù)信息。
通過元數(shù)據(jù)服務(wù)獲取(加固模式)
Linux實例
TOKEN=`curl -X PUT "http://100.100.100.200/latest/api/token" -H "X-aliyun-ecs-metadata-token-ttl-seconds:180"` curl -H "X-aliyun-ecs-metadata-token: $TOKEN" http://100.100.100.200/latest/user-data
Windows實例
$token = Invoke-RestMethod -Headers @{"X-aliyun-ecs-metadata-token-ttl-seconds" = "180"} -Method PUT -Uri http://100.100.100.200/latest/api/token Invoke-RestMethod -Headers @{"X-aliyun-ecs-metadata-token" = $token} -Method GET -Uri http://100.100.100.200/latest/user-data
在上述示例中,設(shè)置的token有效期為180秒,實際應(yīng)用時可根據(jù)具體使用場景進行調(diào)整。
本示例使用元數(shù)據(jù)服務(wù)的加固模式來獲取元數(shù)據(jù),關(guān)于元數(shù)據(jù)服務(wù)獲取信息的更多內(nèi)容,請參見通過元數(shù)據(jù)服務(wù)從ECS實例內(nèi)部獲取實例屬性等信息。
關(guān)于元數(shù)據(jù)的更多說明,請參見實例元數(shù)據(jù)。
通過控制臺獲取
確保實例處于已停止狀態(tài)。
重要如果實例的計費方式為按量付費、網(wǎng)絡(luò)類型為專有網(wǎng)絡(luò),停止實例時,停止模式建議選擇普通停機模式,選擇節(jié)省停機模式會因計算資源(vCPU和內(nèi)存)被回收,再次啟動實例時可能因為庫存不足導(dǎo)致啟動失敗。更多信息,請參見節(jié)省停機模式。
在實例頁面,選擇
,然后在用戶數(shù)據(jù)區(qū)域查看已設(shè)置的自定義數(shù)據(jù)。
通過調(diào)用API獲取
您可以通過調(diào)用DescribeUserData接口查詢一臺ECS實例的自定義數(shù)據(jù)。更多信息,請參見DescribeUserData。
修改已有實例自定義數(shù)據(jù)
如需修改已有實例的自定義數(shù)據(jù),您可以通過控制臺進行操作。
確保實例處于已停止狀態(tài)。
重要如果實例的計費方式為按量付費、網(wǎng)絡(luò)類型為專有網(wǎng)絡(luò),停止實例時,停止模式建議選擇普通停機模式,選擇節(jié)省停機模式會因計算資源(vCPU和內(nèi)存)被回收,再次啟動實例時可能因為庫存不足導(dǎo)致啟動失敗。更多信息,請參見節(jié)省停機模式。
在實例頁面,選擇
,然后在用戶數(shù)據(jù)區(qū)域輸入自定義數(shù)據(jù)。
修改已有實例的自定義數(shù)據(jù)之后,在啟動實例后自定義數(shù)據(jù)腳本是否被執(zhí)行,取決于自定義數(shù)據(jù)的格式及運行頻率,請您在修改自定義數(shù)據(jù)之前明確您的需求,更多信息,請參見自定義數(shù)據(jù)格式及運行頻率。
相關(guān)文檔
您也可以通過彈性伸縮的自定義數(shù)據(jù)功能,讓多臺ECS實例在啟動時自動執(zhí)行配置的腳本或命令,確保ECS實例配置的一致性,簡化了運維工作。更多信息,請參見使用實例自定義數(shù)據(jù)自動配置ECS實例。
如果希望服務(wù)或腳本因程序異常、服務(wù)器重啟、掉電等被中斷時,及時恢復(fù)運行,云助手插件
ecs-tool-servicekeepalive
實現(xiàn)。具體操作,請參見自動恢復(fù)服務(wù)。如果您希望了解更多關(guān)于管理實例初始化的相關(guān)信息,請參見實例初始化。