華為云計算 云知識 制作鏡像CreateImage
制作鏡像CreateImage

 

功能介紹

本接口用于制作私有 鏡像 ,支持:

  • 使用 云服務(wù)器 制作私有鏡像(系統(tǒng)盤鏡像/數(shù)據(jù)盤鏡像)。
  • 使用上傳至OBS桶中的外部鏡像文件制作系統(tǒng)盤鏡像。
  • 使用數(shù)據(jù)盤制作系統(tǒng)盤鏡像。

作為異步接口,調(diào)用成功,只是說明云平臺收到了制作請求,鏡像是否制作成功需要通過異步任務(wù)查詢接口查詢該任務(wù)的執(zhí)行狀態(tài),具體請參考異步任務(wù)查詢

約束與限制

  • 使用外部鏡像文件制作鏡像

    外部鏡像文件的限制請參見“準(zhǔn)備鏡像文件”。

  • 使用數(shù)據(jù)盤創(chuàng)建系統(tǒng)盤鏡像

    使用數(shù)據(jù)盤制作系統(tǒng)盤鏡像時,需確保該數(shù)據(jù)盤中有操作系統(tǒng),且操作系統(tǒng)已提前完成優(yōu)化步驟。如何優(yōu)化,請參見優(yōu)化私有鏡像(Windows)優(yōu)化私有鏡像(Linux)

    由于系統(tǒng)無法校驗?zāi)谡{(diào)用該接口時指定的卷是否存在操作系統(tǒng),因此制作系統(tǒng)盤鏡像時,請務(wù)必確保您輸入的os_version(操作系統(tǒng)版本)值合法,具體請參見相關(guān)參數(shù)取值列表

調(diào)試

您可以在API Explorer中調(diào)試該接口。

URI

POST /v2/cloudimages/action

請求消息

  • 使用云服務(wù)器制作鏡像(系統(tǒng)盤鏡像/數(shù)據(jù)盤鏡像)時的請求參數(shù)

    參數(shù)

    是否必選

    參數(shù)類型

    描述

    name

    String

    系統(tǒng)盤鏡像名稱。name參數(shù)說明請參考鏡像屬性。

    description

    String

    鏡像描述信息。_description參數(shù)說明請參考鏡像屬性。支持字母、數(shù)字、中文等,不支持回車、<、>,長度不能超過1024個字符。默認為空。

    instance_id

    String

    用于制作鏡像的源云服務(wù)器ID。

    如何獲取云服務(wù)器ID:

    1. 登錄控制臺。
    2. 選擇“計算 > 彈性云服務(wù)器”。
    3. 云服務(wù)器列表欄,單擊源云服務(wù)器名稱,在詳情頁查看ID。

    data_images

    Array of objects

    需要轉(zhuǎn)換的數(shù)據(jù)盤信息,其中,當(dāng)使用云服務(wù)器上的數(shù)據(jù)盤進行私有數(shù)據(jù)盤鏡像創(chuàng)建時,該字段必選,詳情請參見表1。

    如果不是用于制作數(shù)據(jù)盤鏡像,該字段默認為空。

    說明:

    當(dāng)需要用數(shù)據(jù)盤創(chuàng)建數(shù)據(jù)盤鏡像時,此表中的其他參數(shù)(如name、description、tags)如果有值,系統(tǒng)以data_images中的值為準(zhǔn),不允許再輸入instance_id。

    tags

    Array of strings

    鏡像標(biāo)簽列表。默認為空。

    tags和image_tags只能使用一個。

    image_tags

    Array of objects

    新規(guī)范的鏡像標(biāo)簽列表。默認為空。

    tags和image_tags只能使用一個。

    enterprise_project_id

    String

    表示當(dāng)前鏡像所屬的企業(yè)項目。

    • 取值為0或無該值,表示屬于default企業(yè)項目。
    • 取值為UUID,表示屬于該UUID對應(yīng)的企業(yè)項目。

      關(guān)于企業(yè)項目ID的獲取及企業(yè)項目特性的詳細信息,請參考“企業(yè)中心總覽”。

    max_ram

    Integer

    表示鏡像支持的最大內(nèi)存,單位為MB。

    min_ram

    Integer

    表示鏡像支持的最小內(nèi)存,單位為MB,默認為0,表示不受限制。

    表1 data_images字段數(shù)據(jù)結(jié)構(gòu)說明

    參數(shù)

    是否必選

    參數(shù)類型

    描述

    name

    String

    數(shù)據(jù)盤鏡像名稱。

    volume_id

    String

    數(shù)據(jù)盤ID。

    description

    String

    數(shù)據(jù)盤描述。

    tags

    Array of strings

    數(shù)據(jù)盤鏡像標(biāo)簽。

  • 使用上傳至OBS桶中的外部鏡像文件時的請求參數(shù)

    參數(shù)

    是否必選

    參數(shù)類型

    描述

    name

    String

    鏡像名稱。name參數(shù)說明請參考鏡像屬性

    description

    String

    鏡像描述信息。_description參數(shù)說明請參考鏡像屬性。支持字母、數(shù)字、中文等,不支持回車、<、>,長度不能超過1024個字符。默認為空。

    os_type

    String

    操作系統(tǒng)類型。

    取值為Linux、Windows、Other。

    os_version

    String

    操作系統(tǒng)版本。

    使用上傳至OBS桶中的外部鏡像文件制作鏡像時生效,具體取值見相關(guān)參數(shù)取值列表

    說明:

    如果上傳的文件為ISO格式,則該參數(shù)為必填參數(shù)。

    當(dāng)“is_quick_import”的值為“true”時,即使用鏡像文件快速導(dǎo)入方式導(dǎo)入系統(tǒng)盤鏡像,則該參數(shù)為必填參數(shù)。

    image_url

    String

    OBS桶中外部鏡像文件地址。

    在使用OBS桶的外部鏡像文件制作鏡像時生效且為必選字段。格式為<OBS桶名>:<OBS鏡像文件名稱>。

    • “OBS桶名”獲取方式:
      1. 登錄控制臺,選擇“存儲 > 對象存儲服務(wù) ”。

        在下方OBS桶列表欄顯示所有已創(chuàng)建的OBS桶。

      2. 查看當(dāng)前Region下,用于存放外部鏡像文件的“桶名稱”。
    • “OBS鏡像文件名稱”獲取方式:
      1. 登錄控制臺,選擇“存儲 > 對象存儲 服務(wù)”。

        在下方OBS桶列表欄顯示所有已創(chuàng)建的OBS桶。

      2. 查看當(dāng)前Region下,用于存放外部鏡像文件的“桶名稱”。
      3. 單擊桶名稱,進入對應(yīng)OBS桶詳情頁。
      4. 在左側(cè)目錄中選擇“對象”,查看當(dāng)前OBS桶中的對象,并記錄用于制作鏡像的外部鏡像文件名稱。
    說明:

    此處的OBS桶和鏡像文件的存儲類別必須是OBS標(biāo)準(zhǔn)存儲。

    min_disk

    Integer

    最小系統(tǒng)盤大小。

    在使用OBS桶的外部鏡像文件制作鏡像時生效且為必選字段。取值為40~1024GB。

    is_config

    Boolean

    是否自動配置。

    取值為true或false。

    如果需要后臺自動配置,取值為true,否則為false。默認取值為false。

    后臺自動配置的內(nèi)容請參考“注冊鏡像”。

    cmk_id

    String

    創(chuàng)建加密鏡像的自定義密鑰,具體取值請參考“查看密鑰”獲取。

    tags

    Array of strings

    鏡像標(biāo)簽列表。默認為空。

    tags和image_tags只能使用一個。

    image_tags

    Array of objects

    新規(guī)范的鏡像標(biāo)簽列表。默認為空。tags和image_tags只能使用一個。

    type

    String

    鏡像的類型。

    取值為ECS、BMS、FusionCompute、Ironic、IsoImage。默認使用“ECS”。

    • ECS/FusionCompute:表示是ECS服務(wù)器的鏡像。
    • BMS/Ironic:表示是BMS服務(wù)器的鏡像。
    • IsoImage:表示是使用ISO文件創(chuàng)建的鏡像。

    enterprise_project_id

    String

    表示當(dāng)前鏡像所屬的企業(yè)項目。

    • 取值為0或無該值,表示屬于default企業(yè)項目。
    • 取值為UUID,表示屬于該UUID對應(yīng)的企業(yè)項目。

      關(guān)于企業(yè)項目ID的獲取及企業(yè)項目特性的詳細信息,請參考“企業(yè)中心總覽”。

    max_ram

    Integer

    表示鏡像支持的最大內(nèi)存,單位為MB。

    min_ram

    Integer

    表示鏡像要求的最小內(nèi)存,單位為MB,默認為0,表示不受限制。

    data_images

    Array of objects

    需要導(dǎo)入的數(shù)據(jù)盤信息。

    外部鏡像文件最多可攜帶3塊數(shù)據(jù)盤,此時系統(tǒng)會創(chuàng)建1塊系統(tǒng)盤、3塊數(shù)據(jù)盤。

    詳情請參見表2。

    說明:
    • 使用數(shù)據(jù)盤鏡像文件創(chuàng)建數(shù)據(jù)盤鏡像時,數(shù)據(jù)盤鏡像的操作系統(tǒng)類型將和系統(tǒng)盤鏡像保持一致。
    • 表2中的其他參數(shù)(如name、description、tags)如果有值,系統(tǒng)以data_images中的值為準(zhǔn)。

    is_quick_import

    Boolean

    是否使用鏡像文件快速導(dǎo)入方式,導(dǎo)入系統(tǒng)盤鏡像。

    • 是,配置為true。
    • 否,配置為false。

    關(guān)于鏡像文件快速導(dǎo)入的約束與限制請參見鏡像文件快速導(dǎo)入

    architecture

    String

    鏡像的架構(gòu)類型。取值包括:

    • x86
    • arm

    默認使用“x86”。

    說明:

    當(dāng)架構(gòu)類型為arm時,鏡像引導(dǎo)方式將自動轉(zhuǎn)為UEFI。

    表2 data_images字段說明

    參數(shù)

    是否必選

    參數(shù)類型

    描述

    name

    String

    鏡像名稱。

    name參數(shù)說明請參見鏡像屬性。

    description

    String

    鏡像描述信息。默認為空。

    支持字母、數(shù)字、中文等,不支持回車、<、>,長度不能超過1024個字符。

    _description參數(shù)說明請參見鏡像屬性。

    image_url

    String

    OBS桶中外部鏡像文件地址。

    格式為“<OBS桶名>:<OBS鏡像文件名稱>”。

    • “OBS桶名”獲取方式:
      1. 登錄控制臺,選擇“存儲 > 對象存儲服務(wù)”。

        在下方OBS桶列表欄顯示所有已創(chuàng)建的OBS桶。

      2. 查看當(dāng)前Region下,用于存放外部鏡像文件的“桶名稱”。
    • “OBS鏡像文件名稱”獲取方式:
      1. 登錄控制臺,選擇“存儲 > 對象存儲服務(wù)”。

        在下方OBS桶列表欄顯示所有已創(chuàng)建的OBS桶。

      2. 查看當(dāng)前Region下,用于存放外部鏡像文件的“桶名稱”。
      3. 單擊桶名稱,進入對應(yīng)OBS桶詳情頁。
      4. 在左側(cè)目錄中選擇“對象”,查看當(dāng)前OBS桶中的對象,并記錄用于制作鏡像的外部鏡像文件名稱。
    說明:

    此處的OBS桶和鏡像文件的存儲類別必須是OBS標(biāo)準(zhǔn)存儲。

    min_disk

    Integer

    最小數(shù)據(jù)盤大小。

    單位:GB

    取值范圍:1~2048GB

    is_quick_import

    Boolean

    當(dāng)前數(shù)據(jù)盤鏡像是否使用鏡像文件快速導(dǎo)入方式,創(chuàng)建數(shù)據(jù)盤鏡像。

    • 是,配置為true。
    • 否,配置為false。

    關(guān)于鏡像文件快速導(dǎo)入的約束與限制請參見鏡像文件快速導(dǎo)入。

    tags

    Array of strings

    鏡像標(biāo)簽列表。默認為空。

    tag的參數(shù)說明請參見鏡像標(biāo)簽數(shù)據(jù)格式。

    tags和image_tags只能使用一個。

    image_tags

    Array of objects

    新規(guī)范的鏡像標(biāo)簽列表。默認為空。

    image_tags參數(shù)說明請參見鏡像標(biāo)簽數(shù)據(jù)格式

    tags和image_tags只能使用一個。

  • 使用數(shù)據(jù)盤制作系統(tǒng)盤鏡像時的請求參數(shù)

    參數(shù)

    是否必選

    參數(shù)類型

    描述

    name

    String

    系統(tǒng)盤鏡像名稱。

    name參數(shù)說明請參見鏡像屬性。

    volume_id

    String

    數(shù)據(jù)盤的卷ID。

    os_version

    String

    操作系統(tǒng)版本。

    os_version的具體取值請參見相關(guān)參數(shù)取值列表,請嚴格按照列表要求填寫該值,否則可能會引起制作的系統(tǒng)盤鏡像不可用。

    制作系統(tǒng)盤鏡像過程中,如果系統(tǒng)能獲取到卷中的操作系統(tǒng),則以卷中的操作系統(tǒng)版本為準(zhǔn),此時,設(shè)置的os_version無效。如果系統(tǒng)無法獲取到卷中的操作系統(tǒng),此時,系統(tǒng)以輸入的os_version版本為準(zhǔn)。

    type

    Sting

    鏡像的類型。

    取值為ECS、BMS、FusionCompute、Ironic。

    默認使用ECS。

    description

    String

    鏡像描述信息,默認為空。

    參數(shù)說明請參見鏡像屬性

    • 支持字母、數(shù)字、中文等。
    • 不支持回車、<、>。
    • 長度不能超過1024個字符。

    min_ram

    Integer

    鏡像運行需要的最小內(nèi)存,單位為MB。

    參數(shù)取值依據(jù)云服務(wù)器的規(guī)格限制,默認設(shè)置為0。

    云服務(wù)器的規(guī)格限制,請參見規(guī)格清單

    max_ram

    Integer

    鏡像運行需要的最大內(nèi)存,單位為MB。

    參數(shù)取值依據(jù)云服務(wù)器的規(guī)格限制,默認設(shè)置為0。

    云服務(wù)器的規(guī)格限制,請參見規(guī)格清單。

    tags

    Array of strings

    鏡像標(biāo)簽列表,默認為空。

    tags和image_tags只能使用一個。

    image_tags

    Array of objects

    新規(guī)范的鏡像標(biāo)簽列表,默認為空。

    tags和image_tags只能使用一個。

    enterprise_project_id

    String

    表示當(dāng)前鏡像所屬的企業(yè)項目。

    • 取值為0或無該值,表示屬于default企業(yè)項目。
    • 取值為UUID,表示屬于該UUID對應(yīng)的企業(yè)項目。

      關(guān)于企業(yè)項目ID的獲取及企業(yè)項目特性的詳細信息,請參考“企業(yè)中心總覽”。

請求示例

  • 使用云服務(wù)器制作系統(tǒng)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為tags,虛擬機ID為“877a2cda-ba63-4e1e-b95f-e67e48b6129a”。
    POST https://{Endpoint}/v2/cloudimages/action
    
    {
        "name": "ims_test",
        "description": "云服務(wù)器制作系統(tǒng)盤鏡像",
        "instance_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
        "tags": [
            "aaa.111",
            "bbb.333",
            "ccc.444"
        ]
    }
  • 使用云服務(wù)器數(shù)據(jù)盤制作數(shù)據(jù)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為tags,卷ID為“c5dfbd0c-bf0a-4798-a453-61dc6b54aa30”。
    POST https://{Endpoint}/v2/cloudimages/action
    {
           "data_images": [{"name": "ims_data_image_test",
           "description": "云服務(wù)器數(shù)據(jù)盤制作數(shù)據(jù)盤鏡像",
           "volume_id": "c5dfbd0c-bf0a-4798-a453-61dc6b54aa30",
           "tags": [
                      "aaa.111",
                      "bbb.333",
                      "ccc.444"
                  ]
           }]
    }
    
  • 使用上傳至OBS桶中的外部鏡像文件制作鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為tags,OBS桶中外部鏡像文件地址為“ims-image:centos70.qcow2”。
    POST https://{Endpoint}/v2/cloudimages/action
    {
          "name": "ims_test_file",
          "description": "OBS文件制作鏡像",
          "image_url": "ims-image:centos70.qcow2",
          "os_version": "CentOS 7.0 64bit",
          "min_disk": 40,
          "tags": [  
                "aaa.111",  
                "bbb.333",  
                "ccc.444"  
          ]     
    }
    
  • 使用云服務(wù)器制作系統(tǒng)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為image_tags,虛擬機ID為“877a2cda-ba63-4e1e-b95f-e67e48b6129a”。
    POST https://{Endpoint}/v2/cloudimages/action
    {
        "name": "ims_test",
        "description": "云服務(wù)器制作系統(tǒng)盤鏡像",
        "instance_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
        "image_tags": [
            {
                "key": "key2",
                "value": "value2"
            },
            {
                "key": "key1",
                "value": "value1"
            }
        ]
    }
  • 使用云服務(wù)器數(shù)據(jù)盤制作數(shù)據(jù)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為image_tags,卷ID為“c5dfbd0c-bf0a-4798-a453-61dc6b54aa30”。
    POST /v2/cloudimages/action
    {
           "data_images": [{"name": "ims_data_image_test",
           "description": "云服務(wù)器數(shù)據(jù)盤制作數(shù)據(jù)盤鏡像",
           "volume_id": "c5dfbd0c-bf0a-4798-a453-61dc6b54aa30",
           "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}]
           }]
    }
    
  • 使用上傳至OBS桶中的外部鏡像文件制作鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為image_tags,OBS桶中外部鏡像文件地址為“ims-image:centos70.qcow2”。
    POST https://{Endpoint}/v2/cloudimages/action
    {
           "name": "ims_test_file",
           "description": "OBS文件制作鏡像",
           "image_url": "ims-image:centos70.qcow2",
           "os_version": "CentOS 7.0 64bit",
           "min_disk": 40,
           "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}]    
    }
    
  • 使用數(shù)據(jù)盤制作系統(tǒng)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為tags,卷ID為 "877a2cda-ba63-4e1e-b95f-e67e48b6129a"。
    POST https://{Endpoint}/v2/cloudimages/action
    {
            "name": "ims_test",
            "description": "數(shù)據(jù)盤制作系統(tǒng)盤鏡像",
            "volume_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
            "type": "ECS",
            "os_version": "CentOS 7.0 64bit",
            "tags": [
                    "aaa.111",
                    "bbb.333",
                    "ccc.444" 
               ]
     } 
    
  • 使用數(shù)據(jù)盤制作系統(tǒng)盤鏡像,其中,鏡像標(biāo)簽數(shù)據(jù)格式為image_tags,卷ID為“877a2cda-ba63-4e1e-b95f-e67e48b6129a”。
    POST https://{Endpoint}/v2/cloudimages/action
    {
            "name": "ims_test",
            "description": "數(shù)據(jù)盤制作系統(tǒng)盤鏡像",
            "volume_id": "877a2cda-ba63-4e1e-b95f-e67e48b6129a",
            "type": "ECS",
            "os_version": "CentOS 7.0 64bit",
            "image_tags": [{"key":"key2","value":"value2"},{"key":"key1","value":"value1"}] 
     } 
    

響應(yīng)消息

  • 響應(yīng)參數(shù)

    參數(shù)

    參數(shù)類型

    描述

    job_id

    String

    異步任務(wù)ID。

    詳情請參見異步任務(wù)查詢

  • 響應(yīng)樣例
    STATUS CODE 200
    {
        "job_id": "8a12fc664fb4daa3014fb4e581380005"
    }
    

返回值

  • 正常

    200

  • 異常

    返回值

    說明

    400 Bad Request

    請求錯誤,具體返回錯誤碼請參見錯誤碼。

    401 Unauthorized

    鑒權(quán)失敗。

    403 Forbidden

    沒有操作權(quán)限。

    404 Not Found

    找不到資源。

    500 Internal Server Error

    服務(wù)內(nèi)部錯誤。

    503 Service Unavailable

    服務(wù)不可用。