上云无忧 > 文档中心 > 腾讯云云服务器CVM - 设置自定义数据(Linux 云服务器)
云服务器CVM
腾讯云云服务器CVM - 设置自定义数据(Linux 云服务器)

文档简介:
操作场景: 在创建云服务器时,您可以通过指定自定义数据,进行配置实例。当云服务器首次启动时,自定义数据将以文本的方式传递到云服务器中,并执行该文本。如果您一次购买多台云服务器,自定义数据会在所有的云服务器首次启动时运行该文本。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

操作场景

在创建云服务器时,您可以通过指定自定义数据,进行配置实例。当云服务器首次启动时,自定义数据将以文本的方式传递到云服务器中,并执行该文本。如果您一次购买多台云服务器,自定义数据会在所有的云服务器首次启动时运行该文本。
本文以 Linux 云服务器首次启动时,通过传递 Shell 格式的脚本为例。

注意事项

支持自定义数据的 Linux 操作系统包括:
64位操作系统:CentOS 6.8 64位及以上、Ubuntu Server 14.04.1 LTS 64位及以上、suse42.3x86_64
32位操作系统:CentOS 6.8 32位及以上
仅限首次启动云服务器时,通过传递文本执行命令。
传递的文本必须经过 Base64 编码。请在 Linux 环境下进行编码,避免格式不兼容
使用 root 账号执行用户数据输入的文本,在脚本中不使用 sudo 命令。您创建的任何文件都将归 root 所有,如果您需要非根用户具有文件访问权,请在脚本中修改权限。
在启动时,执行自定义数据中指定的任务会增加启动服务器所需的时间。建议您等待几分钟,并在任务完成后,测试任务是否已成功执行。
本示例中,Shell 脚本必须以#!字符以及指向要读取脚本的解释器的路径(通常为 /bin/bash)开头。

操作步骤

编写 Shell 脚本

1. 执行以下命令,创建一个名称 “script_text.sh” 的 Shell 脚本文件。
		
vi script_text.sh
2. i 切换至编辑模式,参考以下内容,写入并保存 “script_text.sh” 脚本文件。
3. 按 ESC 输入 :wq 后,按 Enter 保存修改。
		
#!/bin/bash
echo "Hello Tencent Cloud."
注意
Shell 脚本必须以#!字符以及指向要读取脚本的解释器的路径(通常为 /bin/bash)开头。有关 Shell 脚本的更多介绍,请参阅 Linux 文档项目 (tldp.org) 的 BASH 编程方法

使用 Base64 编码脚本文件

1. 执行以下命令,对 “script_text.sh” 脚本文件进行 Base64 编码操作。
		
# 对脚本进行 Base64 编码操作
base64 script_text.sh
返回以下信息:
		
# 编码之后的结果
IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==
2. 执行以下命令,验证对脚本进行 Base64 编码的返回结果。
		
# 对返回的结果进行Base64解码,以验证是否为需要执行的命令
echo "IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==" | base64 -d

传递文本

我们提供多种启动实例的方式,主要分为以下两种情况。请根据您的实际需求,进行选择:
通过官网或控制台传递
通过 API 传递
1.
参见
创建实例 购买实例,并在2.设置网络和主机步骤中的其他设置中单击高级设置,如下图所示:

2. 高级设置自定义数据文本框中,输入 使用 Base64 编码脚本文件 返回的编码结果。如下图所示: 例如,使用 Base64 编码 script_text 脚本文件返回的结果为 IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==

按照界面信息逐步操作,完成创建云服务器。
说明
腾讯云服务器将通过开源软件 cloud-init 执行脚本。有关 cloud-init 的更多内容,请参见 cloud-init 官方网站
当您通过
API 创建
云服务器时,可以将 使用 Base64 编码脚本文件 中返回的编码结果赋值给 RunInstances 接口的 UserData 参数,以此来传递文本。 例如,创建一个带 UserData 参数的云服务器的请求参数,其示例如下:
							
https://cvm.tencentcloudapi.com/?Action=RunInstances
&Version=2017-03-12
&Placement.Zone=ap-guangzhou-2
&ImageId=img-pmqg1cw7
&UserData=IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8gVGVuY2VudCBDbG91ZC4iCg==
&<公共请求参数>

查看执行日志

成功创建服务器后,您可执行以下命令,查看脚本执行日志:
					
cat /var/log/cloud-init-output.log
相似文档
  • 操作场景: 在创建云服务器时,您可以通过指定自定义数据,进行配置实例。当云服务器首次启动时,自定义数据将以文本的方式传递到云服务器中,并执行该文本。如果您一次购买多台云服务器,自定义数据会在所有的云服务器首次启动时运行该文本。
  • 操作场景: 本文介绍如何激活 Windows 云服务器的操作系统。 说明: 此文档只针对腾讯云提供的 Windows Server 公共镜像,自定义镜像或外部导入镜像不能采用本文的激活方式。
  • 腾讯云云服务器使用 KMS 方式对 Windows 服务器进行授权。 注意: 此文档只针对腾讯云提供的 Windows Server 公共镜像,自定义镜像或外部导入镜像不能采用本文的激活方式。
  • 操作场景: 本文档以 Windows Server 2012 操作系统为例,指导您更新 Windows 补丁。
  • 腾讯云 Windows 实例的关机过程如下: 1. 母机上的 libvirt 将 shutdown 命令通过 qmp 协议传给 qemu 组件。 2. qemu 组件将 shutdown 命令通过注入 acpi 中断方式传入子机(相关细节可阅读 vmcs 有关的技术文档)。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部