11.4. 为 OpenShift Container Platform 准备 PXE 资产
使用以下步骤创建基于代理的安装程序,创建 PXE 引导 OpenShift Container Platform 集群所需的资产。
您在这些步骤中创建的资产将部署单节点 OpenShift Container Platform 安装。您可以使用这些步骤作为基础并根据您的要求修改配置。
请参阅使用基于代理的安装程序安装 OpenShift Container Platform 集群,以了解更多有关基于代理的安装程序可用的配置。
11.4.1. 先决条件 复制链接链接已复制到粘贴板!
- 您可以参阅有关 OpenShift Container Platform 安装和更新 流程的详细信息。
11.4.2. 下载基于代理的安装程序 复制链接链接已复制到粘贴板!
使用这个流程下载安装所需的基于代理的安装程序和 CLI。
流程
- 使用您的登录凭证登录到 OpenShift Container Platform web 控制台。
- 进入到 Datacenter。
- 在本地点 Run Agent-based Installer。
- 为 OpenShift Installer 和命令行界面选择操作系统和架构。
- 点 Download Installer 下载并提取安装程序。
- 通过点 Download pull secret 或 Copy pull secret 下载或复制 pull secret。
-
点 Download command-line tools,将
openshift-install
二进制文件放在PATH
中的目录中。
11.4.3. 创建首选配置输入 复制链接链接已复制到粘贴板!
使用这个流程创建用于创建 PXE 文件的首选配置输入。
流程
运行以下命令来安装
nmstate
依赖项:sudo dnf install /usr/bin/nmstatectl -y
$ sudo dnf install /usr/bin/nmstatectl -y
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
openshift-install
二进制文件放到 PATH 中的目录中。 运行以下命令,创建一个目录来存储安装配置:
mkdir ~/<directory_name>
$ mkdir ~/<directory_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意这是基于代理的安装的首选方法。使用 GitOps ZTP 清单是可选的。
运行以下命令来创建
install-config.yaml
文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定系统架构。有效值为
amd64
,arm64
,ppc64le
, 和s390x
。如果使用带有
multi
有效负载的发行镜像,则可以在不同的架构上安装集群,如arm64
,amd64
,s390x
, 和ppc64le
。否则,您只能在openshift-install version
命令的输出中所显示的发行构架
上安装集群。如需更多信息,请参阅"验证安装基于代理的安装程序集群的受支持架构"。 - 2
- 必需。指定集群名称。
- 3
- 要安装的集群网络插件。默认值
OVNKubernetes
是唯一支持的值。 - 4
- 指定您的平台。注意
对于裸机平台,默认使用
install-config.yaml
文件的 platform 部分中进行的主机设置,除非它们被agent-config.yaml
文件中的配置覆盖。 - 5
- 指定 pull secret。
- 6
- 指定 SSH 公钥。
注意如果将平台设置为
vSphere
或baremetal
,您可以使用三种方式为集群节点配置 IP 地址端点:- IPv4
- IPv6
- IPv4 和 IPv6 并行 (dual-stack)
IPv6 仅在裸机平台上被支持。
双栈网络示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意使用断开连接的镜像 registry 时,您必须将之前为镜像 registry 创建的证书文件添加到
install-config.yaml
文件的additionalTrustBundle
字段中。运行以下命令来创建
agent-config.yaml
文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 此 IP 地址用于确定哪些节点执行 bootstrap 过程,以及运行
assisted-service
组件。当您没有在networkConfig
参数中指定至少一个主机的 IP 地址时,您必须提供 rendezvous IP 地址。如果没有提供此地址,则会从提供的主机的networkConfig
中选择一个 IP 地址。 - 2
- 可选:主机配置。定义的主机数量不能超过
install-config.yaml
文件中定义的主机总数,这是compute.replicas
和controlPlane.replicas
参数的值的总和。 - 3
- 可选:覆盖从动态主机配置协议(DHCP)或反向 DNS 查找中获取的主机名。每个主机必须具有由这些方法提供的唯一主机名。
- 4
- 启用将 Red Hat Enterprise Linux CoreOS (RHCOS)镜像置备到特定设备。安装程序会按照发现设备的顺序检查设备,并将发现的值与 hint 值进行比较。它使用第一个与 hint 值匹配的发现设备。
- 5
- 可选:以 NMState 格式配置主机的网络接口。
可选: 要创建 iPXE 脚本,请将
bootArtifactsBaseURL
添加到agent-config.yaml
文件中:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 其中
<asset_server_URL>
是要将 PXE 资产上传到的服务器的 URL。
11.4.4. 创建 PXE 资产 复制链接链接已复制到粘贴板!
使用以下步骤创建资产和可选脚本,以便在 PXE 基础架构中实现。
流程
运行以下命令来创建 PXE 资产:
openshift-install agent create pxe-files
$ openshift-install agent create pxe-files
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成的 PXE 资产和可选 iPXE 脚本可在
boot-artifacts
目录中找到。带有 PXE 资产和可选 iPXE 脚本的文件系统示例
boot-artifacts ├─ agent.x86_64-initrd.img ├─ agent.x86_64.ipxe ├─ agent.x86_64-rootfs.img └─ agent.x86_64-vmlinuz
boot-artifacts ├─ agent.x86_64-initrd.img ├─ agent.x86_64.ipxe ├─ agent.x86_64-rootfs.img └─ agent.x86_64-vmlinuz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要boot-artifacts
目录的内容因指定的架构而异。注意Red Hat Enterprise Linux CoreOS (RHCOS) 支持主磁盘上的多路径,允许对硬件故障进行更强大的弹性,以实现更高的主机可用性。在代理 ISO 镜像中默认启用多路径,默认
/etc/multipath.conf
配置。将 PXE 资产和可选脚本上传到您的基础架构,以便在引导过程中访问它们。
注意如果您生成 iPXE 脚本,资产的位置必须与添加到
agent-config.yaml
文件中的bootArtifactsBaseURL
匹配。
11.4.5. 手动添加 IBM Z 代理 复制链接链接已复制到粘贴板!
创建 PXE 资产后,您可以添加 IBM Z® 代理。仅将此流程用于 IBM Z® 集群。
根据您的 IBM Z® 环境,您可以从以下选项中选择:
- 使用 z/VM 添加 IBM Z® 代理
- 使用 RHEL KVM 添加 IBM Z® 代理
- 使用逻辑分区 (LPAR) 添加 IBM Z® 代理
目前,IBM Z® (s390x'
) 上的 ISO 引导支持仅适用于 Red Hat Enterprise Linux (RHEL) KVM,这为选择 PXE 或基于 ISO 的安装提供了灵活性。对于使用 z/VM 和逻辑分区 (LPAR) 的安装,只支持 PXE 引导。
11.4.5.1. 使用 z/VM 添加 IBM Z 代理 复制链接链接已复制到粘贴板!
使用以下步骤使用 z/VM 手动添加 IBM Z® 代理。仅对带有 z/VM 的 IBM Z® 集群使用此流程。
流程
为 z/VM 客户机创建一个参数文件:
参数文件示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 对于
coreos.live.rootfs_url
工件,请为您要引导的内核
和initramfs
指定匹配的rootfs
工件。仅支持 HTTP 和 HTTPS 协议。 - 2
- 对于
ip
参数,使用 DHCP 自动分配 IP 地址,或者手动分配 IP 地址,如"在 IBM Z® 和 IBM® LinuxONE 上使用 z/VM 安装集群"中所述。 - 3
- 默认值为
1
。使用 OSA 网络适配器时省略此条目。 - 4
- 对于在 DASD 类型磁盘中安装,请使用
rd.dasd
指定要安装 Red Hat Enterprise Linux CoreOS (RHCOS) 的 DASD。为 FCP 类型磁盘省略此条目。 - 5
- 对于在 FCP 类型磁盘中安装,请使用
rd.zfcp=<adapter>,<wwpn>,<lun>
指定要安装 RHCOS 的 FCP 磁盘。为 DASD 类型磁盘省略这个条目。
所有其他参数保持不变。
将
kernel.img
、common.parm
和initrd.img
文件与 z/VM 客户机虚拟机的虚拟读取器中解放。如需更多信息,请参阅 PUNCH (IBM 文档)。
提示您可以使用
CP PUNCH
命令,或者使用 Linux (vmur
命令) 在两个 z/VM 虚拟机之间传输文件。- 登录到 bootstrap 机器上的对话监控系统 (CMS)。
运行以下命令,从 reader IPL bootstrap 机器:
ipl c
$ ipl c
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅 IPL (IBM 文档)。
11.4.5.2. 使用 RHEL KVM 添加 IBM Z 代理 复制链接链接已复制到粘贴板!
使用以下步骤使用 RHEL KVM 手动添加 IBM Z® 代理。仅将此流程用于带有 RHEL KVM 的 IBM Z® 集群。
流程
- 引导 RHEL KVM 机器。
要部署虚拟服务器,请使用以下参数运行
virt-install
命令:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 对于
--location
参数,指定 HTTP 或 HTTPS 服务器中的 kernel/initrd 的位置。
11.4.5.3. 在逻辑分区 (LPAR) 中添加 IBM Z 代理 复制链接链接已复制到粘贴板!
使用以下步骤将 IBM Z® 代理手动添加到在 LPAR 环境中运行的集群。这个过程只适用于在 LPAR 中运行的 IBM Z® 集群。
先决条件
- 已安装 Python 3。
流程
为代理创建引导参数文件。
参数文件示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 对于
coreos.live.rootfs_url
工件,请为您要启动的kernel
和initramfs
指定匹配的rootfs
工件。仅支持 HTTP 和 HTTPS 协议。 - 2
- 对于
ip
参数,请手动分配 IP 地址,如 在 IBM Z 和 IBM LinuxONE 中使用 z/VM 安装集群中所述。 - 3
- 对于在 DASD 类型磁盘中安装,请使用
rd.dasd
指定要安装 Red Hat Enterprise Linux CoreOS (RHCOS) 的 DASD。对于在 FCP 类型磁盘中安装,请使用rd.zfcp=<adapter>,<wwpn>,<lun>
指定要安装 RHCOS 的 FCP 磁盘。 - 4
- 使用 Open Systems Adapter (OSA) 或 HiperSockets 时指定此参数。
通过运行以下 Python 脚本生成
.ins
和initrd.img.addrsize
文件:.ins
文件是一个特殊文件,其中包含安装数据并存在于 FTP 服务器上。它可以从 HMC 系统访问。此文件包含详细信息,如映射磁盘或 FTP 服务器上安装数据的位置、要复制数据的内存位置。注意.ins
和initrd.img.addrsize
文件不会作为安装程序的 boot-artifacts 的一部分自动生成。您必须手动生成这些文件。将以下脚本保存到文件中,如
generate-files.py
:名为
generate-files.py
文件的 Python 文件示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令执行脚本:
python3 <file_name>.py
$ python3 <file_name>.py
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
将
initrd
、kernel
、common.ins
和initrd.img.addrsize
参数文件传输到文件服务器。如需更多信息,请参阅 在 LPAR 模式中引导 Linux (IBM 文档)。 - 启动机器。
- 对集群中的所有其他机器重复这个过程。