7.14. GCP 的安装配置参数
在 Google Cloud Platform (GCP)上部署 OpenShift Container Platform 集群前,您可以提供参数来自定义集群及其托管平台。在创建 install-config.yaml
文件时,您可以通过命令行为所需参数提供值。然后,您可以修改 install-config.yaml
文件以进一步自定义集群。
7.14.1. GCP 可用的安装配置参数
下表指定在安装过程中设置所需的、可选和特定于 GCP 的安装配置参数。
安装后,您无法在 install-config.yaml
文件中修改这些参数。
7.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" } } } |
7.14.1.2. 网络配置参数
您可以根据现有网络基础架构的要求自定义安装配置。例如,您可以扩展集群网络的 IP 地址块,或者提供不同于默认值的不同 IP 地址块。
仅支持 IPv4 地址。
Red Hat OpenShift Data Foundation 灾难恢复解决方案不支持 Globalnet。对于区域灾难恢复场景,请确保为每个集群中的集群和服务网络使用非重叠的专用 IP 地址。
参数 | 描述 | 值 |
---|---|---|
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 网络块。
例如: 注意
将 |
7.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"。
7.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: |
指定在主机维护事件期间计算虚拟机的行为,如软件或硬件更新。对于机密虚拟机,此参数必须设置为 |
|