本文为您介绍如何通过资源编排服务ROS(Resource Orchestration Service)为ECS资源指定镜像。
前提条件
进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册。
背景信息
- ALIYUN::ECS::Instance
- ALIYUN::ECS::InstanceClone
- ALIYUN::ECS::InstanceGroup
- ALIYUN::ECS::InstanceGroupClone
在编辑资源栈模板时,可以通过以下三种方式指定镜像ID(ImageId):
- 直接指定需要的镜像ID。
- 通过模糊的方式指定需要的镜像ID。
- 通过镜像参数的AssociationProperty属性,选择当前可用的镜像。
直接指定需要的镜像ID
如果您明确知道需要的镜像ID,则直接指定该镜像ID即可。
通过模糊的方式指定需要的镜像ID
如果对镜像的版本没有要求(只要是CentOS或者Ubuntu系列即可),则可以使用模糊的方式指定镜像ID。ROS会根据输入的镜像值,匹配最合适的镜像ID。
匹配的规则如下:
- 如果只指定镜像的系列,例如CentOS、Windows或Ubuntu,则会匹配当前最高版本的64位镜像。
- 如果指定镜像的同时指定了镜像的大版本号,例如CentOS_6、Ubuntu_14或Windows2008r2,则会选择在CentOS_6中64位的最新版本、Ubuntu_14中64位的最新版本或Windows2008r2中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": "cent****"
},
通过镜像参数的AssociationProperty属性,选择当前可用的镜像
如果在模板中把ECS的镜像ID定义成一个参数,则可以在定义参数时添加AssociationProperty。ROS在做参数解析时,会自动以列表的形式,展示当前地域下有哪些可用的镜像ID,您只需选择即可。
使用AssociationProperty定义参数的示例如下:
"ImageId": {
"AssociationProperty":"ALIYUN::ECS::Instance:ImageId",
"Type" : "String",
"Default": "centos_7_04_64_20G_alibase_20170****.vhd",
"Description": " 自动获取可选择的镜像ID"
}
ROS除显示可选镜像参数以外,会提示镜像ID参数的默认值,或者AllowedValues中指定的值是否可用。您可以选择合适的镜像ID创建ECS资源。