6.9. 手动创建安装配置文件
安装集群要求您手动创建安装配置文件。
先决条件
- 在本地机器上有一个 SSH 公钥用于安装程序。您可以使用密钥在集群节点上进行 SSH 身份验证,以进行调试和灾难恢复。
 - 已获取 OpenShift Container Platform 安装程序和集群的 pull secret。
 
流程
创建一个安装目录来存储所需的安装资产:
mkdir <installation_directory>
$ mkdir <installation_directory>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要您必须创建一个目录。有些安装资产,如 bootstrap X.509 证书有较短的过期间隔,因此不得重复使用安装目录。如果要重复使用另一个集群安装中的单个文件,您可以将它们复制到您的目录中。但是,安装资产的文件名可能会在发行版本间有所变化。从以前的 OpenShift Container Platform 版本中复制安装文件时请小心。
自定义提供的
install-config.yaml文件模板示例,并将文件保存到 <installation_directory> 中。注意此配置文件必须命名为
install-config.yaml。备份
install-config.yaml文件,以便使用它来安装多个集群。重要现在备份
install-config.yaml文件,因为安装过程会在下一步中消耗该文件。
6.9.1. 集群安装的最低资源要求 复制链接链接已复制到粘贴板!
每台集群机器都必须满足以下最低要求:
| 机器 | 操作系统 | vCPU [1] | 虚拟内存 | Storage | 每秒输入/输出 (IOPS) [2] | 
|---|---|---|---|---|---|
|   bootstrap  |   RHCOS  |   2  |   16 GB  |   100 GB  |   300  | 
|   Control plane(控制平面)  |   RHCOS  |   2  |   16 GB  |   100 GB  |   300  | 
|   Compute  |   RHCOS  |   2  |   8 GB  |   100 GB  |   300  | 
- 当未启用并发多线程 (SMT) 或超线程时,一个 vCPU 相当于一个物理内核。启用后,使用以下公式来计算对应的比例:(每个内核数的线程)× sockets = vCPU。
 - OpenShift Container Platform 和 Kubernetes 对磁盘性能敏感,建议使用更快的存储,特别是 control plane 节点上的 etcd。请注意,在许多云平台上,存储大小和 IOPS 可一起扩展,因此您可能需要过度分配存储卷来获取足够的性能。
 
从 OpenShift Container Platform 版本 4.13 开始,RHCOS 基于 RHEL 版本 9.2,它更新了微架构要求。以下列表包含每个架构需要的最小指令集架构 (ISA):
- x86-64 体系结构需要 x86-64-v2 ISA
 - ARM64 架构需要 ARMv8.0-A ISA
 - IBM Power 架构需要 Power 9 ISA
 - s390x 架构需要 z14 ISA
 
如需更多信息,请参阅 架构 (RHEL 文档)。
如果平台的实例类型满足集群机器的最低要求,则 OpenShift Container Platform 支持使用它。
					您可以自定义 install-config.yaml 文件,以指定有关 OpenShift Container Platform 集群平台的更多详情,或修改所需参数的值。
				
						此示例 YAML 文件仅供参考。您必须使用安装程序来获取 install-config.yaml 文件,并进行修改。
					
- 1 5
 - 如果没有提供这些参数和值,安装程序会提供默认值。
 - 2 6
 controlPlane部分是一个单个映射,但 compute 部分是一系列映射。为满足不同数据结构的要求,compute部分的第一行必须以连字符-开头,controlPlane部分的第一行则不以连字符开头。两个部分目前都定义一个机器池。仅使用一个 control plane 池。- 3 7
 - 是否要启用或禁用并发多线程或
超线程。默认情况下,启用并发多线程以提高机器内核的性能。您可以通过将 参数值设置为Disabled来禁用它。如果在某些集群机器中禁用并发多线程,则必须在所有集群机器中禁用它。 - 4 8
 - smtLevel 指定要设置为 control plane 和计算机器的 SMT 级别。支持的值有 1、2、4、8、
