第 14 章 GCP 的安装配置参数
在 Google Cloud Platform (GCP)上部署 OpenShift Container Platform 集群前,您可以提供参数来自定义集群及其托管平台。在创建 install-config.yaml
文件时,您可以通过命令行为所需参数提供值。然后,您可以修改 install-config.yaml
文件以进一步自定义集群。
14.1. GCP 可用的安装配置参数
下表指定在安装过程中设置所需的、可选和特定于 GCP 的安装配置参数。
安装后,您无法在 install-config.yaml
文件中修改这些参数。
14.1.1. 所需的配置参数
下表描述了所需的安装配置参数:
参数 | 描述 | 值 |
---|---|---|
apiVersion: |
| 字符串 |
baseDomain: |
云供应商的基域。基域用于创建到 OpenShift Container Platform 集群组件的路由。集群的完整 DNS 名称是 |
完全限定域名或子域名,如 |
metadata: |
Kubernetes 资源 | 对象 |
metadata: name: |
集群的名称。集群的 DNS 记录是 |
小写字母、连字符( |
platform: |
对于特定平台的配置取决于执行安装的环境: | 对象 |
pullSecret: | 从 Red Hat OpenShift Cluster Manager 获取 pull secret,验证从 Quay.io 等服务中下载 OpenShift Container Platform 组件的容器镜像。 |
{ "auths":{ "cloud.openshift.com":{ "auth":"b3Blb=", "email":"you@example.com" }, "quay.io":{ "auth":"b3Blb=", "email":"you@example.com" } } } |
14.1.2. 网络配置参数
您可以根据现有网络基础架构的要求自定义安装配置。例如,您可以扩展集群网络的 IP 地址块,或者提供不同于默认值的不同 IP 地址块。
仅支持 IPv4 地址。
参数 | 描述 | 值 |
---|---|---|
networking: | 集群网络的配置。 | 对象 注意
您无法在安装后修改 |
networking: networkType: | 要安装的 Red Hat OpenShift Networking 网络插件。 |
|
networking: clusterNetwork: | pod 的 IP 地址块。
默认值为 如果您指定了多个 IP 地址块,块不得重叠。 | 对象数组。例如: networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 |
networking: clusterNetwork: cidr: |
使用 IPv4 网络。 |
无类别域间路由(CIDR)表示法中的 IP 地址块。IPv4 块的前缀长度介于 |
networking: clusterNetwork: hostPrefix: |
分配给每个节点的子网前缀长度。例如,如果 | 子网前缀。
默认值为 |
networking: serviceNetwork: |
服务的 IP 地址块。默认值为 OVN-Kubernetes 网络插件只支持服务网络的一个 IP 地址块。 | CIDR 格式具有 IP 地址块的数组。例如: networking: serviceNetwork: - 172.30.0.0/16 |
networking: machineNetwork: | 机器的 IP 地址块。 如果您指定了多个 IP 地址块,块不得重叠。 | 对象数组。例如: networking: machineNetwork: - cidr: 10.0.0.0/16 |
networking: machineNetwork: cidr: |
使用 | CIDR 表示法中的 IP 网络块。
例如: 注意
将 |
14.1.3. 可选的配置参数
下表描述了可选的安装配置参数:
参数 | 描述 | 值 |
---|---|---|
additionalTrustBundle: | 添加到节点可信证书存储中的 PEM 编码 X.509 证书捆绑包。配置了代理时,也可以使用此信任捆绑包。 | 字符串 |
capabilities: | 控制可选核心组件的安装。您可以通过禁用可选组件来减少 OpenShift Container Platform 集群的空间。如需更多信息,请参阅安装中的"集群功能"页面。 | 字符串数组 |
capabilities: baselineCapabilitySet: |
选择要启用的一组初始可选功能。有效值为 | 字符串 |
capabilities: additionalEnabledCapabilities: |
将可选功能集合扩展到您在 | 字符串数组 |
cpuPartitioningMode: | 启用工作负载分区,它会隔离 OpenShift Container Platform 服务、集群管理工作负载和基础架构 pod,以便在保留的一组 CPU 上运行。工作负载分区只能在安装过程中启用,且在安装后无法禁用。虽然此字段启用工作负载分区,但它不会将工作负载配置为使用特定的 CPU。如需更多信息,请参阅 Scalability and Performance 部分中的 Workload partitioning 页面。 |
|
compute: | 组成计算节点的机器的配置。 |
|
compute: architecture: |
决定池中机器的指令集合架构。目前,不支持具有不同架构的集群。所有池都必须指定相同的架构。有效值为 | 字符串 |
compute: hyperthreading: |
是否在计算机器上启用或禁用并发多 重要 如果您禁用并发多线程,请确保您的容量规划考虑机器性能显著降低的情况。 |
|
compute: name: |
使用 |
|
compute: platform: |
使用 |
|
compute: replicas: | 要置备的计算机器数量,也称为 worker 机器。 |
大于或等于 |
featureSet: | 为功能集启用集群。功能集是 OpenShift Container Platform 功能的集合,默认情况下不启用。有关在安装过程中启用功能集的更多信息,请参阅"使用功能门启用功能"。 |
字符串.要启用的功能集的名称,如 |
controlPlane: | 组成 control plane 的机器的配置。 |
|
controlPlane: architecture: |
决定池中机器的指令集合架构。目前,不支持具有不同架构的集群。所有池都必须指定相同的架构。有效值为 | 字符串 |
controlPlane: hyperthreading: |
是否在 control plane 机器上启用或禁用并发多 重要 如果您禁用并发多线程,请确保您的容量规划考虑机器性能显著降低的情况。 |
|
controlPlane: name: |
使用 |
|
controlPlane: platform: |
使用 |
|
controlPlane: replicas: | 要置备的 control plane 机器数量。 |
部署单节点 OpenShift 时支持的值为 |
credentialsMode: | Cloud Credential Operator(CCO)模式。如果没有指定模式,CCO 会动态尝试决定提供的凭证的功能,在支持多个模式的平台上首选 mint 模式。 注意 不是所有 CCO 模式都支持所有云供应商。有关 CCO 模式的更多信息,请参阅身份验证和授权内容中的"管理云供应商凭证"条目。 |
|
fips: |
启用或禁用 FIPS 模式。默认值为 重要 要为集群启用 FIPS 模式,您必须从配置为以 FIPS 模式操作的 Red Hat Enterprise Linux (RHEL) 计算机运行安装程序。有关在 RHEL 中配置 FIPS 模式的更多信息,请参阅将 RHEL 切换到 FIPS 模式。 当以 FIPS 模式运行 Red Hat Enterprise Linux (RHEL) 或 Red Hat Enterprise Linux CoreOS (RHCOS)时,OpenShift Container Platform 核心组件使用 RHEL 加密库,在 x86_64、ppc64le 和 s390x 架构上提交到 NIST FIPS 140-2/140-3 Validation。 注意 如果使用 Azure File 存储,则无法启用 FIPS 模式。 |
|
imageContentSources: | release-image 内容的源和存储库。 |
对象数组。包括一个 |
imageContentSources: source: |
使用 | 字符串 |
imageContentSources: mirrors: | 指定可能还包含同一镜像的一个或多个仓库。 | 字符串数组 |
publish: | 如何发布或公开集群的面向用户的端点,如 Kubernetes API、OpenShift 路由。 |
|
sshKey: | 用于验证对集群机器的访问的 SSH 密钥。 注意
对于您要在其上执行安装调试或灾难恢复的生产环境 OpenShift Container Platform 集群,请指定 |
例如, |
+
如果要在 GCP 上安装到共享虚拟私有云 (VPC) 中,则 credentialsMode
必须设置为 Passthrough
或 Manual
。
+
将此参数设置为 Manual
可启用在 kube-system
项目中存储管理员级别的 secret 的替代方案,这需要额外的配置步骤。如需更多信息,请参阅"在 kube-system 项目中存储管理员级别的 secret"。
14.1.4. 其他 Google Cloud Platform(GCP)配置参数
下表描述了其他 GCP 配置参数:
参数 | 描述 | 值 |
---|---|---|
controlPlane: platform: gcp: osImage: project: | 可选。默认情况下,安装程序会下载并安装用于引导 control plane 机器的 Red Hat Enterprise Linux CoreOS (RHCOS)镜像。您可以通过指定安装程序仅用于 control plane 机器的自定义 RHCOS 镜像的位置来覆盖默认行为。 | 字符串.镜像所在 GCP 项目的名称。 |
controlPlane: platform: gcp: osImage: name: |
安装程序用来引导 control plane 机器的自定义 RHCOS 镜像的名称。如果使用 | 字符串.RHCOS 镜像的名称。 |
compute: platform: gcp: osImage: project: | 可选。默认情况下,安装程序会下载并安装用于引导计算机器的 RHCOS 镜像。您可以通过指定安装程序仅用于计算机器的自定义 RHCOS 镜像的位置来覆盖默认行为。 | 字符串.镜像所在 GCP 项目的名称。 |
compute: platform: gcp: osImage: name: |
安装程序用来引导计算机器的自定义 RHCOS 镜像的名称。如果使用 | 字符串.RHCOS 镜像的名称。 |
platform: gcp: network: |
要部署集群的现有 Virtual Private Cloud (VPC) 的名称。如果要将集群部署到共享 VPC 中,则必须使用包含共享 VPC 的 GCP 项目的名称设置 | 字符串. |
platform: gcp: networkProjectID: | 可选。包含要部署集群的共享 VPC 的 GCP 项目的名称。 | 字符串. |
platform: gcp: projectID: | 安装程序安装集群的 GCP 项目的名称。 | 字符串. |
platform: gcp: region: | 托管集群的 GCP 区域的名称。 |
任何有效的区域名称,如 |
platform: gcp: controlPlaneSubnet: | 要部署 control plane 机器的现有子网的名称。 | 子网名称。 |
platform: gcp: computeSubnet: | 要部署计算机器的现有子网的名称。 | 子网名称。 |
platform: gcp: defaultMachinePlatform: zones: | 安装程序在其中创建机器的可用区。 |
有效 GCP 可用区 列表,如 重要 在 GCP 64 位 ARM 基础架构上运行集群时,请确保使用 Ampere Altra Arm CPU 可用的区域。您可以在 "GCP Availability zones" 链接中找到哪些区与 64 位 ARM 处理器兼容。 |
platform: gcp: defaultMachinePlatform: osDisk: diskSizeGB: | 以 GB(GB)为单位的磁盘大小。 | 16 GB 到 65536 GB 之间的任何大小。 |
platform: gcp: defaultMachinePlatform: osDisk: diskType: |
所有机器的默认磁盘类型。control plane 节点必须使用 | |
platform: gcp: defaultMachinePlatform: osImage: project: | 可选。默认情况下,安装程序会下载并安装用于引导 control plane 和计算机器的 RHCOS 镜像。您可以通过为安装程序为两种类型的机器指定自定义 RHCOS 镜像的位置来覆盖默认行为。 | 字符串.镜像所在 GCP 项目的名称。 |
platform: gcp: defaultMachinePlatform: osImage: name: |
安装程序用来引导 control plane 和计算机器的自定义 RHCOS 镜像的名称。如果使用 | 字符串.RHCOS 镜像的名称。 |
platform: gcp: defaultMachinePlatform: tags: | 可选。要添加到 control plane 和计算机器的额外网络标签。 |
一个或多个字符串,如 |
platform: gcp: defaultMachinePlatform: type: | control plane 和计算机器的 GCP 机器类型。 |
GCP 机器类型,如 |
platform: gcp: defaultMachinePlatform: osDisk: encryptionKey: kmsKey: name: | 用于机器磁盘加密的客户管理的加密密钥名称。 | 加密密钥名称。 |
platform: gcp: defaultMachinePlatform: osDisk: encryptionKey: kmsKey: keyRing: | KMS 密钥所属的密钥管理服务 (KMS) 密钥环的名称。 | KMS 密钥环名称。 |
platform: gcp: defaultMachinePlatform: osDisk: encryptionKey: kmsKey: location: | KMS 密钥环存在的 GCP 位置。 | GCP 位置。 |
platform: gcp: defaultMachinePlatform: osDisk: encryptionKey: kmsKey: projectID: |
存在 KMS 密钥环的项目 ID。如果没有设置,则默认值为 | GCP 项目 ID。 |
platform: gcp: defaultMachinePlatform: osDisk: encryptionKey: kmsKeyServiceAccount: | 用于 control plane 和计算机器加密请求的 GCP 服务帐户。如果没有,则使用 Compute Engine 默认服务帐户。如需有关 GCP 服务帐户的更多信息,请参阅 Google 文档中的服务帐户。 |
GCP 服务帐户电子邮件,如 |
platform: gcp: defaultMachinePlatform: secureBoot: | 是否为集群中的所有机器启用 Shielded VM 安全引导。Shielded 虚拟机具有额外的安全协议,如安全引导、固件和完整性监控和 rootkit 保护。有关 Shielded 虚拟机的更多信息,请参阅 Google 文档中有关 Shielded 虚拟机 的文档。 |
|
platform: gcp: defaultMachinePlatform: confidentialCompute: | 是否对集群中的所有机器使用机密虚拟机。机密虚拟机在处理过程中为数据提供加密。有关机密计算的更多信息,请参阅 Google 文档中有关机密计算的内容。 |
|
platform: gcp: defaultMachinePlatform: onHostMaintenance: |
指定主机维护事件期间所有虚拟机的行为,如软件或硬件更新。对于机密虚拟机,此参数必须设置为 |
|
controlPlane: platform: gcp: osDisk: encryptionKey: kmsKey: name: | 用于 control plane 机器磁盘加密的客户管理的加密密钥名称。 | 加密密钥名称。 |
controlPlane: platform: gcp: osDisk: encryptionKey: kmsKey: keyRing: | 对于 control plane 机器,KMS 密钥环的名称。 | KMS 密钥环名称。 |
controlPlane: platform: gcp: osDisk: encryptionKey: kmsKey: location: | 对于 control plane 机器,存在密钥环的 GCP 位置。有关 KMS 位置的更多信息,请参阅 Google 文档中的Cloud KMS 位置。 | 密钥环的 GCP 位置。 |
controlPlane: platform: gcp: osDisk: encryptionKey: kmsKey: projectID: | 对于 control plane 机器,存在 KMS 密钥环的项目 ID。如果没有设置,则默认值是 VM 项目 ID。 | GCP 项目 ID。 |
controlPlane: platform: gcp: osDisk: encryptionKey: kmsKeyServiceAccount: | 用于 control plane 机器的加密请求的 GCP 服务帐户。如果没有,则使用 Compute Engine 默认服务帐户。如需有关 GCP 服务帐户的更多信息,请参阅 Google 文档中的服务帐户。 |
GCP 服务帐户电子邮件,如 |
controlPlane: platform: gcp: osDisk: diskSizeGB: | 以 GB(GB)为单位的磁盘大小。这个值适用于 control plane 机器。 | 16 到 65536 之间的任何整数。 |
controlPlane: platform: gcp: osDisk: diskType: | control plane 机器的 GCP 磁盘类型。 |
control plane 机器必须使用 |
controlPlane: platform: gcp: tags: |
可选。要添加到 control plane 机器的额外网络标签。如果设置,此参数会覆盖 control plane 机器的 |
一个或多个字符串,如 |
controlPlane: platform: gcp: type: |
control plane 机器的 GCP 机器类型。如果设置,此参数会覆盖 |
GCP 机器类型,如 |
controlPlane: platform: gcp: zones: | 安装程序在其中创建 control plane 机器的可用区。 |
有效 GCP 可用区 列表,如 重要 在 GCP 64 位 ARM 基础架构上运行集群时,请确保使用 Ampere Altra Arm CPU 可用的区域。您可以在 "GCP Availability zones" 链接中找到哪些区与 64 位 ARM 处理器兼容。 |
controlPlane: platform: gcp: secureBoot: | 是否为 control plane 机器启用 Shielded VM 安全引导。Shielded 虚拟机具有额外的安全协议,如安全引导、固件和完整性监控和 rootkit 保护。有关 Shielded 虚拟机的更多信息,请参阅 Google 文档中有关 Shielded 虚拟机 的文档。 |
|
controlPlane: platform: gcp: confidentialCompute: | 是否为 control plane 机器启用机密虚拟机。机密虚拟机在处理数据时为数据提供加密。有关机密虚拟机的更多信息,请参阅 Google 文档中有关机密计算的内容。 |
|
controlPlane: platform: gcp: onHostMaintenance: |
指定在主机维护事件期间 control plane 虚拟机的行为,如软件或硬件更新。对于机密虚拟机,此参数必须设置为 |
|
compute: platform: gcp: osDisk: encryptionKey: kmsKey: name: | 用于计算机器磁盘加密的客户管理的加密密钥名称。 | 加密密钥名称。 |
compute: platform: gcp: osDisk: encryptionKey: kmsKey: keyRing: | 对于计算机器,KMS 密钥环的名称。 | KMS 密钥环名称。 |
compute: platform: gcp: osDisk: encryptionKey: kmsKey: location: | 对于计算机器,存在密钥环的 GCP 位置。有关 KMS 位置的更多信息,请参阅 Google 文档中的Cloud KMS 位置。 | 密钥环的 GCP 位置。 |
compute: platform: gcp: osDisk: encryptionKey: kmsKey: projectID: | 对于计算机器,存在 KMS 密钥环的项目 ID。如果没有设置,则默认值是 VM 项目 ID。 | GCP 项目 ID。 |
compute: platform: gcp: osDisk: encryptionKey: kmsKeyServiceAccount: | 用于计算机器加密请求的 GCP 服务帐户。如果没有设置这个值,则使用 Compute Engine 默认服务帐户。如需有关 GCP 服务帐户的更多信息,请参阅 Google 文档中的服务帐户。 |
GCP 服务帐户电子邮件,如 |
compute: platform: gcp: osDisk: diskSizeGB: | 以 GB(GB)为单位的磁盘大小。这个值适用于计算机器。 | 16 到 65536 之间的任何整数。 |
compute: platform: gcp: osDisk: diskType: | 计算机器的 GCP 磁盘类型。 |
|
compute: platform: gcp: tags: |
可选。要添加到计算机器的额外网络标签。如果设置,此参数会覆盖计算机器的 |
一个或多个字符串,如 |
compute: platform: gcp: type: |
计算机器的 GCP 机器类型。如果设置,此参数会覆盖 |
GCP 机器类型,如 |
compute: platform: gcp: zones: | 安装程序在其中创建计算机器的可用区。 |
有效 GCP 可用区 列表,如 重要 在 GCP 64 位 ARM 基础架构上运行集群时,请确保使用 Ampere Altra Arm CPU 可用的区域。您可以在 "GCP Availability zones" 链接中找到哪些区与 64 位 ARM 处理器兼容。 |
compute: platform: gcp: secureBoot: | 是否为计算机器启用 Shielded VM 安全引导。Shielded 虚拟机具有额外的安全协议,如安全引导、固件和完整性监控和 rootkit 保护。有关 Shielded 虚拟机的更多信息,请参阅 Google 文档中有关 Shielded 虚拟机 的文档。 |
|
compute: platform: gcp: confidentialCompute: | 是否为计算机器启用机密虚拟机。机密虚拟机在处理数据时为数据提供加密。有关机密虚拟机的更多信息,请参阅 Google 文档中有关机密计算的内容。 |
|
compute: platform: gcp: onHostMaintenance: |
指定在主机维护事件期间计算虚拟机的行为,如软件或硬件更新。对于机密虚拟机,此参数必须设置为 |
|