Red Hat Training

A Red Hat training course is available for RHEL 8

5.4. 将 RHEL 镜像上传到 GCP

要将 RHEL 8 镜像上传到 Google Cloud Platform(GCP),请按照本节中的流程操作。

5.4.1. 在 GCP 上创建新项目

完成以下步骤,来在 Google Cloud Platform(GCP)上创建一个新项目。

先决条件

  • 您必须拥有 GCP 帐户。如果没有,请参阅 Google Cloud 了解更多信息。

流程

  1. 启动 GCP 控制台
  2. 点击 Google Cloud Platform 右侧的下拉菜单。
  3. 在弹出菜单中点击 NEW PROJECT
  4. New Project 窗口中输入新项目的名称。
  5. 检查 Organization。如果需要,点击下拉菜单更改机构。
  6. 确认您的父机构或文件夹的 位置。如果需要,点 Browse 搜索并更改这个值。
  7. 点击 CREATE 创建新 GCP 项目。

    注意

    安装 Google Cloud SDK 后,您可以使用 gcloud projects create CLI 命令来创建项目。例如:

    # gcloud projects create my-gcp-project3 --name project3

    该示例创建了一个 项目 ID 为 my-gcp-project3 ,项目名称为 project3 的项目。如需更多信息,请参阅 gcloud 项目创建

5.4.2. 安装 Google Cloud SDK

完成以下步骤以安装 Google Cloud SDK。

流程

  1. 按照下载和提取 Google Cloud SDK 归档的 GCP 说明。详情请查看 GCP 文档中的 Linux Quickstart
  2. 按照初始化 Google Cloud SDK 的说明。

    注意

    初始化 Google Cloud SDK 后,您可以使用 gcloud CLI 命令来执行任务,并获取有关项目和实例的信息。例如,您可以使用 gcloud compute project-info describe --project <project-name> 命令来显示项目信息。

5.4.3. 为 Google Compute Engine 创建 SSH 密钥

执行以下流程,通过 GCE 生成 SSH 密钥并注册 SSH 密钥,以便您可以使用其公共 IP 地址直接 SSH 到实例。

流程

  1. 使用 ssh-keygen 命令来生成用于 GCE 的 SSH 密钥对。

    # ssh-keygen -t rsa -f ~/.ssh/google_compute_engine
  2. GCP Console Dashboard 页面 中,点击 Google Cloud Console banner 左侧的 Navigation 菜单,并选择 Compute Engine,然后选择 Metadata
  3. SSH Keys,然后点 Edit
  4. 输入 ~/.ssh/google_compute_engine.pub 文件中生成的结果,然后单击 Save

    现在,您可以使用标准 SSH 连接到实例。

    # ssh -i ~/.ssh/google_compute_engine <username>@<instance_external_ip>
注意

您可以运行 gcloud compute config-ssh 命令,使用实例的别名来填充配置文件。别名允许按实例名称简单的 SSH 连接。有关 gcloud compute config-ssh 命令的详情,请参考 gcloud compute config-ssh

5.4.4. 在 GCP Storage 中创建存储桶

导入到 GCP 需要 GCP Storage Bucket。完成以下步骤以创建存储桶。

流程

  1. 如果您还没有登录到 GCP,请使用以下命令登录。

    # gcloud auth login
  2. 创建存储桶。

    # gsutil mb gs://bucket_name
    注意

    另外,您可以使用 Google Cloud Console 创建存储桶。如需更多信息,请参阅创建存储桶

其它资源

5.4.5. 转换并上传您的镜像到您的 GCP 存储桶

完成以下步骤,将您的镜像转换并上传到您的 GCP 存储桶。示例具有代表性;它们将 qcow2 镜像转换为 raw 格式,然后对该映像进行 tar 操作以便上传。

