ImportImage
导入一份您的本地镜像文件到云服务器ECS,作为自定义镜像出现在相应地域中。后续您可以使用导入的镜像创建ECS实例(RunInstances),或者更换实例的系统盘(ReplaceSystemDisk)
服务地址:
华东1 金融云
输入参数
只看必填
RegionId源自定义镜像的地域ID
ImageName镜像名称
Description镜像的描述信息
Architecture系统架构
OSType操作系统类型
Platform操作系统版本
BootMode修改镜像的启动模式
RoleName导入镜像时
LicenseType导入镜像后
ResourceGroupId导入镜像所在的企业资源组ID
DiskDeviceMapping创建的自定义镜像信息列表
0创建的自定义镜像信息列表
DiskImSize自定义镜像大小
Device指定DiskDeviceMapping...
OSSBucket镜像文件所在的OSS Bucket
Format镜像格式
OSSObject镜像上传至OSS Bucket后
DiskImageSize导入镜像后
Tag镜像的标签列表
0镜像的标签列表
Key镜像的标签键
Value镜像的标签值
DetectionStrategy镜像检测策略
StorageLocationArn指定云盒的资源名称(ARN)
DryRun是否只预检此次请求
请选择布尔值
Features镜像特性相关属性
NvmeSupport镜像是否支持NVMe
ImdsSupport镜像的元数据访问模式
幂等性参数
ClientToken保证请求幂等性
插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

接口说明

调用该接口时,您需要注意:

  • 您必须提前上传镜像文件到对象存储 OSS。具体操作,请参见上传文件

  • 为避免部分服务器、虚拟机或者云主机的操作系统在导入自定义镜像后,创建的 ECS 实例无法启动,您需要在导入镜像前检查是否需要在源服务器中安装 virtio 驱动。具体操作,请参见安装 virtio 驱动

  • 首次导入镜像时,您必须提前通过访问控制 RAM 授权 ECS 访问您的 OSS Bucket,否则会报错NoSetRoletoECSServiceAccountInvalidOperation.CloudBoxImageImportRoleRequired。分为以下两种场景情况:

    • 不通过云盒导入镜像文件:您可以通过 RAM 管理控制台一键完成授权操作,具体的授权页面,请参见云资源访问授权。您也可以手动完成授权操作,部分操作中策略与权限如下所示。具体操作,请参见账号访问控制

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

        {
        	"Statement": [
        	{
        		"Action": "sts:AssumeRole",
        		"Effect": "Allow",
        		"Principal": {
        		"Service": [
        			"ecs.aliyuncs.com"
        		]
        		}
        	}
        ],
        	"Version": "1"
        }
        
      2. 在该角色下,添加系统策略AliyunECSImageImportRolePolicy。您也可以创建自定义策略,权限必须包含:

        
        {
        	"Version": "1",
        	"Statement": [
        	{
        		"Action": [
        				"oss:GetObject",
        				"oss:GetBucketLocation",
        				"oss:GetBucketInfo"
        	],
        			"Resource": "*",
        			"Effect": "Allow"
        			}
        	]
        }
        
        
    • 通过云盒导入镜像文件:您可以通过 RAM 管理控制台一键完成授权操作,具体的授权页面,请参见云资源访问授权。您也可以手动完成授权操作,部分操作中策略与权限如下所示。具体操作,请参见账号访问控制

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

        {
        	"Statement": [
        	{
        		"Action": "sts:AssumeRole",
        		"Effect": "Allow",
        		"Principal": {
        		"Service": [
        			"ecs.aliyuncs.com"
        		]
        		}
        	}
        ],
        	"Version": "1"
        }
        
      2. 在该角色下,添加系统策略AliyunECSCloudBoxImageImportRolePolicy。您也可以创建自定义策略,权限必须包含:

        
        {
        	"Version": "1",
        	"Statement": [
        	{
        		"Action": [
        				"oss-cloudbox:GetObject",
        				"oss-cloudbox:GetBucketLocation",
        				"oss-cloudbox:GetBucketInfo"
        	],
        			"Resource": "*",
        			"Effect": "Allow"
        			}
        	]
        }
        
        
  • 不能删除正在导入的镜像,只能调用 CancelTask 取消导入镜像任务。

  • 导入镜像的地域必须跟镜像文件上传的 OSS Bucket 的地域相同。

  • 参数DiskDeviceMapping.N中 N 的取值范围为 1~17。N 为 1 时表示系统盘,N 为 2~17 时表示数据盘,当 N 大于 17 时系统会自动忽略。

  • 当参数Architecture取值为arm64,或者参数Platform取值为CentOS StreamAnolisAlmaLinuxUOSKylinRocky Linux时,您需要注意:

    • 为了使导入后的镜像支持配置密码或者支持修改密钥对,镜像必须满足以下条件:

      • 操作系统的内核需要支持CONFIG_FW_CFG_SYSFS特性。Linux 社区内核 4.6 版本之后默认支持该特性,CentOS 的内核在 3.10.0-826.el7 版本之后默认支持该特性。您可以在该镜像对应的服务器内运行grep -nr CONFIG_FW_CFG_SYSFS /boot/config-$(uname -r)命令,如果回显结果中包含CONFIG_FW_CFG_SYSFS=y信息,则说明该镜像中的内核已支持CONFIG_FW_CFG_SYSFS特性。

      • 操作系统中已安装阿里云最新版本 cloud-init。其中,19.1 版本 cloud-init 必须在 19.1.3 版本及以上,部分低版本操作系统中的 0.7.6a 版本 cloud-init 必须在 0.7.6a15 版本及以上。具体操作,请参见安装 cloud-init

      • 操作系统需要支持 SHA-512 加密算法。

    • 为了使导入后的镜像支持扩容云盘与扩容文件系统,镜像必须满足以下条件:

      • 操作系统的内核版本需要高于 3.6 版本。

      • 支持 growpart 命令。支持该命令需要安装cloud-utils-growpart包,不同操作系统安装方式有所不同。具体操作,请参见扩展分区和文件系统(Linux)

      • 支持 resize2fs 命令。支持该命令需要安装e2fsprogs包,该包在操作系统中默认已安装,如果没有安装您需要自行安装。

      • 操作系统中已安装阿里云最新版本 cloud-init。其中,19.1 版本 cloud-init 必须在 19.1.3 版本及以上,部分低版本操作系统中的 0.7.6a 版本 cloud-init 必须在 0.7.6a15 版本及以上。具体操作,请参见安装 cloud-init

  • 如果您待导入的自定义镜像对应的系统架构为 arm64 时,您需要设置其 RTC 时钟使用 UTC 时间标准。具体操作,请参见 Linux 时间和时区说明

  • 强烈建议在导入镜像时配置镜像检测参数,有助于系统帮助优化您的镜像。更多信息,请参见镜像检测概述

