第 11 章 在 IBM Cloud 上部署安装程序置备的集群


11.1. 先决条件

您可以使用安装程序置备的安装在 IBM Cloud® 节点上安装 OpenShift Container Platform。本文档描述了在 IBM Cloud 节点上安装 OpenShift Container Platform 时的先决条件和步骤。

重要

红帽支持 provisioning 网络上的 IPMI 和 PXE。红帽尚未测试 Red Hat Fish、虚拟介质或其他补充技术,如 IBM 云部署的安全引导。provisioning 网络是必需的。

OpenShift Container Platform 安装程序置备的安装需要:

  • 安装了 Red Hat Enterprise Linux CoreOS (RHCOS) 8.x 的一个置备程序节点
  • 三个 control plane 节点
  • 一个可路由的网络
  • 一个用于置备节点的网络

在 IBM Cloud 上启动 OpenShift Container Platform 安装程序置备安装前,请满足以下前提条件和要求。

11.1.1. 设置 IBM Cloud Infrastructure

要在 IBM Cloud® 上部署 OpenShift Container Platform 集群,您必须首先置备 IBM Cloud 节点。

重要

红帽支持 provisioning 网络上的 IPMI 和 PXE。红帽尚未测试 Red Hat Fish、虚拟介质或其他补充技术,如 IBM 云部署的安全引导。provisioning 网络是必需的。

您可以使用 IBM Cloud API 自定义 IBM Cloud 节点。在创建 IBM Cloud 节点时,您必须考虑以下要求:

每个集群使用一个数据中心

OpenShift Container Platform 集群中的所有节点必须在同一 IBM Cloud 数据中心中运行。

创建公共和私有 VLAN

创建具有单个公共 VLAN 和单个私有 VLAN 的所有节点。

确定子网有足够的 IP 地址

IBM Cloud public VLAN 子网默认使用一个 /28 前缀,该前缀提供 16 个 IP 地址。这足以一个包含三个 control plane 节点、四个 worker 节点以及两个用于 baremetal 网络上的 API VIP 和 Ingress VIP 的集群。对于较大的集群,可能需要一个较小的前缀。

IBM Cloud 私有 VLAN 子网默认使用一个 /26 前缀,该前缀提供 64 个 IP 地址。IBM Cloud 将使用专用网络 IP 地址来访问每个节点的基板管理控制器(BMC)。OpenShift Container Platform 为 provisioning 网络创建一个额外的子网。用于 provisioning 网络子网路由的网络流量,通过专用 VLAN 进行路由。对于较大的集群,可能需要一个较小的前缀。

表 11.1. 每个前缀的 IP 地址
IP 地址prefix

32

/27

64

/26

128

/25

256

/24

配置 NIC

OpenShift Container Platform 使用两个网络部署:

  • provisioningprovisioning 网络是一个不可路由的网络,用于在作为 OpenShift Container Platform 集群一部分的每个节点上置备底层操作系统。
  • baremetalbaremetal 网络是一个可路由的网络。您可以使用任何 NIC 顺序与 baremetal 网络进行接口,只要它不是 provisioningNetworkInterface 配置设置中指定的 NIC,或者 NIC 关联到用于 provisioning 网络的节点的 bootMACAddress 配置设置。

虽然集群节点可以包含多于 2 个 NIC,但安装过程只关注于前两个 NIC:例如:

NIC网络VLAN

NIC1

provisioning

<provisioning_vlan>

NIC2

baremetal

<baremetal_vlan>

在上例中,所有 control plane 和 worker 节点上的 NIC1 连接到仅用于安装 OpenShift Container Platform 集群的不可路由网络(provisioning)。所有 control plane 和 worker 节点上的 NIC2 连接到 routable baremetal 网络。

PXE引导顺序

NIC1 PXE-enabled provisioning 网络

1

NIC2 baremetal 网络.

2

注意

确保用于 provisioning 网络的 NIC 上启用了 PXE,并在所有其他 NIC 上禁用。

配置规范名称

客户端通过 baremetal 网络访问 OpenShift Container Platform 集群节点。配置 IBM Cloud 子域或子区,其中规范名称扩展是集群名称。

<cluster_name>.<domain>

例如:

