第 1 章 先决条件
您可以使用安装程序置备的安装在 IBM Cloud® Bare Metal (Classic) 节点上安装 OpenShift Container Platform。本文档描述了在 IBM Cloud® 节点上安装 OpenShift Container Platform 时的先决条件和步骤。
红帽仅在置备网络上支持 IPMI 和 PXE。红帽尚未测试 Red Hat Fish、虚拟介质或其他补充技术,如 IBM Cloud® 部署的安全引导。需要 provisioning 网络。
OpenShift Container Platform 安装程序置备的安装需要:
- 安装了 Red Hat Enterprise Linux CoreOS (RHCOS) 8.x 的一个节点,用于运行置备程序
- 三个 control plane 节点
- 一个可路由的网络
- 一个 provisioning 网络
在 IBM Cloud® Bare Metal (Classic) 上启动 OpenShift Container Platform 安装程序置备的安装前,需要满足以下先决条件和要求。
1.1. 设置 IBM Cloud Bare Metal (Classic) 基础架构
要在 IBM Cloud® Bare Metal (Classic) 基础架构上部署 OpenShift Container Platform 集群,您必须首先置备 IBM Cloud® 节点。
					红帽支持 provisioning 网络上的 IPMI 和 PXE。红帽尚未测试 Red Hat Fish、虚拟介质或其他补充技术,如 IBM Cloud® 部署的安全引导。provisioning 网络是必需的。
				
您可以使用 IBM Cloud® API 自定义 IBM Cloud® 节点。在创建 IBM Cloud® 节点时,您必须考虑以下要求:
1.1.1. 每个集群使用一个数据中心
OpenShift Container Platform 集群中的所有节点都必须在同一 IBM Cloud® 数据中心中运行。
1.1.2. 创建公共和私有 VLAN
创建具有单个公共 VLAN 和单个私有 VLAN 的所有节点。
1.1.3. 确定子网有足够的 IP 地址
					IBM Cloud® 公共 VLAN 子网默认使用一个 /28 前缀,该前缀提供 16 个 IP 地址。这足以一个包含三个 control plane 节点、四个 worker 节点以及两个用于 baremetal 网络上的 API VIP 和 Ingress VIP 的集群。对于较大的集群,可能需要一个较小的前缀。
				
					IBM Cloud® 私有 VLAN 子网默认使用 /26 前缀,该前缀提供 64 个 IP 地址。IBM Cloud® Bare Metal (Classic) 使用专用网络 IP 地址访问每个节点的 Baseboard Management Controller (BMC)。OpenShift Container Platform 为 provisioning 网络创建一个额外的子网。用于 provisioning 网络子网路由的网络流量,通过专用 VLAN 进行路由。对于较大的集群,可能需要一个较小的前缀。
				
| IP 地址 | prefix | 
|---|---|
| 32 | 
									 | 
| 64 | 
									 | 
| 128 | 
									 | 
| 256 | 
									 | 
1.1.4. 配置 NIC
OpenShift Container Platform 使用两个网络部署:
- 
							provisioning:provisioning网络是一个不可路由的网络,用于在作为 OpenShift Container Platform 集群一部分的每个节点上置备底层操作系统。
- 
							baremetal:baremetal网络是一个可路由的网络。您可以使用任何 NIC 顺序与baremetal网络进行接口,只要它不是provisioningNetworkInterface配置设置中指定的 NIC,或者 NIC 关联到用于provisioning网络的节点的bootMACAddress配置设置。
虽然集群节点可以包含多于 2 个 NIC,但安装过程只关注于前两个 NIC:例如:
| NIC | 网络 | VLAN | 
|---|---|---|
| NIC1 | 
									 | <provisioning_vlan> | 
| NIC2 | 
									 | <baremetal_vlan> | 
					在上例中,所有 control plane 和 worker 节点上的 NIC1 连接到仅用于安装 OpenShift Container Platform 集群的不可路由网络(provisioning)。所有 control plane 和 worker 节点上的 NIC2 连接到 routable baremetal 网络。
				
| PXE | 引导顺序 | 
|---|---|
| 
									NIC1 PXE-enabled  | 1 | 
| 
									NIC2  | 2 | 
						确保用于 provisioning 网络的 NIC 上启用了 PXE,并在所有其他 NIC 上禁用。
					
1.1.5. 配置规范名称
					客户端通过 baremetal 网络访问 OpenShift Container Platform 集群节点。配置 IBM Cloud® 子域或子区,其中规范名称扩展是集群名称。
				
<cluster_name>.<domain>
<cluster_name>.<domain>例如:
test-cluster.example.com
test-cluster.example.com1.1.6. 创建 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 节点加入集群。
					
1.1.7. 网络时间协议(NTP)
集群中的每个 OpenShift Container Platform 节点都必须有权访问 NTP 服务器。OpenShift Container Platform 节点使用 NTP 来同步其时钟。例如,集群节点使用需要验证的 SSL 证书,如果节点之间的日期和时间未同步,则可能会失败。
在每个群集节点的 BIOS 设置中定义一致的时钟日期和时间格式,或者安装可能会失败。
1.1.8. 配置 DHCP 服务器
					IBM Cloud® Bare Metal (Classic) 不会在公共或私有 VLAN 上运行 DHCP。在置备 IBM Cloud® 节点后,您必须为公共 VLAN 设置 DHCP 服务器,这与 OpenShift Container Platform 的 baremetal 网络对应。
				
分配给每个节点的 IP 地址不需要与 IBM Cloud® Bare Metal (Classic) 置备系统分配的 IP 地址匹配。
详情请参阅"配置公共子网"部分。
1.1.9. 确保 BMC 访问权限
					仪表板上每个节点的"远程管理"页面包含节点的智能平台管理接口(IPMI)凭证。默认 IPMI 特权阻止用户进行某些引导目标更改。您必须将特权级别更改为 OPERATOR,以便 Ironic 能够进行这些更改。
				
					在 install-config.yaml 文件中,将 privilegelevel 参数添加到用于配置每个 BMC 的 URL 中。如需了解更多详细信息,请参阅"配置 install-config.yaml 文件"部分。例如:
				
ipmi://<IP>:<port>?privilegelevel=OPERATOR
ipmi://<IP>:<port>?privilegelevel=OPERATOR
					或者,联系 IBM Cloud® 支持并请求它们将 IPMI 权限增加到 ADMINISTRATOR。
				
1.1.10. 创建裸机服务器
					在 IBM Cloud® dashboard 中,进入到 Create resource 
					或者,您可以使用 ibmcloud CLI 实用程序创建裸机服务器。例如:
				
有关装 IBM Cloud® CLI 的详情,请参阅安装独立 IBM Cloud® CLI。
IBM Cloud® 服务器可能需要 3-5 小时才能使用。