请求参数

字段名称字段详情
RegionIdstring

源自定义镜像的地域 ID。您可以调用 DescribeRegions 查看最新的阿里云地域列表。

示例值:cn-hangzhou参考取值来源:
    DescribeRegions
ImageNamestring

镜像名称。长度为 2~128 个字符。必须以大小写字母或中文开头,不能以aliyunacs:开头,不能包含http://或者https://。可以包含数字、半角句号(.)、半角冒号(:)、下划线(_)或者短划线(-)。

示例值:ImageTestName参考取值来源:
    DescribeImages
Descriptionstring

镜像的描述信息。长度为 2~256 个英文或中文字符,不能以http://https://开头。

示例值:TestDescription
Architecturestring

系统架构。取值范围: 展开详情

示例值:x86_64
OSTypestring

操作系统类型。取值范围: 展开详情

示例值:linux
Platformstring

操作系统版本。取值范围: 展开详情

示例值:Aliyun
BootModestring

修改镜像的启动模式。取值范围:展开详情

示例值:BIOS
RoleNamestring

导入镜像时,使用的 RAM 角色名称。

示例值:AliyunECSImageImportDefaultRole参考取值来源:
    DetachInstanceRamRole
    AttachInstanceRamRole
    DescribeInstanceRamRole
LicenseTypestring

导入镜像后,激活操作系统采用的许可证类型。取值范围:展开详情

示例值:Auto
ResourceGroupIdstring

导入镜像所在的企业资源组 ID。

示例值:rg-bp67acfmxazb4p****参考取值来源:
    DescribeSecurityGroups
DiskDeviceMappingarray<object>

创建的自定义镜像信息列表。

子级条数 <= 17
Tagarray<object>

镜像的标签列表。

子级条数 <= 20
DetectionStrategystring

镜像检测策略,不配置此参数时不触发检测。仅支持标准(Standard)检测模式。展开详情

示例值:Standard
StorageLocationArnstring

指定云盒的资源名称(ARN),用于唯一标识云端存储位置。展开详情

示例值:arn:acs:cloudbox:cn-hangzhou:123456:cloudbox/cb-xx***123
DryRunboolean

是否只预检此次请求。取值范围:展开详情

示例值:false
Featuresobject

镜像特性相关属性。

ClientTokenstring

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性

示例值:123e4567-e89b-12d3-a456-426655440000

返回参数

字段名称字段详情
RequestIdstring

请求 ID。

示例值:473469C7-AA6F-4DC5-B3DB-A3DC0DE3****
ImageIdstring

镜像 ID。

示例值:m-bp67acfmxazb4p****
TaskIdstring

导入镜像任务 ID。

示例值:t-bp67acfmxazb4p****
RegionIdstring

地域 ID。

示例值:cn-hangzhou
变更历史
暂无变更历史