ローカルイメージファイルを Elastic Compute サービス (ECS) にカスタムイメージとしてインポートし、指定されたリージョンに表示します。インポートされたイメージを使用して、ECS インスタンスの作成 (RunInstances) やインスタンスのシステムディスクの置き換え (ReplaceSystemDisk) を行えます。
操作説明
操作の説明
この操作を呼び出す際は、以下の項目に注意してください:
-
事前にイメージファイルを Object Storage サービス (OSS) にアップロードする必要があります。詳細については、ファイルのアップロードを参照してください。
-
一部のサーバー、仮想マシン、またはクラウドホストのオペレーティングシステムの問題により、インポートされたカスタムイメージから作成された ECS インスタンスが起動に失敗するのを防ぐため、イメージをインポートする前にソースサーバーに virtio ドライバーをインストールする必要があるかどうかを確認してください。詳細については、virtio ドライバーのインストールを参照してください。
-
初めてイメージをインポートする場合、Resource Access Management (RAM) を使用して ECS に OSS バケットへのアクセスを権限付与する必要があります。権限付与しない場合、
NoSetRoletoECSServiceAccountまたはInvalidOperation.CloudBoxImageImportRoleRequiredエラーが返されます。以下の 2 つのシナリオがあります:-
CloudBox を使用せずにイメージファイルをインポートする場合: RAM コンソールでワンクリックで RAM 認可を完了できます。詳細については、クラウドリソースアクセス権限付与を参照してください。手動で RAM 認可を完了することもできます。一部の操作には以下のポリシーと権限が必須です。詳細については、アカウントのアクセスの制御を参照してください。
-
AliyunECSImageImportDefaultRoleという名前のロールを作成します。この正確な名前を使用する必要があります。そうしないと、イメージのインポートが失敗します。ロールには以下のポリシーを使用してください:{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "ecs.aliyuncs.com" ] } } ], "Version": "1" } -
システムポリシー
AliyunECSImageImportRolePolicyをロールにアタッチします。以下の権限を含むカスタムポリシーを作成することもできます:{ "Version": "1", "Statement": [ { "Action": [ "oss:GetObject", "oss:GetBucketLocation", "oss:GetBucketInfo" ], "Resource": "*", "Effect": "Allow" } ] }
-
-
CloudBox を使用してイメージファイルをインポートする場合: RAM コンソールでワンクリックで RAM 認可を完了できます。詳細については、クラウドリソースアクセス権限付与を参照してください。手動で RAM 認可を完了することもできます。一部の操作には以下のポリシーと権限が必須です。詳細については、アカウントのアクセスの制御を参照してください。
-
AliyunECSCloudBoxImageImportDefaultRoleという名前のロールを作成します。この正確な名前を使用する必要があります。そうしないと、イメージのインポートが失敗します。ロールには以下のポリシーを使用してください:{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "ecs.aliyuncs.com" ] } } ], "Version": "1" } -
システムポリシー
AliyunECSCloudBoxImageImportRolePolicyをロールにアタッチします。以下の権限を含むカスタムポリシーを作成することもできます:{ "Version": "1", "Statement": [ { "Action": [ "oss-cloudbox:GetObject", "oss-cloudbox:GetBucketLocation", "oss-cloudbox:GetBucketInfo" ], "Resource": "*", "Effect": "Allow" } ] }
-
-
-
インポート中のイメージは削除できません。 CancelTask を呼び出してイメージのインポートタスクをキャンセルすることのみ可能です。
-
イメージをインポートするリージョンは、イメージファイルがアップロードされた OSS バケットのリージョンと同じである必要があります。
-
DiskDeviceMapping.Nパラメーターの N の有効な値: 1 ~ 17。N が 1 の場合、ディスクはシステムディスクです。N が 2 ~ 17 の場合、ディスクはデータディスクです。N が 17 より大きい場合、システムはその値を自動的に無視します。 -
Architectureパラメーターがarm64にセットされている場合、またはPlatformパラメーターがCentOS Stream、Anolis、AlmaLinux、UOS、Kylin、Rocky Linuxにセットされている場合は、以下の項目に注意してください:-
インポートされたイメージがパスワード構成またはキーペアの変更をサポートするようにするには、イメージが以下の要件を満たす必要があります:
-
オペレーティングシステムのカーネルが
CONFIG_FW_CFG_SYSFS特徴をサポートしている必要があります。バージョン 4.6 より後の Linux コミュニティカーネルはデフォルトでこの特徴をサポートしています。バージョン 3.10.0-826.el7 より後の CentOS カーネルはデフォルトでこの特徴をサポートしています。イメージに対応するサーバーでgrep -nr CONFIG_FW_CFG_SYSFS /boot/config-$(uname -r)コマンドを実行できます。出力にCONFIG_FW_CFG_SYSFS=yが含まれている場合、イメージのカーネルはCONFIG_FW_CFG_SYSFS特徴をサポートしています。 -
最新バージョンの Alibaba Cloud cloud-init がオペレーティングシステムにインストールされている必要があります。Cloud-init 19.1 はバージョン 19.1.3 以降である必要があります。一部の古いオペレーティングシステムの Cloud-init 0.7.6a はバージョン 0.7.6a15 以降である必要があります。詳細については、cloud-init のインストールを参照してください。
-
オペレーティングシステムが SHA-512 暗号化アルゴリズムをサポートしている必要があります。
-
-
インポートされたイメージがディスクのサイズ変更とファイルシステムのサイズ変更をサポートするようにするには、イメージが以下の要件を満たす必要があります:
-
オペレーティングシステムのカーネルバージョンが 3.6 より後である必要があります。
-
growpart コマンドがサポートされている必要があります。このコマンドをサポートするには、
cloud-utils-growpartパッケージをインストールしてください。インストールメソッドはオペレーティングシステムによって異なります。詳細については、パーティションとファイルシステムのサイズ変更 (Linux)を参照してください。 -
resize2fs コマンドがサポートされている必要があります。このコマンドをサポートするには、
e2fsprogsパッケージをインストールしてください。このパッケージはオペレーティングシステムにデフォルトでインストールされています。インストールされていない場合は、手動でインストールしてください。 -
最新バージョンの Alibaba Cloud cloud-init がオペレーティングシステムにインストールされている必要があります。Cloud-init 19.1 はバージョン 19.1.3 以降である必要があります。一部の古いオペレーティングシステムの Cloud-init 0.7.6a はバージョン 0.7.6a15 以降である必要があります。詳細については、cloud-init のインストールを参照してください。
-
-
-
インポートするカスタムイメージのシステムアーキテクチャーが arm64 の場合、RTC 時計を協定世界時 (UTC) 標準を使用するように構成してください。詳細については、Linux の時間とタイムゾーンの説明を参照してください。
-
イメージをインポートする際にイメージ検出パラメーターを構成してください。これにより、システムがイメージを最適化できます。詳細については、イメージ検出の概要を参照してください。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
ecs:ImportImage |
update |
*Image
|
なし | なし |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| RegionId |
string |
必須 |
ソースカスタムイメージのリージョン ID。 DescribeRegions を呼び出して最新のリージョンリストをクエリできます。 |
cn-hangzhou |
| ImageName |
string |
任意 |
イメージの名前。名前は 2 ~ 128 文字である必要があります。英字または中国語の文字で始まる必要があり、 |
ImageTestName |
| Description |
string |
任意 |
イメージの説明。説明は 2 ~ 256 文字である必要があり、 |
TestDescription |
| Architecture |
string |
任意 |
システムアーキテクチャー。有効な値:
デフォルト値: x86_64。 |
x86_64 |
| OSType |
string |
任意 |
オペレーティングシステムのタイプ。有効な値:
デフォルト値: linux。 |
linux |
| Platform |
string |
任意 |
オペレーティングシステムのバージョン。有効な値:
デフォルト値: Others Linux。 |
Aliyun |
| BootMode |
string |
任意 |
イメージのブートモード。有効な値:
デフォルト値: BIOS。 重要
サポートされていないブートモードによりインスタンスが起動に失敗するのを防ぐため、このパラメーターをセットする前に、対象イメージがサポートするブートモードを確認してください。イメージのブートモードの詳細については、イメージのブートモードを参照してください。 。 |
BIOS |
| RoleName |
string |
任意 |
イメージのインポートに使用する RAM ロールの名前。 |
AliyunECSImageImportDefaultRole |
| LicenseType |
string |
任意 |
ライセンスタイプ。このパラメーターは、イメージを使用して RunInstances を呼び出してインスタンスを作成する際の権限付与モードを指定します。この値は Windows Server イメージにのみ効果があります。有効な値:
デフォルト値: Aliyun。 |
BYOL |
| ResourceGroupId |
string |
任意 |
インポートされたイメージが属するエンタープライズリソースグループの ID。 |
rg-bp67acfmxazb4p**** |
| DiskDeviceMapping |
array<object> |
任意 |
作成するカスタムイメージの情報リスト。 |
|
|
object |
任意 |
作成するカスタムイメージの情報リスト。 |
||
| DiskImSize |
integer |
任意 |
カスタムイメージのサイズ。単位: GiB。 サイズにはシステムディスクとデータディスクが含まれます。システムディスク領域がインポートされたイメージファイルのサイズ以上であることを確認してください。有効な値:
ソースイメージファイルを OSS にアップロードした後、OSS バケットでイメージファイルのサイズを確認できます。 説明
このパラメーターは非推奨になります。互換性を高めるため、 |
80 |
| Device |
string |
任意 |
カスタムイメージにおける DiskDeviceMapping.N.Device のデバイス名。 説明
このパラメーターは非推奨になります。互換性を高めるため、このパラメーターを使用しないでください。 |
null |
| OSSBucket |
string |
任意 |
イメージファイルが格納されている OSS バケット。 説明
初めてこの OSS バケットにイメージをインポートする前に、この Topic の操作の説明セクションに記載されている RAM 権限付与ポリシーを追加してください。追加しない場合、 |
ecsimageos |
| Format |
string |
任意 |
イメージフォーマット。有効な値:
デフォルト値: null。Alibaba Cloud がイメージフォーマットを自動的に検出することを示します。検出されたフォーマットが優先されます。 |
QCOW2 |
| OSSObject |
string |
任意 |
イメージを OSS にアップロードした後、OSS バケットに格納されたイメージファイルのファイル名 (キー)。 |
CentOS_5.4_32.raw |
| DiskImageSize |
integer |
任意 |
イメージのインポート後のカスタムイメージのサイズ。 サイズにはシステムディスクとデータディスクが含まれます。システムディスク領域がインポートされたイメージファイルのサイズ以上であることを確認してください。有効な値:
ソースイメージファイルを OSS にアップロードした後、OSS バケットでイメージファイルのサイズを確認できます。 |
80 |
| Tag |
array<object> |
任意 |
イメージのタグ。 |
|
|
object |
任意 |
イメージのタグ。 |
||
| Key |
string |
任意 |
イメージのタグキー。N の有効な値: 1 ~ 20。タグキーは空文字列にできません。タグキーは最大 128 文字で、 |
TestKey |
| Value |
string |
任意 |
イメージのタグ値。N の有効な値: 1 ~ 20。タグ値は空文字列にできます。タグ値は最大 128 文字で、 |
TestValue |
| DetectionStrategy |
string |
任意 |
イメージ検出戦略。このパラメーターが指定されていない場合、検出はトリガーされません。標準検出モードのみがサポートされています。 説明
ほとんどの Linux および Windows バージョンがサポートされています。イメージ検出項目とオペレーティングシステムの制限の詳細については、イメージ検出の概要およびイメージ検出のオペレーティングシステムの制限を参照してください。 |
Standard |
| StorageLocationArn |
string |
任意 |
CloudBox の Alibaba Cloud リソースネーム (ARN)。クラウドストレージの場所を一意に識別するために使用されます。 説明
このパラメーターは、CloudBox 上の OSS からイメージファイルをインポートする場合にのみ指定する必要があります。CloudBox 上の OSS を使用しない場合は、このパラメーターをセットしないでください。詳細については、CloudBox 上の OSS とはを参照してください。 ARN は次のフォーマットにフォローする必要があります: |
arn:acs:cloudbox:cn-hangzhou:123456:cloudbox/cb-xx***123 |
| DryRun |
boolean |
任意 |
ドライランのみを実行するかどうかを指定します。有効な値:
デフォルト値: false。 |
false |
| Features |
object |
任意 |
イメージの特徴関連のプロパティ。 |
|
| NvmeSupport |
string |
任意 |
イメージが NVMe をサポートするかどうかを指定します。有効な値:
|
supported |
| ImdsSupport |
string |
任意 |
イメージのメタデータアクセスモード。有効な値:
デフォルト値: v1。 |
v2 |
| ClientToken |
string |
任意 |
リクエストのべき等性を確保するために使用されるクライアントトークン。クライアントを使用してトークンを生成できますが、異なるリクエスト間でトークンが一意であることを確認してください。ClientToken の値には ASCII 文字のみを含めることができ、64 文字を超えることはできません。詳細については、べき等性の確保方法を参照してください。 |
123e4567-e89b-12d3-a456-426655440000 |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
|||
| RequestId |
string |
リクエスト ID |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
| ImageId |
string |
イメージ ID |
m-bp67acfmxazb4p**** |
| TaskId |
string |
イメージのインポートタスクの ID。 |
t-bp67acfmxazb4p**** |
| RegionId |
string |
リージョン ID。 |
cn-hangzhou |
例
成功レスポンス
JSONJSON
{
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
"ImageId": "m-bp67acfmxazb4p****",
"TaskId": "t-bp67acfmxazb4p****",
"RegionId": "cn-hangzhou"
}
エラーコード
|
HTTP ステータスコード |
エラーコード |
エラーメッセージ |
説明 |
|---|---|---|---|
| 400 | UnsupportedSuffix.OSSObject | The specified OSS object suffix is not supported. | |
| 400 | MissingParameter | An input parameter "RegionId" that is mandatory for processing the request is not supplied. | |
| 400 | InvalidImageName.Malformed | The specified Image name is wrongly formed. | 指定されたイメージ名の形式が無効です。長さは 2 ~ 128 文字で、先頭は大文字または小文字の英字、または漢字である必要があります。後続の文字には、数字、"."、"_"、"-" を使うことができます。 |
| 400 | InvalidOSSObject.Malformed | The specified OSS object is wrongly formed. | |
| 400 | InvalidOSSBucket.Malformed | The specified OSS bucket is wrongly formed. | |
| 400 | InvalidOSSObject.Size | The specified OSS object size is zero. | |
| 400 | InvalidDescription.Malformed | The specified Image description is wrongly formed. | |
| 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 | InvalidImageName.Duplicated | The destination image is exist. | |
| 400 | InvalidImageSize | %s | |
| 400 | InvalidDataDiskSize | The specified DiskDeviceMapping.N.DiskImSize should be in the specified range. | |
| 400 | InvalidImageFormat.Malformed | The specified Image Format is wrongly formed. | |
| 400 | InvalidRegionId.NotFound | The specified RegionId does not exist. | |
| 400 | InvalidRegion.NotSupport | The specified region does not support image import or export. | |
| 400 | InvalidOSSBucket.NotFound | The specified OSS bucket does not exist in this region. | |
| 400 | InvalidOSSObject.NotFound | The specified OSS object does not exist in this region. | |
| 400 | InvalidOSSObject.NeedRestore | The specified OSS object is a archive object, need restore first. | |
| 400 | InvalidOSSBucket.NotMatched | The specified OSS bucket is incorrect, %s. | |
| 400 | InvalidLicenseType.NotSupported | The specified LicenseType is not supported. | |
| 400 | InvalidLicenseType.BYOLOnly | Only BYOL LicenseType is supported for the current platform provided. | |
| 400 | InvalidOSSBucket.FlowLimit | %s | |
| 400 | InvalidImageFormat.RegionNotSupported | The specified image format is not supported in current region. | |
| 400 | InvalidBootMode.Malformed | The specified parameter "BootMode" is malformed. | |
| 400 | InvalidParameter.DetectionStrategy | The specified parameter DetectionStrategy is invalid. | |
| 400 | InvalidBootMode.NotSupport | The specified parameter BootMode is not supported for current image architecture. | |
| 400 | DRYRUN.SUCCESS | This request is a dryrun request with successful result. | |
| 400 | InvalidClientToken.Malformed | The specified parameter clientToken is not valid. | |
| 400 | InvalidParameter.FeaturesImdsSupport | The specified parameter Features.ImdsSupport is not supported. | |
| 400 | Account.Arrearage | Your account has an outstanding payment. | |
| 403 | ImageIsImporting | The specified Image is importing. | |
| 403 | QuotaExceed.Image | The Image Quota exceeds. | |
| 403 | ImportImageFailed | Importing image is failed, Please contact the administrator. | |
| 403 | UserNotInTheWhiteList | The user is not in the white list of importing image. | |
| 403 | NoSetRoletoECSServiceAcount | ECS service account Have no right to access your OSS.please attach a role of access your oss to ECS service account. | |
| 403 | InvalidParameter.Malformed | The specified parameter "DiskDeviceMapping.n.Device " is not valid. | |
| 403 | MissingParameter.DiskDeviceMapping | The specified parameter DiskDeviceMapping is not supplied. | |
| 403 | InvalidOSS.NotAuthorized | The specified OSS bucket or object is not allowed to access. | |
| 403 | InvalidBlockSize.NotSupport | %s | |
| 403 | InvalidImageFormat.Malformed | %s | |
| 403 | ImageCheckUnsupported.WindowsImage | Image check is unsupported for windows image. | |
| 403 | InvalidVHDImage.IncorrectSize | The specified size of the VHD image does not meet the 'header.MaxTableEntries * header.BlockSize' specification. | |
| 403 | InvalidOSSBucket.EncryptUnsupported | Accessing objects from encrypted OSS bucket is not supported. | |
| 403 | InvalidArchitecture.PlatformUnsupported | The OS platform you selected does not support the specified architecture. | |
| 403 | InvalidAccountStatus.OSSDisabled | OSS is disabled due to invalid account status. | |
| 403 | InvalidStorageLocation.NotFound | The specified cloud box storage location %s could not be found. | |
| 403 | InvalidOperation.CloudBoxImageImportRoleRequired | The role for cloud box image import is not set to the ECS service. | |
| 403 | InvalidOperation.CloudBoxImageImportUnsupported | Importing cloud box images is not supported. | |
| 403 | TagKey.Duplication | The TagKey has duplication with others, case-insensitive. | |
| 404 | InvalidResourceGroup.NotFound | The ResourceGroup provided does not exist in our records. |
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。