流程

  1. 运行 qemu-img 命令来转换您的镜像。转换的映像必须具有名称 disk.raw

    # qemu-img convert -f qcow2 -O raw rhel-{ProductNumber}.0-sample.qcow2 disk.raw
  2. 打包镜像。

    # tar --format=oldgnu -Sczf disk.raw.tar.gz disk.raw
  3. 将镜像上传到之前创建的存储桶。上传可能需要几分钟时间。

    # gsutil cp disk.raw.tar.gz gs://bucket_name
  4. Google Cloud Platform 主屏幕中,单击折叠菜单图标,并选择 Storage,然后选择 Browser
  5. 点存储桶的名称。

    打包的镜像列在存储桶名称下。

    注意

    您还可以使用 GCP 控制台上传您的镜像。为此,可单击存储桶的名称,然后单击 Upload files

5.4.6. 从 GCP 存储桶中创建镜像

执行以下步骤从 GCP 存储桶中的对象创建镜像。

流程

  1. 运行以下命令来为 GCE 创建镜像。指定您要创建的镜像的名称、存储桶名称和打包的镜像的名称。

    # gcloud compute images create my-image-name --source-uri gs://my-bucket-name/disk.raw.tar.gz
    注意

    另外,您可以使用 Google Cloud Console 创建镜像。如需更多信息,请参阅创建、删除和弃用自定义镜像

  2. 另外,还可在 GCP Console 中找到该镜像。

    1. 单击 Google Cloud Console 标语左侧的 Navigation 菜单。
    2. 选择 Compute Engine,然后选择 Images

5.4.7. 从镜像创建 Google Compute Engine 实例

完成以下步骤,使用 GCP 控制台配置 GCE 虚拟机实例。

注意

以下流程提供了使用 GCP 控制台创建基本虚拟机实例的说明。如需有关 GCE 虚拟机实例及其配置选项的更多信息,,参阅创建并启动虚拟机实例

流程

  1. GCP Console Dashboard 页面 中,点击 Google Cloud Console banner 左侧的 Navigation 菜单,选择 Compute Engine,然后选择 Images
  2. 选择您的镜像。
  3. Create Instance
  4. Create an instance 页面中,为您的实例输入一个 Name
  5. 选择一个 RegionZone
  6. 选择满足或超过工作负载要求的机器配置
  7. 确保引导磁盘指定了您的镜像名称。
  8. (可选)在 Firewall 下,选择 Allow HTTP trafficAllow HTTPS traffic
  9. Create

    注意

    这些是创建基本实例所需的最小配置选项。根据您的应用程序要求查看其他选项。

  10. 虚拟机实例中查找您的镜像。
  11. 在 GCP Console Dashboard 中,点击 Google Cloud Console banner 左侧的 Navigation 菜单,选择 Compute Engine,然后选择 VM instances

    注意

    或者,您可以使用 gcloud compute instances create CLI 命令来通过镜像创建 GCE 虚拟机实例。下面是一个简单的例子。

    gcloud compute instances create myinstance3 --zone=us-central1-a --image test-iso2-image

    该示例根据现有的 test-iso2-image 映像,在区域 us-central1-a 中创建名为 myinstance3 的虚拟机实例。如需更多信息,请参阅 gcloud 计算实例创建

5.4.8. 连接到您的实例

执行以下步骤使用其公共 IP 地址连接到 GCE 实例。

流程

  1. 运行以下命令以确保您的实例正在运行。命令列出有关 GCE 实例的信息,包括实例是否正在运行,如果正在运行,则列出正在运行的实例的公共 IP 地址。

    # gcloud compute instances list
  2. 使用标准 SSH 连接到您的实例。该示例是使用之前创建的 google_compute_engine 密钥。

    # ssh -i ~/.ssh/google_compute_engine <user_name>@<instance_external_ip>
    注意

    GCP 提供了多种 SSH 到您的实例的方法。如需更多信息,请参阅连接到实例。您还可以使用之前设置的 root 帐户和密码连接到您的实例。

5.4.9. 附加红帽订阅

完成以下步骤以附加您之前通过 Red Hat Cloud Access 程序启用的订阅。

先决条件

  • 您必须已启用您的订阅。

流程

  1. 注册您的系统。

    # subscription-manager register --auto-attach
  2. 附加您的订阅。