4.4. 在 GCP 上使用多架构计算机器创建集群
要使用多架构计算机器创建 Google Cloud Platform (GCP)集群,您必须首先使用多架构安装程序二进制文件创建一个单架构 GCP 安装程序置备集群。如需有关 AWS 安装的更多信息,请参阅使用自定义在 GCP 上安装集群。然后,您可以在 GCP 集群中添加 ARM64 计算机器集。
GCP 的 ARM64 机器目前不支持安全引导
4.4.1. 验证集群兼容性 复制链接链接已复制到粘贴板!
在开始在集群中添加不同架构的计算节点前,您必须验证集群是否兼容多架构。
先决条件
-
已安装 OpenShift CLI (
oc
)
流程
您可以运行以下命令来检查集群是否使用构架有效负载:
oc adm release info -o jsonpath="{ .metadata.metadata}"
$ oc adm release info -o jsonpath="{ .metadata.metadata}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
如果您看到以下输出,集群将使用多架构有效负载:
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 然后,您可以开始在集群中添加多架构计算节点。
如果您看到以下输出,集群不使用多架构有效负载:
{ "url": "https://access.redhat.com/errata/<errata_version>" }
{ "url": "https://access.redhat.com/errata/<errata_version>" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要要迁移集群以便集群支持多架构计算机器,请按照使用多架构计算机器迁移到集群的步骤进行操作。
4.4.2. 在 GCP 集群中添加 ARM64 计算机器集 复制链接链接已复制到粘贴板!
要使用多架构计算机器配置集群,您必须创建一个 GCP ARM64 计算机器集。这会在集群中添加 ARM64 计算节点。
先决条件
-
已安装 OpenShift CLI(
oc
)。 - 您可以使用安装程序创建带有多架构安装程序二进制文件的 AMD64 单架构 AWS 集群。
流程
创建和修改计算机器集,这会控制集群中的 ARM64 计算节点:
oc create -f gcp-arm64-machine-set-0.yaml
$ oc create -f gcp-arm64-machine-set-0.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 部署 ARM64 计算节点的 GCP YAML 计算机器集示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定基于置备集群时所设置的集群 ID 的基础架构 ID。您可以运行以下命令来获取基础架构 ID:
oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
$ oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 2
- 指定要添加的角色节点标签。
- 3
- 指定当前计算机器集中使用的镜像的路径。您需要到镜像的路径的项目和镜像名称。
要访问项目和镜像名称,请运行以下命令:
oc get configmap/coreos-bootimages \ -n openshift-machine-config-operator \ -o jsonpath='{.data.stream}' | jq \ -r '.architectures.aarch64.images.gcp'
$ oc get configmap/coreos-bootimages \ -n openshift-machine-config-operator \ -o jsonpath='{.data.stream}' | jq \ -r '.architectures.aarch64.images.gcp'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
"gcp": { "release": "415.92.202309142014-0", "project": "rhcos-cloud", "name": "rhcos-415-92-202309142014-0-gcp-aarch64" }
"gcp": { "release": "415.92.202309142014-0", "project": "rhcos-cloud", "name": "rhcos-415-92-202309142014-0-gcp-aarch64" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用输出中的
project
和name
参数,在机器集中创建 image 字段的路径。镜像的路径应该采用以下格式:projects/<project>/global/images/<image_name>
$ projects/<project>/global/images/<image_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 4
- 可选:以
key:value
对的形式指定自定义元数据。有关用例,请参阅 GCP 文档,以查看设置自定义元数据。 - 5
- 指定支持 ARM64 的机器类型。如需更多信息,请参阅"添加资源"的 64 位 ARM 基础架构上为 GCP 测试的实例类型。
- 6
- 指定用于集群的 GCP 项目的名称。
- 7
- 指定区域,如
us-central1
。确保您选择的区域提供 64 位 ARM 机器。
验证
输入以下命令来查看计算机器集列表:
oc get machineset -n openshift-machine-api
$ oc get machineset -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 然后,您可以看到创建的 ARM64 机器集。
输出示例
NAME DESIRED CURRENT READY AVAILABLE AGE <infrastructure_id>-gcp-arm64-machine-set-0 2 2 2 2 10m
NAME DESIRED CURRENT READY AVAILABLE AGE <infrastructure_id>-gcp-arm64-machine-set-0 2 2 2 2 10m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您可以使用以下命令检查节点是否就绪并可访问:
oc get nodes
$ oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow