创建一个ECS实例启动模板,简称模板。实例启动模板能免除每次创建实例时都需要填入大量配置参数。
接口说明
调用 CreateLaunchTemplate 创建模板后,会自动生成该模板的一个默认版本,版本号为 1,您后续可以基于该模板创建多个版本(CreateLaunchTemplateVersion),版本号从 1 开始顺序递增。如果您在创建实例( RunInstances )时不指定模板版本号,会采用默认版本。
实例启动模板的版本中包含用于创建实例的相关配置,例如实例所属地域、镜像 ID、实例规格、安全组 ID 和公网带宽等。如果版本中没有指定某一实例配置,您需要在创建实例时为实例指定该配置。
调用该接口时,您需要注意:
-
每个账号在一个地域最多能创建 30 个实例启动模板,且每个模板最多能有 30 个版本。
-
实例启动模板的参数大多数为可选参数。创建模板时,阿里云不会验证模板中参数取值的存在性和有效性。只会在真正创建实例时校验参数取值的有效性。
-
如果实例启动模板中设置了某一配置,创建实例( RunInstances )时就无法过滤掉该配置。例如,如果模板设置了
HostName=LocalHost,RunInstances中HostName取值为空时,实例的主机名依然是LocalHost。如果您想覆盖HostName=LocalHost这一配置,可以在RunInstances中取HostName=MyHost或其他参数值。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
调试
授权信息
|
操作 |
访问级别 |
资源类型 |
条件关键字 |
关联操作 |
|
ecs:CreateLaunchTemplate |
create |
*LaunchTemplate
|
无 | 无 |
请求参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| RegionId |
string |
是 |
地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。 |
cn-hangzhou |
| TemplateTag |
array<object> |
否 |
启动模版自身的标签对信息。 说明
当前仅支持通过 API 创建和查询启动模板的标签,控制台无法创建或查看。 |
|
|
object |
否 |
启动模版自身的标签对信息。 |
||
| Key |
string |
否 |
启动模板的标签键。N 的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持 128 个字符,不能以 |
TestKey |
| Value |
string |
否 |
启动模板的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以 |
TestValue |
| RegionId |
string |
是 |
地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。 |
cn-hangzhou |
| LaunchTemplateName |
string |
是 |
实例启动模板名称。长度为 2~128 个英文或中文字符。必须以大小写字母或中文开头,不能以 |
testLaunchTemplateName |
| VersionDescription |
string |
否 |
实例启动模板的版本描述。长度为 2~256 个英文或中文字符,不能以 |
testVersionDescription |
| ImageId |
string |
否 |
镜像 ID,启动实例时选择的镜像资源。您可以通过 DescribeImages 查询您可以使用的镜像资源。 |
win2008r2_64_ent_sp1_en-us_40G_alibase_20170915.vhd |
| ImageOwnerAlias |
string |
否 |
镜像来源。取值范围:
|
system |
| PasswordInherit |
boolean |
否 |
是否使用镜像预设的密码。 说明
使用该参数时,Password 参数必须为空,同时您需要确保使用的镜像已经设置了密码。 |
false |
| InstanceType |
string |
否 |
实例的资源规格。更多信息,请参见实例规格族,也可以调用 DescribeInstanceTypes 接口获得最新的规格表。 |
ecs.g5.large |
| SecurityGroupId |
string |
否 |
指定新创建实例所属于的安全组 ID。同一个安全组内的实例之间可以互相访问,一个安全组最多能管理 1000 台实例。 说明
不支持同时指定 |
sg-bp15ed6xe1yxeycg**** |
| VpcId |
string |
否 |
专有网络 VPC ID。 |
vpc-bp12433upq1y5scen**** |
| VSwitchId |
string |
否 |
创建 VPC 类型实例时需要指定虚拟交换机 ID。 |
vsw-bp1s5fnvk4gn2tws0**** |
| InstanceName |
string |
否 |
实例名称。长度为 2~128 个字符,支持 Unicode 中 letter 分类下的字符(其中包括英文、中文和数字等)。可以包含半角冒号(:)、下划线(_)、半角句号(.)或者短划线(-)。默认值为实例的 创建多台 ECS 实例时,您可以批量设置有序的实例名称,并且可以包含方括号([])和逗号(,)。具体操作,请参见批量设置有序的实例名称或主机名称。 |
k8s-node-[1,4]-alibabacloud |
| Description |
string |
否 |
实例描述。长度为 2~256 个英文或中文字符,不能以 |
testECSDescription |
| InternetMaxBandwidthIn |
integer |
否 |
公网入带宽最大值,单位为 Mbit/s。取值范围:
|
10 |
| InternetMaxBandwidthOut |
integer |
否 |
公网出带宽最大值,单位为 Mbit/s。取值范围为 0~100。 |
10 |
| HostName |
string |
否 |
云服务器的主机名。
|
testHostName |
| ZoneId |
string |
否 |
实例所属的可用区 ID。 |
cn-hangzhou-g |
| SystemDisk.Category |
string |
否 |
系统盘的云盘种类。取值范围:
已停售的实例规格且非 I/O 优化实例默认值为 cloud,否则默认值为 cloud_efficiency。 |
cloud_ssd |
| SystemDisk.Size |
integer |
否 |
系统盘大小,单位为 GiB。取值范围:
该参数的取值必须大于或者等于 max{20, ImageSize}。 |
40 |
| SystemDisk.DiskName |
string |
否 |
系统盘名称。长度为 2~128 个英文或中文字符。必须以大小写字母或中文开头,不能以 |
testSystemDiskName |
| SystemDisk.Description |
string |
否 |
系统盘描述。长度为 2~256 个英文或中文字符,不能以 |
testSystemDiskDescription |
| SystemDisk.Iops |
integer |
否 |
说明
该参数正在邀测中,暂未开放使用。 |
null |
| SystemDisk.PerformanceLevel |
string |
否 |
创建 ESSD 云盘作为系统盘使用时,设置云盘的性能等级。取值范围:
有关如何选择 ESSD 性能等级,请参见 ESSD 云盘。 |
PL0 |
| SystemDisk.DeleteWithInstance |
boolean |
否 |
系统盘是否随实例释放。取值范围:
默认值:true。 |
true |
| SystemDisk.AutoSnapshotPolicyId |
string |
否 |
系统盘采用的自动快照策略 ID。 |
sp-gc7c37d4ylw7mtnk**** |
| SystemDisk.ProvisionedIops |
integer |
否 |
ESSD AutoPL 云盘预配置读写 IOPS。取值范围:0~min{50000, 1000*容量-基准性能}。 基准性能=min{1,800+50*容量, 50,000} 说明
当 DiskCategory 取值为 cloud_auto 时才支持设置该参数。更多信息,请参见ESSD AutoPL 云盘和修改 ESSD AutoPL 云盘预配置信息。 |
50000 |
| SystemDisk.BurstingEnabled |
boolean |
否 |
是否开启 Burst(性能突发)。取值范围:
|
true |
| IoOptimized |
string |
否 |
是否为 I/O 优化实例。取值范围:
|
optimized |
| InstanceChargeType |
string |
否 |
实例的计费方式。取值范围:
|
PrePaid |
| Period |
integer |
否 |
购买资源的时长,单位为:月。当创建实例时,参数 |
1 |
| InternetChargeType |
string |
否 |
网络计费方式。取值范围:
说明
按使用流量计费模式下的出入带宽峰值都是带宽上限,不作为业务承诺指标。当出现资源争抢时,带宽峰值可能会受到限制。如果您的业务需要有带宽的保障,请使用按固定带宽计费模式。 |
PayByTraffic |
| EnableVmOsConfig |
boolean |
否 |
是否启用实例操作系统配置。 说明
该参数即将被弃用,为提高兼容性,请尽量使用其他参数。 |
false |
| NetworkType |
string |
否 |
实例网络类型。取值范围:
|
vpc |
| UserData |
string |
否 |
实例自定义数据,需要以 Base64 方式编码,原始数据最多为 32 KB。 |
ZWNobyBoZWxsbyBlY3Mh |
| KeyPairName |
string |
否 |
密钥对名称。
|
testKeyPairName |
| RamRoleName |
string |
否 |
实例 RAM 角色名称。您可以使用 RAM API ListRoles 查询您已创建的实例 RAM 角色。 |
testRamRoleName |
| AutoReleaseTime |
string |
否 |
自动释放时间。按照ISO 8601标准表示,并需要使用 UTC 时间。格式为:yyyy-MM-ddTHH:mm:ssZ。
|
2018-01-01T12:05:00Z |
| SpotStrategy |
string |
否 |
按量实例的抢占策略。当参数
|
NoSpot |
| SpotPriceLimit |
number |
否 |
设置实例的每小时最高价格。支持最大 3 位小数,参数 |
0.97 |
| SpotDuration |
integer |
否 |
抢占式实例的保留时长,单位为小时。 默认值:1。取值范围:
实例回收前 5 分钟阿里云会通过 ECS 系统事件向您发送通知。抢占式实例按秒计费,建议您结合具体任务执行耗时来选择合适的保留时长。 说明
当 SpotStrategy 值为 SpotWithPriceLimit 或 SpotAsPriceGo 时该参数生效。 |
1 |
| ResourceGroupId |
string |
否 |
实例、块存储和弹性网卡所在的企业资源组 ID。 |
rg-bp67acfmxazb4p**** |
| TemplateResourceGroupId |
string |
否 |
启动模板所在的企业资源组 ID。 |
rg-bp67acfmxazb4p**** |
| SecurityEnhancementStrategy |
string |
否 |
是否为操作系统开启安全加固。取值范围:
|
Deactive |
| PrivateIpAddress |
string |
否 |
实例私网 IP 地址。 专有网络 VPC 类型 ECS 实例设置私网 IP 地址时,必须从虚拟交换机( |
10.1.**.** |
| DeploymentSetId |
string |
否 |
部署集 ID。 |
ds-bp1brhwhoqinyjd6**** |
| Ipv6AddressCount |
integer |
否 |
为主网卡指定随机生成的 IPv6 地址数量。取值范围为 1~10。 |
1 |
| DataDisk |
array<object> |
否 |
数据盘信息列表。 |
|
|
object |
否 |
数据盘信息列表。 |
||
| PerformanceLevel |
string |
否 |
创建 ESSD 云盘作为数据盘使用时,设置云盘的性能等级。N 的取值必须和
有关如何选择 ESSD 性能等级,请参见 ESSD 云盘。 |
PL1 |
| Description |
string |
否 |
数据盘描述。长度为 2~256 个英文或中文字符,不能以 |
testDataDiskDescription |
| SnapshotId |
string |
否 |
创建数据盘 N 使用的快照。N 的取值范围为 1~16。指定参数 说明
不能使用早于 2013 年 7 月 15 日(含)创建的快照,请求会报错被拒绝。 |
s-bp17441ohwka0yuh**** |
| Size |
integer |
否 |
第 N 个数据盘的容量大小,N 的取值范围为 1~16,内存单位为 GiB。取值范围:
该参数的取值必须大于等于参数 |
2000 |
| Device |
string |
否 |
数据盘的挂载点。挂载的数据盘数量不同,挂载点的命名不同:
说明
该参数仅用于全镜像(整机镜像)场景。您可以通过将此参数设置为全镜像中数据盘对应的挂载点,并修改对应的 |
/dev/xvdb |
| DiskName |
string |
否 |
数据盘名称。长度为 2~128 个英文或中文字符。必须以大小写字母或中文开头,不能以 |
testDataDiskName |
| Category |
string |
否 |
数据盘 N 的云盘种类。取值范围:
对于 I/O 优化实例,默认值为 cloud_efficiency。对于非 I/O 优化实例,默认值为 cloud。 参数默认值说明:
|
cloud_ssd |
| DeleteWithInstance |
boolean |
否 |
表示数据盘是否随实例释放。取值范围:
默认值:true。 |
true |
| Encrypted |
string |
否 |
数据盘是否加密。 |
false |
| AutoSnapshotPolicyId |
string |
否 |
数据盘采用的自动快照策略 ID。 |
sp-m5e7fa9ute44ssa**** |
| ProvisionedIops |
integer |
否 |
ESSD AutoPL 云盘预配置读写 IOPS。取值范围:0~min{50000, 1000*容量-基准性能}。 基准性能=min{1,800+50*容量, 50,000} 说明
当 DiskCategory 取值为 cloud_auto 时才支持设置该参数。更多信息,请参见ESSD AutoPL 云盘和修改 ESSD AutoPL 云盘预配置信息。 |
50000 |
| BurstingEnabled |
boolean |
否 |
是否开启 Burst(性能突发)。取值范围:
|
true |
| KMSKeyId |
string |
否 |
数据盘对应的 KMS 密钥 ID。 |
0e478b7a-4262-4802-b8cb-00d**** |
| NetworkInterface |
array<object> |
否 |
弹性网卡信息。 |
|
|
object |
否 |
弹性网卡信息。 |
||
| VSwitchId |
string |
否 |
弹性网卡所属的虚拟交换机 ID。 您需要注意:
|
vsw-bp1s5fnvk4gn2tws0**** |
| NetworkInterfaceName |
string |
否 |
弹性网卡名称。 您需要注意:
|
testEniName |
| Description |
string |
否 |
辅助弹性网卡描述信息。长度为 2~256 个英文或中文字符,不能以 |
testEniDescription |
| SecurityGroupId |
string |
否 |
弹性网卡所属的安全组 ID。 您需要注意:
|
sg-bp15ed6xe1yxeycg**** |
| PrimaryIpAddress |
string |
否 |
添加一张弹性网卡并设置主 IP 地址。 您需要注意:
说明
创建 ECS 实例时,您最多能添加一张辅助网卡。实例创建成功后,您可以调用 CreateNetworkInterface 和 AttachNetworkInterface 添加更多的辅助网卡。 |
192.168.**.** |
| SecurityGroupIds |
array |
否 |
弹性网卡所属的一个或多个安全组 ID。
您需要注意:
|
sg-bp67acfmxazb4p**** |
|
string |
否 |
弹性网卡所属的一个或多个安全组 ID。
您需要注意:
|
sg-bp67acfmxazb4p**** |
|
| InstanceType |
string |
否 |
弹性网卡类型。N 的取值范围为 1~2,设置 1 个弹性网卡时,支持设置 1 个主网卡或 1 个辅助网卡;设置 2 个弹性网卡时,仅支持同时设置 1 个主网卡和 1 个辅助网卡。 参数取值范围:
默认值:Secondary。 |
Secondary |
| NetworkInterfaceTrafficMode |
string |
否 |
主网卡的通讯模式。参数取值范围:
|
Standard |
| DeleteOnRelease |
boolean |
否 |
释放实例时是否保留网卡。取值范围:
默认值:true。 说明
该参数只对辅助网卡生效。 |
true |
| Tag |
array<object> |
否 |
通过该模板的版本创建的实例、云盘和主网卡的标签信息。 |
|
|
object |
否 |
通过该模板的版本创建的实例、云盘和主网卡的标签信息。 |
||
| Key |
string |
否 |
通过该模板的版本创建的实例、云盘和主网卡的标签键。N 的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持 128 个字符,不能以 aliyun 和 acs:开头,不能包含 http://或 https://。 |
TestKey |
| Value |
string |
否 |
通过该模板的版本创建的实例、云盘和主网卡的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能包含 http://或者 https://。 |
TestValue |
| SecurityGroupIds |
array |
否 |
实例加入的一个或多个安全组。N 的取值范围与实例能够加入安全组配额有关,更多信息,请参见使用限制。 说明
不支持同时指定 |
sg-bp15ed6xe1yxeycg7**** |
|
string |
否 |
实例加入的一个或多个安全组。N 的取值范围与实例能够加入安全组配额有关,更多信息,请参见使用限制。 说明
不支持同时指定 |
sg-bp15ed6xe1yxeycg7**** |
|
| SystemDisk.Encrypted |
string |
否 |
系统盘是否加密。取值范围:
默认值:false。 说明
中国香港 D 可用区、新加坡 A 可用区暂不支持在创建实例时加密系统盘。 |
false |
| DeletionProtection |
boolean |
否 |
实例释放保护属性,指定是否支持通过控制台或 API( DeleteInstance )释放实例。取值范围:
默认值:false。 说明
该属性仅适用于按量付费实例,且只能限制手动释放操作,对系统释放操作不生效。 |
false |
| CreditSpecification |
string |
否 |
设置突发性能实例的运行模式。取值范围: |
Standard |
| AutoRenew |
boolean |
否 |
是否要自动续费。取值范围:
默认值:false。 说明
当参数 |
true |
| AutoRenewPeriod |
integer |
否 |
单次自动续费的续费时长。取值范围: PeriodUnit=Month 时:1、2、3、6、12、24、36、48、60。 默认值:1。 |
1 |
| PeriodUnit |
string |
否 |
包年包月计费方式的时长单位。取值范围: Month(默认)。 |
Month |
| HttpEndpoint |
string |
否 |
是否启用实例元数据的访问通道。取值范围:
默认值:enabled。 说明
有关实例元数据的信息,请参见实例元数据概述。 |
enabled |
| HttpTokens |
string |
否 |
访问实例元数据时是否强制使用加固模式(IMDSv2)。取值范围:
默认值:optional。 说明
有关访问实例元数据的模式,请参见实例元数据概述。 |
optional |
| HttpPutResponseHopLimit |
integer |
否 |
说明
该参数暂未开放使用。 |
3 |
| SystemDisk.KMSKeyId |
string |
否 |
系统盘对应的 KMS 密钥 ID。 |
0e478b7a-4262-4802-b8cb-00d3fb40**** |
| ImageOptions |
object |
否 |
镜像相关属性信息。 |
|
| LoginAsNonRoot |
boolean |
否 |
使用该镜像的实例是否支持使用 ecs-user 用户登录。 可能值:
|
false |
| SecurityOptions |
object |
否 |
安全选项。 |
|
| TrustedSystemMode |
string |
否 |
可信系统模式。取值:vTPM。 目前,可信系统模式支持的实例规格族:
当您创建以上实例规格族的 ECS 实例时,需要设置该参数。具体说明如下:
说明
如果您在创建实例的时候指定其为可信实例,那么当您更换系统盘时只能使用支持可信系统的镜像。 关于可信系统的更多信息,请参见安全增强型实例可信功能概述。 |
vTPM |
返回参数
|
名称 |
类型 |
描述 |
示例值 |
|
object |
|||
| LaunchTemplateId |
string |
实例启动模板 ID。 |
lt-m5eiaupmvm2op9d**** |
| RequestId |
string |
请求 ID。 |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
| LaunchTemplateVersionNumber |
integer |
实例启动模板版本号。 |
20 |
示例
正常返回示例
JSON格式
{
"LaunchTemplateId": "lt-m5eiaupmvm2op9d****",
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
"LaunchTemplateVersionNumber": 20
}
错误码
|
HTTP status code |
错误码 |
错误信息 |
描述 |
|---|---|---|---|
| 400 | InvalidRegion.NotExist | %s | 指定的地域不存在,请确认参数是否正确。 |
| 400 | MissingParameter | %s | 缺失参数,请检查参数是否完整。 |
| 400 | InvalidParameter | %s | 无效的参数。 |
| 400 | InvalidLaunchTemplateName.Malformed | The specified parameter LaunchTemplateName is not valid. | 指定的参数 LaunchTemplateName 无效。 |
| 400 | InvalidDescription.Malformed | The specified parameter "VersionDescription" is not valid. | |
| 400 | InvalidUserData.SizeExceeded | %s | 您设置的数据大小超过了允许的最大值。 |
| 400 | InvalidUserData.Base64FormatInvalid | %s | 您设置的数据格式不正确,请选择规定的格式数据。 |
| 400 | Duplicate.TagKey | The Tag.N.Key contain duplicate key. | 标签中存在重复的键,请保持键的唯一性。 |
| 400 | InvalidTagKey.Malformed | The specified Tag.n.Key is not valid. | 指定的标签键参数有误。 |
| 400 | InvalidTagValue.Malformed | The specified Tag.n.Value is not valid. | 指定的标签值参数有误。 |
| 400 | InvalidHostName.Malformed | The specified parameter "HostName" is not valid. | 指定的参数 HostName 不合法 |
| 400 | InvalidParams.CreateEniParams | %s | |
| 500 | InternalError | The request processing has failed due to some unknown error. | |
| 403 | LaunchTemplateLimitExceed | %s | 超出启动模版数量限制。 |
| 403 | LaunchTemplateName.Duplicated | %s | 指定的启动模版名称已经存在。 |
| 403 | QuotaExceed.Tags | %s | 标签数超过可以配置的最大数量。%s为变量,将根据调用API的实际情况动态返回错误信息。 |
| 404 | InvalidResourceGroup.NotFound | The ResourceGroup provided does not exist in our records. | 资源组并不在记录中。 |
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。