將映像資料夾複製到新資料存放區後,您必須更新每個映像上的位置設定以反映新資料存放區。

必要條件

  • 確認映像資料夾已複製到新資料存放區。

  • 確認新資料存放區上的映像資料夾名稱和相對路徑與先前資料存放區上的資料夾名稱和路徑相同。

  • 確認您知道要更新之映像的映像識別碼值。

程序

  1. 針對所有要移轉的映像重複此程序。
  2. 使用 SSH 以管理員身分登入 VMware Integrated OpenStack Manager。
  3. 使用 SSH 登入 controller01 節點。
  4. 切換至根使用者。
    sudo su -
  5. 執行 cloudadmin.rc 檔案。
    source cloudadmin.rc
  6. (選擇性) 檢視映像清單。
    glance image-list
  7. (選擇性) 取得特定映像的位置。
    備註: 您必須知道映像識別碼才能指定映像。
    glance --os-image-api-version 2 image-show <image_id>

    映像位置為 locations 參數所指示的 URL。

    vsphere://<vcenter_ip>/folder/<image_folder_name>/<image_id>dcPath=<path_to_datacenter>&dsName=<old_datastore_name>

    例如:
    vsphere://10.20.123.456/folder/images/6c4a7e0d-65e7-4f3c-9dde-0de75f729a0c
    ?dcPath=Datacenter1&dsName=old_ds
  8. 更新映像的位置 URL 來反映目的地資料存放區,以完成單一映像的移轉。
    1. 將新位置新增至映像組態。
      glance --os-image-api-version 2 location-add <image_id> --url <new_url>
      選項 說明
      image_id

      指定要修改的映像。

      new_url

      新 URL 與舊 URL 相同,除非 dsName 引數指定了新資料存放區的名稱。

      vsphere://<vcenter_ip>/folder/<image_folder_name>/<image_id>dcPath=<path_to_datacenter>&dsName=<new_datastore_name>

      如果命令傳回 400 錯誤的要求: 位置無效訊息,請確認目的地資料存放區上映像的檔案路徑正確無誤。

    2. 從映像組態移除舊位置。
      glance --os-image-api-version 2 location-delete <image_id> --url <old_url>
    3. 再次檢視映像資訊以確認 locations 參數正確反映了新資料存放區。
      glance --os-image-api-version 2 image-show <image_id>
    映像已成功移轉。