阿里云如何使用镜像相关接口(8)

 
阿里云如何使用镜像相关接口(8)
2016-09-15 07:00:42 /故事大全

导入自定义镜像

描述

导入镜像是把客户线下的一个镜像文件导入到ECS环境中生成一个自定义镜像。可以使用这个镜像来创建ECS实例和更换系统盘。

请先将镜像文件上传到OSS。

导入镜像的地域必须跟镜像文件存放的OSS的同一个账号同一个地域。

DiskDeviceMapping.N 暂时只支持1,也就是只支持系统盘镜像,暂时不支持数据盘做镜像。

镜像没有导入完成,是不能进行删除操作,可以进行取消导入镜像任务操作。

需要通过RAM给阿里云ECS官方服务账号授权读取OSS的权限。

1.创建角色:AliyunECSImageImportDefaultRole(必须是这个名称,否则导入镜像会失败),角色的策略:

{

"Statement": [

{

"Action": "sts:AssumeRole",

"Effect": "Allow",

"Principal": {

"Service": [

"ecs.aliyuncs.com"

]

}

}

],

"Version": "1"

}

2.在该角色下直接加入默认的系统权限策略:AliyunECSImageImportRolePolicy,这个策略是ECS提供导入镜像的默认策略,你也可以创建自定义策略,权限需要包含:

{

"Version": "1",

"Statement": [

{

"Action": [

"oss:GetObject",

"oss:GetBucketLocation"

],

"Resource": "*",

"Effect": "Allow"

}

]

}

请求参数

名称 类型 是否必须 描述 Action String 是 系统规定参数,取值:ImportImage RegionId String 是 源自定义镜像的regionId ImageName String 否 镜像名称,[2,128]英文或中文字符,必须以大小字母或中文开头,可包含数字,”_”或”-”。不能以//和https://开头。 Description String 否 镜像的描述信息,长度限制在0~256 个字符,不填则为空,默认为空。不能以//和https://开头。 Architecture String 否 系统架构,取值范围:i386 | x86_64

默认值:x86_64 OSType String 否 操作系统平台类型,取值范围:windows | linux

默认值:linux Platform String 否 操作系统发行版,

取值:

  • CentOS
  • Ubuntu
  • SUSE
  • OpenSUSE
  • RedHat
  • Debian
  • CoreOS
  • Aliyun Linux
  • Windows Server 2003
  • Windows Server 2008
  • Windows Server 2012
  • Windows 7
  • Others Linux
默认值:Others Linux DiskDeviceMapping.n.Format String 否 镜像格式,暂时只支持:RAW 和 VHD

默认值:RAW DiskDeviceMapping.n.OSSBucket String 是 镜像文件所在用户的OSS Bucket DiskDeviceMapping.n.OSSObject String 是 镜像文件所在用户的OSS Object的key DiskDeviceMapping.n.DiskImageSize String 否 镜像文件创建系统盘的大小,一定要确保系统盘的空间大于或者等于文件系统的空间。

  • linux类型,取值范围:20GB-1TB 默认:20GB
  • windows类型,取值范围:40GB-1TB 默认:40GB
ClientToken String 否 用于保证请求的幂等性。由客户端生成该参数值,要保证在不同请求间唯一,最大不值过64个ASCII字符。

具体参见附录:如何保证幂等性。

返回参数

名称 类型 描述 RegionId String 地域 Id ImageId String 镜像的ID ImportTaskId String 导入镜像任务Id

错误码

错误代码 描述 Http 状态码 语义 MissingParameter An input parameter "RegionId" that is mandatory for processing the request is not supplied. 400 缺少RegionId值 MissingParameter An input parameter "DiskDeviceMapping.n.OSSBucket" that is mandatory for processing the request is not supplied. 400 缺少OSSBucket的值 MissingParameter An input parameter "DiskDeviceMapping.n.OSSObject" that is mandatory for processing the request is not supplied. 400 缺少OSSObject值 InvalidImageName.Malformed The specified destination Image name is wrongly formed. 400 指定的镜像名称不合法 InvalidDescription.Malformed The specified destination image description is wrongly formed. 400 指定的目标镜像描述不合法 RegionId.NotFound The specified region is not found. 400 指定的镜像的regionId不存在 IncorrectImageStatus The specified image is not available. 400 指定的镜像状态不正确 InvalidImageName.Duplicated The destination image is exist. 400 镜像名称已经重复 QuotaExceed.Image The Image Quota exceeds. 403 已经超过自定义镜像配额限制,不能再进行导入镜像 QuotaExceed.Snapshot The Snapshot Quota exceeds. 403 已经超过快照的配额限制,不能再进行导入镜像。 Forbbiden User not authorized to operate on the specified resource 400 没有权限进行导入镜像 InvalidArchitecture.Malformed The specified Architecture is wrongly formed. 400 指定的平台架构不合法 InvalidPlatform.Malformed The specified Platform is wrongly formed. 400 指定的操作系统发行版类型不合法 InvalidOSType.Malformed The specified OSType is wrongly formed. 400 指定的操作系统类型不合法 InvalidFormat.Malformed The specified Image format is wrongly formed. 400 指定的镜像文件格式不合法 InvalidImageSize The specified “DiskDeviceMapping.n.DiskImageSize" should be not less than system device size. 400 指定的镜像的磁盘大小不合法 ImageIsImporting The specified Image is importing. 403 指定的镜像正在复制中 InvalidRegion.NotSupport The specified region does not support image import or export. 403 指定的region暂时不支持导入镜像

示例

请求示例

https://ecs.aliyuncs.com/?Action=ImportImage

&RegionId=cn-hangzhou

&DiskDeviceMapping.1.OSSBucket=ecsimageos

&DiskDeviceMapping.1.OSSObject=CentOS_5.4_32.raw

&<公共请求参数>

返回示例

JSON格式

{

"RequestId": "C8B26B44-0189-443E-9816-D951F59623A9",

"ImageId": "Img-231234567",

"ImportTaskId":"123-345-2332-22323"

}

所属专题:
如果您觉得本文或图片不错,请把它分享给您的朋友吧!

 
故事大全
 
版权所有- © 2012-2015 · 故事大全 SITEMAP站点地图-Foton Auman手机看故事 站点地图-Foton Auman