8.2. 使用 GCE 镜像创建一个虚拟机实例

镜像构建,上传后,云注册过程状态被标记为 Ready,您可以使用 GCE 镜像创建虚拟机(VM)实例。

先决条件

  • 您有您创建的镜像的通用唯一标识符(UUID)。
  • 您可以访问 Image-builder 服务 API 端点。
  • 您可以在 Google Cloud Platform 访问项目详情。
  • 您可以从浏览器访问 Google Cloud Shell

流程

  1. 在 Insights 镜像构建器仪表盘中,复制您创建的镜像的镜像 UUID
  2. 访问 /composes/{composeId} API 端点
  3. Try it Out 按钮激活 composeId 字符串路径。
  4. 在 API 端点的 composes/{composeId} 字段中输入 UUID
  5. Execute。API 端点在 Response body 中生成一个响应,例如:

    {
      "image_status": {
        "status": "success",
        "upload_status": {
          "options": {
            "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086",
            "project_id": "red-hat-image-builder"
          },
          "status": "success",
          "type": "gcp"
        }
      }
    }
  6. Response body 字段中,复制 image_nameproject_id,以从 Google Cloud Platform 环境访问镜像。
  7. 从浏览器访问 Google Cloud Shell
  8. 将 Google Cloud Platform Project ID 设置为默认的 GCP 项目。您可以通过访问 Google Cloud Platform 仪表盘 找到项目的产品 ID。

    $ gcloud config set project PROJECT_ID
  9. Authorize Cloud Shell 窗口提示中,单击 Authorize 以允许这个和将来需要您凭证的调用。
  10. 使用 Google Cloud Shell 中的 gcloud 命令,使用镜像创建虚拟机实例:

    $ gcloud compute instances create INSTANCE_NAME \
      --image-project PROJECT_ID_FROM_RESPONSE \
      --image IMAGE_NAME \
      --zone GCP_ZONE

    其中:

    • INSTANCE_NAME 是您提供给实例的名称;
    • PROJECT_ID_FROM_RESPONSEResponse body 生成的 project_id
    • IMAGE_NAMEResponse body 生成的 image_name
    • GCP_ZONE 是要创建的实例的 GCP 区域。

验证

  1. 验证是否 Compute Engine 创建了虚拟机:

    $ gcloud compute instances describe INSTANCE_NAME
  2. 通过 SSH 连接到虚拟机实例:

    $ gcloud compute ssh --project=PROJECT_ID --zone=ZONE INSTANCE_NAME