实例自定义数据是一种自定义实例启动行为及传入数据的功能。
背景信息
Windows实例和Linux实例都支持实例自定义数据功能,该主要有两种用途:
- 作为实例自定义脚本,在启动实例时执行。
- 作为普通数据,将一定的信息传入实例中,您可以在实例中引用这些数据。
生成Linux实例自定义数据
在Linux实例中,您可以通过多种脚本配置实例自定义数据,包括User-Data脚本、Cloud Config脚本、Include文件、Gzip压缩脚本、 Upstart
Job脚本等。Linux实例自定义数据功能采用开源的cloud-init架构,以实例元数据为数据来源,自动化配置Linux实例属性。更多详情,请参见cloud-init文档User-Data Formats。
如果您制作的是Include文件或Gzip压缩脚本,需要上传脚本文件到可用的存储服务中并获取链接,并设置链接有效期为您的期望值。推荐您使用阿里云对象存储OSS制作链接,更多详情,请参见OSS文档上传文件和设置生命周期规则。
生成Linux实例自定义数据的操作步骤如下:
- 使用编辑器(例如,Notepad++)创建文本文件。
- 在文本文件中编辑实例自定义数据的相关脚本。
脚本第一行必须满足脚本类型的格式要求。不同脚本的格式要求以及示例如下:
- 调试脚本文件以确认内容正确。
生成Windows实例自定义数据
Windows实例自定义数据由ECS自主研发,为Windows实例提供运行初始化脚本的能力。Windows实例自定义数据支持Bat批处理程序和PowerShell脚本。
生成Windows实例自定义数据的操作步骤如下:
- 使用编辑器(例如,Notepad++)创建文本文件。
- 在文本文件中编辑实例自定义数据的相关脚本。
脚本第一行必须满足脚本类型的格式要求。不同脚本的格式要求以及示例如下:
- Bat批处理程序具有以下特点:
- 首行固定为
[bat]
,且页首不能有空格。
- 在Base64编码前,自定义数据内容必须小于16 KB。
- 只能输入半角字符,不能有多余字符。
Bat批处理程序示例如下:
[bat]
echo "bat test" > c:\1.txt
实例创建完成后,连接实例查看执行结果,在
C:\盘添加了
1.txt文本文件。
- PowerShell具有以下特点:
- 首行固定为
[powershell]
,且页首不能有空格。
- 在Base64编码前,自定义数据内容必须小于16 KB。
- 只能输入半角字符,不能有多余字符。
PowerShell示例如下:
[powershell]
write-output "Powershell Test" | Out-File C:\2.txt
- 调试脚本文件以确认内容正确。
后续步骤
脚本准备完成后,您可以使用脚本配置实例自定义数据。具体操作,请参见配置实例自定义数据。