test-cluster.example.com
创建 DNS 条目

您必须为以下内容创建 DNS A 记录条目,解析为公共子网中未使用的 IP 地址:

用法主机名IP

API

api.<cluster_name>.<domain>

<ip>

Ingress LB(apps)

*.apps.<cluster_name>.<domain>

<ip>

在置备后,control plane 和 worker 节点已经有 DNS 条目。

下表提供了完全限定域名的示例。API 和 Nameserver 地址以规范名称扩展开头。control plane 和 worker 节点的主机名是示例,您可以使用您喜欢的任何主机命名约定。

用法主机名IP

API

api.<cluster_name>.<domain>

<ip>

Ingress LB(apps)

*.apps.<cluster_name>.<domain>

<ip>

provisioner 节点

provisioner.<cluster_name>.<domain>

<ip>

Master-0

openshift-master-0.<cluster_name>.<domain>

<ip>

Master-1

openshift-master-1.<cluster_name>.<domain>

<ip>

Master-2

openshift-master-2.<cluster_name>.<domain>

<ip>

Worker-0

openshift-worker-0.<cluster_name>.<domain>

<ip>

Worker-1

openshift-worker-1.<cluster_name>.<domain>

<ip>

Worker-n

openshift-worker-n.<cluster_name>.<domain>

<ip>

OpenShift Container Platform 包含使用集群成员资格信息来生成 A 记录的功能。这会将节点名称解析为其 IP 地址。使用 API 注册节点后,集群可以在不使用 CoreDNS-mDNS 的情况下分散节点信息。这可消除与多播 DNS 关联的网络流量。

重要

置备 IBM Cloud 节点后,您必须为外部 DNS 上的 api.<cluster_name>.<domain> 域名创建一个 DNS 条目,因为删除 CoreDNS 会导致本地条目消失。未能在外部 DNS 服务器中为 api.<cluster_name>.<domain> 域名创建 DNS 记录会阻止 worker 节点加入集群。

网络时间协议(NTP)

集群中的每个 OpenShift Container Platform 节点都必须有权访问 NTP 服务器。OpenShift Container Platform 节点使用 NTP 来同步其时钟。例如,集群节点使用需要验证的 SSL 证书,如果节点之间的日期和时间未同步,则可能会失败。

重要

在每个群集节点的 BIOS 设置中定义一致的时钟日期和时间格式,或者安装可能会失败。

配置 DHCP 服务器

IBM Cloud 不在公共或私有 VLAN 上运行 DHCP。在置备 IBM Cloud 节点后,您必须为公共 VLAN 设置 DHCP 服务器,这与 OpenShift Container Platform 的 baremetal 网络对应。

注意

分配给每个节点的 IP 地址不需要与 IBM Cloud provisioning 系统分配的 IP 地址匹配。

详情请参阅"配置公共子网"部分。

确保 BMC 访问权限

仪表板上每个节点的"远程管理"页面包含节点的智能平台管理接口(IPMI)凭证。默认 IPMI 特权阻止用户进行某些引导目标更改。您必须将特权级别更改为 OPERATOR,以便 Ironic 能够进行这些更改。

install-config.yaml 文件中,将 privilegelevel 参数添加到用于配置每个 BMC 的 URL 中。如需了解更多详细信息,请参阅"配置 install-config.yaml 文件"部分。例如:

ipmi://<IP>:<port>?privilegelevel=OPERATOR

或者,联系 IBM 云支持并请求它们将 IPMI 权限增加到 ADMINISTRATOR

创建裸机服务器

进入 Create resource Bare Metal Server,在 IBM Cloud 仪表板中创建裸机服务器。

或者,您可以使用 ibmcloud CLI 实用程序创建裸机服务器。例如:

$ ibmcloud sl hardware create --hostname <SERVERNAME> \
                            --domain <DOMAIN> \
                            --size <SIZE> \
                            --os <OS-TYPE> \
                            --datacenter <DC-NAME> \
                            --port-speed <SPEED> \
                            --billing <BILLING>

有关装 IBM Cloud CLI 的详情,请参阅安装独立 IBM Cloud CLI

注意

IBM 云服务器可能需要 3-5 个小时才能使用。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.