'off'和'on'。默认值为 8。smtLevel'off'将 SMT 设置为 off,smtlevel'on'将 SMT 设置为集群节点上的默认值 8。注意如果没有启用并发多线程(SMT)或超线程,一个 vCPU 相当于一个物理内核。启用后,每个内核为(Thread (s)的总 vCPU 计算为(Thread (s) per socket) " Socket (s))。smtLevel 控制每个内核的线程。在部署集群节点时,较低 SMT 级别可能需要额外分配的内核。您可以将
install-config.yaml文件中的'processors'参数设置为适当的值,以满足成功部署 OpenShift Container Platform 的要求。 - 9
 - 机器 CIDR 必须包含计算机器和 control plane 机器的子网。
 - 10
 - 要安装的集群网络插件。默认值
OVNKubernetes是唯一支持的值。 - 11
 - 指定现有 VPC 的名称。
 - 12
 - 指定如何发布集群的面向用户的端点。将 publish 设置为
Internal以部署私有集群。 - 13
 - 必需。安装程序会提示您输入这个值。
 - 14
 - 提供用于访问集群中机器的
sshKey值。重要如果您禁用并发多线程,请确保您的容量规划考虑机器性能显著降低的情况。
注意对于您要在其上执行安装调试或灾难恢复的生产环境 OpenShift Container Platform 集群,请指定
ssh-agent进程使用的 SSH 密钥。 
6.9.3. 在安装过程中配置集群范围的代理 复制链接链接已复制到粘贴板!
					生产环境可能会拒绝直接访问互联网,而是提供 HTTP 或 HTTPS 代理。您可以通过在 install-config.yaml 文件中配置代理设置,将新的 OpenShift Container Platform 集群配置为使用代理。
				
先决条件
- 
							您有一个现有的 
install-config.yaml文件。 您检查了集群需要访问的站点,并确定它们中的任何站点是否需要绕过代理。默认情况下,所有集群出口流量都经过代理,包括对托管云供应商 API 的调用。如果需要,您将在
Proxy 对象的spec.noProxy字段中添加站点来绕过代理。注意Proxy对象status.noProxy字段使用安装配置中的networking.machineNetwork[].cidr、networking.clusterNetwork[].cidr和networking.serviceNetwork[]字段的值填充。对于在 Amazon Web Services(AWS)、Google Cloud Platform(GCP)、Microsoft Azure 和 Red Hat OpenStack Platform(RHOSP)上安装,
Proxy对象status.noProxy字段也会使用实例元数据端点填充(169.254.169.254)。
流程
编辑
install-config.yaml文件并添加代理设置。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
 - 用于创建集群外 HTTP 连接的代理 URL。URL 方案必须是
http。 - 2
 - 用于创建集群外 HTTPS 连接的代理 URL。
 - 3
 - 要从代理中排除的目标域名、IP 地址或其他网络 CIDR 的逗号分隔列表。在域前面加上
.以仅匹配子域。例如,.y.com匹配x.y.com,但不匹配y.com。使用*绕过所有目的地的代理。 - 4
 - 如果提供,安装程序会在
openshift-config命名空间中生成名为user-ca-bundle的配置映射,其包含代理 HTTPS 连接所需的一个或多个额外 CA 证书。然后,Cluster Network Operator 会创建trusted-ca-bundle配置映射,将这些内容与 Red Hat Enterprise Linux CoreOS(RHCOS)信任捆绑包合并,Proxy对象的trustedCA字段中也会引用此配置映射。additionalTrustBundle字段是必需的,除非代理的身份证书由来自 RHCOS 信任捆绑包的颁发机构签名。 - 5
 - 可选:决定
Proxy对象的配置以引用trustedCA字段中user-ca-bundle配置映射的策略。允许的值是Proxyonly和Always。仅在配置了http/https代理时,使用Proxyonly引用user-ca-bundle配置映射。使用Always始终引用user-ca-bundle配置映射。默认值为Proxyonly。 
注意安装程序不支持代理的
readinessEndpoints字段。注意如果安装程序超时,重启并使用安装程序的
wait-for命令完成部署。例如:./openshift-install wait-for install-complete --log-level debug
$ ./openshift-install wait-for install-complete --log-level debugCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 保存该文件并在安装 OpenShift Container Platform 时引用。
 
					安装程序会创建一个名为 cluster 的集群范围代理,该代理 使用 提供的 install-config.yaml 文件中的代理设置。如果没有提供代理设置,仍然会创建一个 cluster Proxy 对象,但它会有一个空 spec。
				
						只支持名为 cluster 的 Proxy 对象,且无法创建额外的代理。