如何为ECS资源指定镜像
更新时间:2020-05-28 14:04:31
本文为您介绍如何通过资源编排服务ROS(Resource Orchestration Service)为ECS资源指定镜像。
前提条件
进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册。
背景信息
当您使用以下四种资源类型创建ECS时,需要为相应的ECS资源指定镜像:- ALIYUN::ECS::Instance
- ALIYUN::ECS::InstanceClone
- ALIYUN::ECS::InstanceGroup
- ALIYUN::ECS::InstanceGroupClone
在编辑资源栈模板时,可通过以下三种方式指定ImageId:
- 直接指定需要的具体镜像ID
- 通过模糊的方式指定需要的镜像
- 通过镜像参数的AssociationProperty属性,选择当前可用的镜像
直接指定需要的具体镜像ID
如果您明确知道需要的镜像ID,则直接指定这个ImageId即可。
通过模糊的方式指定需要的镜像
如果对镜像的版本没有要求(只要是CentOS或者Ubuntu系列即可),则可以使用模糊指定的方式指定镜像ID。ROS会根据输入的镜像值,匹配最合适的镜像ID。
匹配的规则如下:
- 如果只指定镜像的系列,例如CentOS、Win或Ubuntu,则会匹配当前最高版本的64位镜像。
- 如果指定镜像同时指定了镜像的大版本号,例如CentOS_6、Ubutun_14或Win2008r2,则会选择在CentOS 6中64位的最新版本、Ubuntu 14中64位的最新版本或Win2008r2中64位的最新版本。
- 可以使用星号(*)替代镜像ID中的某个字段,例如
centos_6_09_64_20G_alibase*.vhd
,则会使用公共镜像中最新的 centos_6_09_64_20G_alibase版本。 在ROS的模板样例中使用模糊匹配的方式。很多涉及到指定镜像的地方,均以CentOS_7或者Ubuntu_14指定。
示例如下:
"ImageId": {
"Type": "String",
"Description": "ECS Image",
"Label": "ECS Image",
"Default": "centos_7"
},
通过镜像参数的AssociationProperty属性,选择当前可用的镜像
如果通过在模板中把ECS的镜像ID定义成一个参数,则可以在定义参数时添加AssociationProperty指定。ROS在做参数解析时,能自动以列表的形式,展示当前Region下有哪些可用的镜像ID,您只需要选择即可。
使用AssociationProperty定义参数的示例如下:
"ImageId": {
"AssociationProperty":"ALIYUN::ECS::Instance:ImageId",
"Type" : "String",
"Default": "centos_7_04_64_20G_alibase_201701016.vhd",
"Description": " 自动获取可选择的镜像 ID"
}
ROS除显示可选镜像参数以外,会提示镜像ID参数的默认值,或者AllowedValues中指定的值是否可用。您可以选择合适的镜像ID创建ECS资源。