ALIYUN::ECS::CustomImage

ALIYUN::ECS::CustomImage类型用于创建自定义镜像。

语法

{
  "Type": "ALIYUN::ECS::CustomImage",
  "Properties": {
    "Description": String,
    "InstanceId": String,
    "ImageName": String,
    "SnapshotId": String,
    "Tag": List,
    "ResourceGroupId": String,
    "Platform": String,
    "DiskDeviceMapping": List,
    "Architecture": String,
    "ImageFamily": String,
    "SourceRegionId": String,
    "DetectionStrategy": String,
    "ImageVersion": String,
    "BootMode": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

Description

String

自定义镜像的描述信息。

长度为2~256个字符,不能以http://https://开头。

InstanceId

String

实例ID。

指定该参数表示使用实例创建自定义镜像。更多信息,请参见使用实例创建自定义镜像

ImageName

String

自定义镜像名称。

长度为2~128个字符。必须以英文字母或汉字开头,不能以http://https://开头。可包含英文字母、汉字、数字、下划线(_)和短划线(-)。

SnapshotId

String

快照ID。

指定该参数表示使用快照创建自定义镜像。更多信息,请参见使用快照创建自定义镜像

Tag

List

标签。

更多信息,请参见Tag属性

ResourceGroupId

String

自定义镜像所在的企业资源组ID。

Platform

String

指定数据盘快照作为自定义镜像的系统盘后,需要通过Platform确定系统盘的操作系统发行版。

取值:

  • CentOS

  • Ubuntu

  • SUSE

  • OpenSUSE

  • RedHat

  • Debian

  • CoreOS

  • Aliyun

  • Windows Server 2012

  • Windows 7

  • Customized Linux

  • Others Linux(默认值)

DiskDeviceMapping

List

自定义镜像和快照的关系。

更多信息,请参见DiskDeviceMapping属性

Architecture

String

指定数据盘快照作为自定义镜像的系统盘后,需要通过Architecture确定系统盘的系统架构。

取值:

  • i386

  • x86_64(默认值)

ImageFamily

String

镜像族系名称。

长度为2~128个字符。必须以英文字母或汉字开头,不能以aliyunacs:开头,不能包含http://https://。可包含英文字母、汉字、数字、半角冒号(:)、下划线(_)或短划线(-)。

SourceRegionId

String

实例或快照所在的地域ID。

默认为当前地域ID。

DetectionStrategy

String

镜像检测策略。

不配置此参数时不触发检测。仅支持标准(Standard)检测模式。

说明

目前已支持大部分的Linux、Windows版本,关于镜像检测项与操作系统限制说明,请参见镜像检测概述镜像检测操作系统限制

ImageVersion

String

镜像版本。

当您指定了实例ID,并且该实例的镜像是云市场镜像或者来自云市场镜像创建的自定义镜像时。该参数必须和当前实例的镜像的ImageVersion相同或置为空。

BootMode

String

修改镜像的启动模式。

取值:

  • BIOS:BIOS启动模式。

  • UEFI:UEFI启动模式。

说明

您需要了解指定的镜像支持的启动模式,当通过该参数修改启动模式后,必须与镜像本身支持的启动模式匹配,实例才能正常启动。

Tag语法

"Tag": [
  {
    "Key": String,
    "Value": String
  }
]

Tag属性

属性名称

类型

必须

允许更新

描述

约束

Key

String

标签键。

长度为1~128个字符,不能以aliyunacs:开头,不能包含http://https://

Value

String

标签值。

长度为0~128个字符,不能以aliyunacs:开头,不能包含http://https://

DiskDeviceMapping语法

"DiskDeviceMapping": [
  {
    "Device": String,
    "SnapshotId": String,
    "Size": Integer,
    "DiskType": String
  }
]

DiskDeviceMapping属性

属性名称

类型

必须

允许更新

描述

约束

Device

String

自定义镜像中的设备名称。

取值:

  • 普通云盘:/dev/xvd[a-z]

  • 其他云盘:/dev/vd[a-z]

SnapshotId

String

快照ID。

Size

Integer

云盘的大小。

取值:

  • 如果没有指定SnapshotId:

    • 普通云盘:5~2000。

      默认值:5。

    • 其他云盘:20~32,768。

      默认值:20。

  • 如果指定了SnapshotId,Size取值必须大于等于SnapshotId的大小,默认值为SnapshotId的大小。

单位:GiB。

DiskType

String

自定义镜像中的云盘类型。

您可以通过该参数使用数据盘快照作为自定义镜像的系统盘。如果不指定该参数,默认为快照对应的云盘类型。

取值:

  • system:系统盘。

  • data:数据盘。

返回值

Fn::GetAtt

ImageId:自定义镜像ID。

SourceRegionId:实例或快照所在的地域ID。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Description:
      zh-cn: 创建自定义镜像。
      en: Create ECS Custom Image
    Parameters:
      InstanceId:
        Type: String
        AssociationProperty: ALIYUN::ECS::Instance::InstanceId
    Resources:
      CustomImage:
        Type: ALIYUN::ECS::CustomImage
        Properties:
          InstanceId:
            Ref: InstanceId
          ImageName: myImageName
    Outputs:
      ImageId:
        Value:
          Fn::GetAtt:
            - CustomImage
            - ImageId
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Description": {
        "zh-cn": "创建自定义镜像。",
        "en": "Create ECS Custom Image"
      },
      "Parameters": {
        "InstanceId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ECS::Instance::InstanceId"
        }
      },
      "Resources": {
        "CustomImage": {
          "Type": "ALIYUN::ECS::CustomImage",
          "Properties": {
            "InstanceId": {
              "Ref": "InstanceId"
            },
            "ImageName": "myImageName"
          }
        }
      },
      "Outputs": {
        "ImageId": {
          "Value": {
            "Fn::GetAtt": [
              "CustomImage",
              "ImageId"
            ]
          }
        }
      }
    }          

更多示例,请参见创建自定义镜像和将一个地域下的自定义镜像复制到其他地域的组合示例:YAML示例