×
描述

Infrastructure 保存了关于基础设施的集群范围信息。规范名称为 cluster 兼容性级别 1:在主要版本中至少稳定 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • spec

规范

属性 类型 描述

apiVersion

字符串

APIVersion 定义了此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。无法更新。使用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

spec 包含用户可设置的配置值。

status

对象

status 包含从集群观察到的值。它们不能被覆盖。

.spec

描述

spec 包含用户可设置的配置值。

类型

对象

属性 类型 描述

cloudConfig

对象

cloudConfig 是对包含云提供商配置文件的 ConfigMap 的引用。此配置文件用于在使用内置云提供商集成或外部云控制器管理器时配置 Kubernetes 云提供商集成。此 ConfigMap 的命名空间为 openshift-config。cloudConfig 应仅由 kube_cloud_config 控制器使用。控制器负责使用规范中的用户配置以及此字段中用户提供的 ConfigMap 来创建拼接的 kube 云配置。控制器在 openshift-config-managed 命名空间中生成一个名为 kube-cloud-config 的 ConfigMap,其中 kube 云配置存储在 cloud.conf 密钥中。所有客户端都应仅使用生成的 ConfigMap。

platformSpec

对象

platformSpec 包含特定于底层基础设施提供商的所需信息。

.spec.cloudConfig

描述

cloudConfig 是对包含云提供商配置文件的 ConfigMap 的引用。此配置文件用于在使用内置云提供商集成或外部云控制器管理器时配置 Kubernetes 云提供商集成。此 ConfigMap 的命名空间为 openshift-config。cloudConfig 应仅由 kube_cloud_config 控制器使用。控制器负责使用规范中的用户配置以及此字段中用户提供的 ConfigMap 来创建拼接的 kube 云配置。控制器在 openshift-config-managed 命名空间中生成一个名为 kube-cloud-config 的 ConfigMap,其中 kube 云配置存储在 cloud.conf 密钥中。所有客户端都应仅使用生成的 ConfigMap。

类型

对象

属性 类型 描述

key

字符串

Key 允许指向 configmap 内部的特定键/值。这对于逻辑文件引用很有用。

name

字符串

.spec.platformSpec

描述

platformSpec 包含特定于底层基础设施提供商的所需信息。

类型

对象

属性 类型 描述

alibabaCloud

对象

AlibabaCloud 包含特定于阿里云基础设施提供商的设置。

aws

对象

AWS 包含特定于 Amazon Web Services 基础设施提供商的设置。

azure

对象

Azure 包含特定于 Azure 基础设施提供商的设置。

baremetal

对象

BareMetal 包含特定于 BareMetal 平台的设置。

equinixMetal

对象

EquinixMetal 包含特定于 Equinix Metal 基础设施提供商的设置。

external

对象

ExternalPlatformType 表示通用基础设施提供商。应单独补充特定于平台的组件。

gcp

对象

GCP 包含特定于 Google Cloud Platform 基础设施提供商的设置。

ibmcloud

对象

IBMCloud 包含特定于 IBMCloud 基础设施提供商的设置。

kubevirt

对象

Kubevirt 包含特定于 kubevirt 基础设施提供商的设置。

nutanix

对象

Nutanix 包含特定于 Nutanix 基础设施提供商的设置。

openstack

对象

OpenStack 包含特定于 OpenStack 基础设施提供商的设置。

ovirt

对象

Ovirt 包含特定于 oVirt 基础设施提供商的设置。

powervs

对象

PowerVS 包含特定于 IBM Power Systems 虚拟服务器基础设施提供商的设置。

type

字符串

type 是集群的底层基础设施提供商。此值控制是否启用基础设施自动化,例如服务负载均衡器、动态卷配置、机器创建和删除以及其他集成。如果为 None,则不启用基础设施自动化。允许的值为 "AWS"、"Azure"、"BareMetal"、"GCP"、"Libvirt"、"OpenStack"、"VSphere"、"oVirt"、"KubeVirt"、"EquinixMetal"、"PowerVS"、"AlibabaCloud"、"Nutanix" 和 "None"。各个组件可能不支持所有平台,如果它们不支持该平台,则必须将无法识别的平台处理为 None。

vsphere

对象

VSphere 包含特定于 VSphere 基础设施提供商的设置。

.spec.platformSpec.alibabaCloud

描述

AlibabaCloud 包含特定于阿里云基础设施提供商的设置。

类型

对象

.spec.platformSpec.aws

描述

AWS 包含特定于 Amazon Web Services 基础设施提供商的设置。

类型

对象

属性 类型 描述

serviceEndpoints

数组

serviceEndpoints 列表包含将覆盖 AWS 服务默认服务端点的自定义端点。一项服务必须只有一个 ServiceEndpoint。

serviceEndpoints[]

对象

AWSServiceEndpoint 存储自定义 URL 的配置,以覆盖 AWS 服务的现有默认值。

.spec.platformSpec.aws.serviceEndpoints

描述

serviceEndpoints 列表包含将覆盖 AWS 服务默认服务端点的自定义端点。一项服务必须只有一个 ServiceEndpoint。

类型

数组

.spec.platformSpec.aws.serviceEndpoints[]

描述

AWSServiceEndpoint 存储自定义 URL 的配置,以覆盖 AWS 服务的现有默认值。

类型

对象

属性 类型 描述

name

字符串

name 是 AWS 服务的名称。所有服务名称的列表可在 https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html 找到。这必须提供,并且不能为空。

url

字符串

url 是具有方案 https 的完全限定 URI,它覆盖客户端的默认生成端点。这必须提供,并且不能为空。

.spec.platformSpec.azure

描述

Azure 包含特定于 Azure 基础设施提供商的设置。

类型

对象

.spec.platformSpec.baremetal

描述

BareMetal 包含特定于 BareMetal 平台的设置。

类型

对象

属性 类型 描述

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内的组件(例如使用基础设施而不是 Kubernetes 网络的 kubelet)可以使用这些地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.apiServerInternalIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.ingressIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。每个网络都以 CIDR 格式提供,并且应该是 IPv4 或 IPv6,例如 "10.0.0.0/8" 或 "fd00::/8"。

.spec.platformSpec.equinixMetal

描述

EquinixMetal 包含特定于 Equinix Metal 基础设施提供商的设置。

类型

对象

.spec.platformSpec.external

描述

ExternalPlatformType 表示通用基础设施提供商。应单独补充特定于平台的组件。

类型

对象

属性 类型 描述

platformName

字符串

PlatformName 字段保存表示基础设施提供商名称的任意字符串,应在安装时设置。此字段仅用于信息和报告目的,不应用于决策。

.spec.platformSpec.gcp

描述

GCP 包含特定于 Google Cloud Platform 基础设施提供商的设置。

类型

对象

.spec.platformSpec.ibmcloud

描述

IBMCloud 包含特定于 IBMCloud 基础设施提供商的设置。

类型

对象

.spec.platformSpec.kubevirt

描述

Kubevirt 包含特定于 kubevirt 基础设施提供商的设置。

类型

对象

.spec.platformSpec.nutanix

描述

Nutanix 包含特定于 Nutanix 基础设施提供商的设置。

类型

对象

必需
  • prismCentral

  • prismElements

属性 类型 描述

failureDomains

数组

failureDomains 配置 Nutanix 平台的故障域信息。设置后,此处定义的故障域可用于将机器分散到 Prism Element 集群中,从而提高集群的容错能力。

failureDomains[]

对象

NutanixFailureDomain 配置 Nutanix 平台的故障域信息。

prismCentral

对象

prismCentral 保存访问 Nutanix Prism Central 的端点地址和端口。安装集群范围代理后,默认情况下,将通过代理访问此端点。如果您希望与该端点的通信不通过代理,请将该端点添加到 proxy spec.noProxy 列表。

prismElements

数组

prismElements 保存一个或多个端点地址和端口数据,用于访问 Nutanix Prism Central 的 Nutanix Prism Elements(集群)。目前,我们仅支持 OpenShift 集群的一个 Prism Element(集群),OpenShift 集群中使用的所有 Nutanix 资源(虚拟机、子网、卷等)都位于其中。将来,我们可能会支持将 Nutanix 资源(虚拟机等)分散到 Prism Central 的多个 Prism Elements(集群)。

prismElements[]

对象

NutanixPrismElementEndpoint 保存 Prism Element(集群)的名称和端点数据。

.spec.platformSpec.nutanix.failureDomains

描述

failureDomains 配置 Nutanix 平台的故障域信息。设置后,此处定义的故障域可用于将机器分散到 Prism Element 集群中,从而提高集群的容错能力。

类型

数组

.spec.platformSpec.nutanix.failureDomains[]

描述

NutanixFailureDomain 配置 Nutanix 平台的故障域信息。

类型

对象

必需
  • cluster

  • name

  • subnets

属性 类型 描述

cluster

对象

cluster 用于标识集群(Prism Central 管理下的 Prism Element),机器的虚拟机将在其中创建。集群标识符(uuid 或名称)可从 Prism Central 控制台或使用 prism_central API 获取。

name

字符串

name 定义故障域的唯一名称。名称是必需的,长度最多为 64 个字符。它必须仅包含小写字母数字字符和连字符 (-)。它必须以字母数字字符开头和结尾。此值是任意的,用于标识平台中的故障域。

subnets

数组

subnets 保存机器虚拟机连接到的集群网络子网的一个或多个标识符列表。子网标识符(uuid 或名称)可从 Prism Central 控制台或使用 prism_central API 获取。

subnets[]

对象

NutanixResourceIdentifier 保存 Nutanix PC 资源(集群、镜像、子网等)的标识。

.spec.platformSpec.nutanix.failureDomains[].cluster

描述

cluster 用于标识集群(Prism Central 管理下的 Prism Element),机器的虚拟机将在其中创建。集群标识符(uuid 或名称)可从 Prism Central 控制台或使用 prism_central API 获取。

类型

对象

必需
  • type

属性 类型 描述

name

字符串

name 是 PC 中的资源名称。如果类型为 Name,则它不能为空。

type

字符串

type 是为此资源使用的标识符类型。

uuid

字符串

uuid 是 PC 中资源的 UUID。如果类型为 UUID,则它不能为空。

.spec.platformSpec.nutanix.failureDomains[].subnets

描述

subnets 保存机器虚拟机连接到的集群网络子网的一个或多个标识符列表。子网标识符(uuid 或名称)可从 Prism Central 控制台或使用 prism_central API 获取。

类型

数组

.spec.platformSpec.nutanix.failureDomains[].subnets[]

描述

NutanixResourceIdentifier 保存 Nutanix PC 资源(集群、镜像、子网等)的标识。

类型

对象

必需
  • type

属性 类型 描述

name

字符串

name 是 PC 中的资源名称。如果类型为 Name,则它不能为空。

type

字符串

type 是为此资源使用的标识符类型。

uuid

字符串

uuid 是 PC 中资源的 UUID。如果类型为 UUID,则它不能为空。

.spec.platformSpec.nutanix.prismCentral

描述

prismCentral 保存访问 Nutanix Prism Central 的端点地址和端口。安装集群范围代理后,默认情况下,将通过代理访问此端点。如果您希望与该端点的通信不通过代理,请将该端点添加到 proxy spec.noProxy 列表。

类型

对象

必需
  • address

  • port

属性 类型 描述

address

字符串

address 是 Nutanix Prism Central 或 Element(集群)的端点地址(DNS 名称或 IP 地址)。

port

整数

port 是访问 Nutanix Prism Central 或 Element(集群)的端口号。

.spec.platformSpec.nutanix.prismElements

描述

prismElements 保存一个或多个端点地址和端口数据,用于访问 Nutanix Prism Central 的 Nutanix Prism Elements(集群)。目前,我们仅支持 OpenShift 集群的一个 Prism Element(集群),OpenShift 集群中使用的所有 Nutanix 资源(虚拟机、子网、卷等)都位于其中。将来,我们可能会支持将 Nutanix 资源(虚拟机等)分散到 Prism Central 的多个 Prism Elements(集群)。

类型

数组

.spec.platformSpec.nutanix.prismElements[]

描述

NutanixPrismElementEndpoint 保存 Prism Element(集群)的名称和端点数据。

类型

对象

必需
  • endpoint

  • name

属性 类型 描述

endpoint

对象

endpoint 保存 Prism Element(集群)的端点地址和端口数据。安装集群范围代理后,默认情况下,将通过代理访问此端点。如果您希望与该端点的通信不通过代理,请将该端点添加到 proxy spec.noProxy 列表。

name

字符串

name 是 Prism Element(集群)的名称。此值将与其他资源(例如机器、PVC 等)上配置的 cluster 字段对应。

.spec.platformSpec.nutanix.prismElements[].endpoint

描述

endpoint 保存 Prism Element(集群)的端点地址和端口数据。安装集群范围代理后,默认情况下,将通过代理访问此端点。如果您希望与该端点的通信不通过代理,请将该端点添加到 proxy spec.noProxy 列表。

类型

对象

必需
  • address

  • port

属性 类型 描述

address

字符串

address 是 Nutanix Prism Central 或 Element(集群)的端点地址(DNS 名称或 IP 地址)。

port

整数

port 是访问 Nutanix Prism Central 或 Element(集群)的端口号。

.spec.platformSpec.openstack

描述

OpenStack 包含特定于 OpenStack 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内的组件(例如使用基础设施而不是 Kubernetes 网络的 kubelet)可以使用这些地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.apiServerInternalIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.ingressIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。每个网络都以 CIDR 格式提供,并且应该是 IPv4 或 IPv6,例如 "10.0.0.0/8" 或 "fd00::/8"。

.spec.platformSpec.ovirt

描述

Ovirt 包含特定于 oVirt 基础设施提供商的设置。

类型

对象

.spec.platformSpec.powervs

描述

PowerVS 包含特定于 IBM Power Systems 虚拟服务器基础设施提供商的设置。

类型

对象

属性 类型 描述

serviceEndpoints

数组

serviceEndpoints 是自定义端点的列表,它将覆盖 Power VS 服务的默认服务端点。

serviceEndpoints[]

对象

PowervsServiceEndpoint 存储自定义 url 的配置,以覆盖 PowerVS 服务的现有默认值。

.spec.platformSpec.powervs.serviceEndpoints

描述

serviceEndpoints 是自定义端点的列表,它将覆盖 Power VS 服务的默认服务端点。

类型

数组

.spec.platformSpec.powervs.serviceEndpoints[]

描述

PowervsServiceEndpoint 存储自定义 url 的配置,以覆盖 PowerVS 服务的现有默认值。

类型

对象

必需
  • name

  • url

属性 类型 描述

name

字符串

name 是 Power VS 服务的名称。一些服务包括 IAM - https://cloud.ibm.com/apidocs/iam-identity-token-api ResourceController - https://cloud.ibm.com/apidocs/resource-controller/resource-controller Power Cloud - https://cloud.ibm.com/apidocs/power-cloud

url

字符串

url 是具有方案 https 的完全限定 URI,它覆盖客户端的默认生成端点。这必须提供,并且不能为空。

.spec.platformSpec.vsphere

描述

VSphere 包含特定于 VSphere 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内的组件(例如使用基础设施而不是 Kubernetes 网络的 kubelet)可以使用这些地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.apiServerInternalIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

failureDomains

数组

failureDomains 包含区域、区域和 vCenter 拓扑的定义。如果省略此项,则不会使用故障域(区域和区域)。

failureDomains[]

对象

VSpherePlatformFailureDomainSpec 保存区域和区域故障域以及该故障域的 vCenter 拓扑。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双栈集群中,此列表包含两个 IP 地址,一个来自 IPv4 族,一个来自 IPv6 族。在单栈集群中,预期只有一个 IP 地址。省略时,将使用 status.ingressIPs 中的值。设置后,此列表不能完全删除(但可以删除其第二个条目)。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。每个网络都以 CIDR 格式提供,并且应该是 IPv4 或 IPv6,例如 "10.0.0.0/8" 或 "fd00::/8"。

nodeNetworking

对象

nodeNetworking 包含为分配节点网络定义的内部和外部网络约束。如果省略此字段,网络将默认为旧的地址选择行为,即仅支持单个地址并返回找到的第一个地址。

vcenters

数组

vcenters 保存服务与 vCenter 通信的连接详细信息。目前,仅支持单个 vCenter。---

vcenters[]

对象

VSpherePlatformVCenterSpec 存储 vCenter 连接字段。vSphere CCM 使用此字段。

.spec.platformSpec.vsphere.failureDomains

描述

failureDomains 包含区域、区域和 vCenter 拓扑的定义。如果省略此项,则不会使用故障域(区域和区域)。

类型

数组

.spec.platformSpec.vsphere.failureDomains[]

描述

VSpherePlatformFailureDomainSpec 保存区域和区域故障域以及该故障域的 vCenter 拓扑。

类型

对象

必需
  • name

  • region

  • server

  • topology

  • zone

属性 类型 描述

name

字符串

name 定义故障域的任意但唯一的名称。

region

字符串

region 定义将附加到 vCenter 数据中心的区域标签的名称。vCenter 中的标签类别必须命名为 openshift-region。

server

字符串

server 是 vCenter 服务器的完全限定域名或 IP 地址。---

topology

对象

Topology 使用 vSphere 结构描述给定的故障域。

zone

字符串

zone 定义将附加到 vCenter 集群的区域标签的名称。vCenter 中的标签类别必须命名为 openshift-zone。

.spec.platformSpec.vsphere.failureDomains[].topology

描述

Topology 使用 vSphere 结构描述给定的故障域。

类型

对象

必需
  • computeCluster

  • datacenter

  • datastore

  • networks

属性 类型 描述

computeCluster

字符串

computeCluster 虚拟机所在的 vCenter 集群的绝对路径。绝对路径的格式为 /<datacenter>/host/<cluster>。路径的最大长度为 2048 个字符。

datacenter

字符串

datacenter 是虚拟机所在的 vCenter 数据中心的名称。数据中心名称的最大长度为 80 个字符。

datastore

字符串

datastore 是虚拟机所在的存储库的绝对路径。绝对路径的格式为 /<datacenter>/datastore/<datastore> 路径的最大长度为 2048 个字符。

folder

字符串

folder 为虚拟机所在的文件夹的绝对路径。绝对路径格式为 /<数据中心>/vm/<文件夹>。路径最大长度为 2048 个字符。

networks

数组(字符串)

networks 是此故障域内端口组网络名称的列表。目前,我们每个 RHCOS 虚拟机只支持单个接口。可以使用 govc ls 'network/*' 列出可用的网络(端口组)。单个接口应为 /<数据中心>/network/<端口组> 形式的绝对路径。

资源池

字符串

resourcePool 是将创建虚拟机的资源池的绝对路径。绝对路径格式为 /<数据中心>/host/<集群>/Resources/<资源池>。路径最大长度为 2048 个字符。

模板

字符串

template 是在该故障域中创建新机器时将克隆的虚拟机或模板的完整清单路径。路径最大长度为 2048 个字符。省略此项时,模板将由控制平面 machineset 运算符根据 VSpherePlatformFailureDomainSpec 中定义的区域和区域计算。例如,对于 zone=zonea、region=region1 和 infrastructure name=test,模板路径将计算为 /<数据中心>/vm/test-rhcos-region1-zonea。

.spec.platformSpec.vsphere.nodeNetworking

描述

nodeNetworking 包含为分配节点网络定义的内部和外部网络约束。如果省略此字段,网络将默认为旧的地址选择行为,即仅支持单个地址并返回找到的第一个地址。

类型

对象

属性 类型 描述

external

对象

external 表示外部可路由节点的网络配置。

内部

对象

internal 表示仅在集群内可路由的节点的网络配置。

.spec.platformSpec.vsphere.nodeNetworking.external

描述

external 表示外部可路由节点的网络配置。

类型

对象

属性 类型 描述

excludeNetworkSubnetCidr

数组(字符串)

excludeNetworkSubnetCidr 子网范围内的 IP 地址将在从虚拟机的 VM 中选择 IP 地址以用于 status.addresses 字段时被排除。---

网络

字符串

network 用于搜索 status.addresses 字段的虚拟机 VM 网络名称。请注意,如果未设置 internal.networkSubnetCIDR 和 external.networkSubnetCIDR,则与该网络关联的 vNIC 只能分配单个 IP 地址。可以使用 govc ls 'network/*' 列出可用的网络(端口组)。

networkSubnetCidr

数组(字符串)

networkSubnetCidr 虚拟机网络接口上的 IP 地址包含在将用于相应 status.addresses 字段的字段的 CIDR 中。---

.spec.platformSpec.vsphere.nodeNetworking.internal

描述

internal 表示仅在集群内可路由的节点的网络配置。

类型

对象

属性 类型 描述

excludeNetworkSubnetCidr

数组(字符串)

excludeNetworkSubnetCidr 子网范围内的 IP 地址将在从虚拟机的 VM 中选择 IP 地址以用于 status.addresses 字段时被排除。---

网络

字符串

network 用于搜索 status.addresses 字段的虚拟机 VM 网络名称。请注意,如果未设置 internal.networkSubnetCIDR 和 external.networkSubnetCIDR,则与该网络关联的 vNIC 只能分配单个 IP 地址。可以使用 govc ls 'network/*' 列出可用的网络(端口组)。

networkSubnetCidr

数组(字符串)

networkSubnetCidr 虚拟机网络接口上的 IP 地址包含在将用于相应 status.addresses 字段的字段的 CIDR 中。---

.spec.platformSpec.vsphere.vcenters

描述

vcenters 保存服务与 vCenter 通信的连接详细信息。目前,仅支持单个 vCenter。---

类型

数组

.spec.platformSpec.vsphere.vcenters[]

描述

VSpherePlatformVCenterSpec 存储 vCenter 连接字段。vSphere CCM 使用此字段。

类型

对象

必需
  • 数据中心

  • server

属性 类型 描述

数据中心

数组(字符串)

位于 RHCOS 虚拟机客户机的 vCenter 数据中心。此字段将由云控制器管理器使用。此处列出的每个数据中心都应在一个拓扑中使用。

port

整数

port 是将用于与 vCenter 端点通信的 TCP 端口。省略此项表示用户没有意见,平台将自行选择合理的默认值,该默认值可能会随着时间的推移而发生变化。

server

字符串

server 是 vCenter 服务器的完全限定域名或 IP 地址。---

.status

描述

status 包含从集群观察到的值。它们不能被覆盖。

类型

对象

属性 类型 描述

apiServerInternalURI

字符串

apiServerInternalURL 是一个有效的 URI,包含方案“https”、地址和可选端口(默认为 443)。apiServerInternalURL 可被 kubelet 等组件用于使用基础设施提供程序而不是 Kubernetes 网络联系 Kubernetes API 服务器。

apiServerURL

字符串

apiServerURL 是一个有效的 URI,包含方案“https”、地址和可选端口(默认为 443)。apiServerURL 可被 Web 控制台等组件用于告知用户在何处查找 Kubernetes API。

控制平面拓扑

字符串

controlPlaneTopology 表示通常在控制节点上运行的操作数的预期。默认值为“HighlyAvailable”,表示运算符在“正常”集群中的行为。“SingleReplica”模式将用于单节点部署,并且运算符不应将操作数配置为高可用性操作。“External”模式表示控制平面托管在集群外部,并且其组件在集群内不可见。

CPU 分区

字符串

cpuPartitioning 表示 CPU 分区是否是集群中当前启用的功能。CPU 分区意味着此集群可以支持将工作负载分区到特定的 CPU 集。有效值为“None”和“AllNodes”。省略时,默认值为“None”。“None”的默认值表示没有节点将设置 CPU 分区。“AllNodes”值表示所有节点都已设置 CPU 分区,然后可以通过 PerformanceProfile API 对其进行进一步配置。

etcdDiscoveryDomain

字符串

etcdDiscoveryDomain 是用于获取用于发现 etcd 服务器和客户端的 SRV 记录的域名。更多信息:https://github.com/etcd-io/etcd/blob/329be66e8b3f9e2e6af83c123ff89297e49ebd15/Documentation/op-guide/clustering.md#dns-discovery 已弃用:从 4.7 版本开始,不再设置或使用此字段。将在未来的版本中删除。

基础设施名称

字符串

infrastructureName 使用用户友好的名称唯一标识集群。设置后不应更改。必须最多 27 个字符,并且只能包含字母数字或连字符字符。

基础设施拓扑

字符串

infrastructureTopology 表示不运行在控制平面节点上的基础设施服务的预期,通常由节点选择器指示,其role值不为master。默认值为“HighlyAvailable”,表示运算符在“正常”集群中的行为。“SingleReplica”模式将用于单节点部署,并且运算符不应将操作数配置为高可用性操作。注意:外部拓扑模式不适用于此字段。

平台

字符串

platform 是集群的基础设施提供商。已弃用:请改用 platformStatus.type。

platformStatus

对象

platformStatus 包含特定于基础设施提供商的状态信息。

.status.platformStatus

描述

platformStatus 包含特定于基础设施提供商的状态信息。

类型

对象

属性 类型 描述

alibabaCloud

对象

AlibabaCloud 包含特定于阿里云基础设施提供商的设置。

aws

对象

AWS 包含特定于 Amazon Web Services 基础设施提供商的设置。

azure

对象

Azure 包含特定于 Azure 基础设施提供商的设置。

baremetal

对象

BareMetal 包含特定于 BareMetal 平台的设置。

equinixMetal

对象

EquinixMetal 包含特定于 Equinix Metal 基础设施提供商的设置。

external

对象

External 包含特定于通用外部基础设施提供商的设置。

gcp

对象

GCP 包含特定于 Google Cloud Platform 基础设施提供商的设置。

ibmcloud

对象

IBMCloud 包含特定于 IBMCloud 基础设施提供商的设置。

kubevirt

对象

Kubevirt 包含特定于 kubevirt 基础设施提供商的设置。

nutanix

对象

Nutanix 包含特定于 Nutanix 基础设施提供商的设置。

openstack

对象

OpenStack 包含特定于 OpenStack 基础设施提供商的设置。

ovirt

对象

Ovirt 包含特定于 oVirt 基础设施提供商的设置。

powervs

对象

PowerVS 包含特定于 Power Systems Virtual Servers 基础设施提供商的设置。

type

字符串

type 是集群的基础设施提供商。此值控制是否启用基础设施自动化,例如服务负载均衡器、动态卷配置、机器创建和删除以及其他集成。如果为 None,则不启用任何基础设施自动化。允许的值为“AWS”、“Azure”、“BareMetal”、“GCP”、“Libvirt”、“OpenStack”、“VSphere”、“oVirt”、“EquinixMetal”、“PowerVS”、“AlibabaCloud”、“Nutanix”和“None”。各个组件可能不支持所有平台,如果它们不支持该平台,则必须将无法识别的平台处理为 None。此值将与status.platformstatus.platformStatus.type同步。目前,设置后无法更改此值。

vsphere

对象

VSphere 包含特定于 VSphere 基础设施提供商的设置。

.status.platformStatus.alibabaCloud

描述

AlibabaCloud 包含特定于阿里云基础设施提供商的设置。

类型

对象

必需
  • region

属性 类型 描述

region

字符串

region 指定为集群创建的阿里云资源的区域。

resourceGroupID

字符串

resourceGroupID 是集群资源组的 ID。

resourceTags

数组

resourceTags 是应用于为集群创建的阿里云资源的其他标签列表。

resourceTags[]

对象

AlibabaCloudResourceTag 是要应用于资源的标签集。

.status.platformStatus.alibabaCloud.resourceTags

描述

resourceTags 是应用于为集群创建的阿里云资源的其他标签列表。

类型

数组

.status.platformStatus.alibabaCloud.resourceTags[]

描述

AlibabaCloudResourceTag 是要应用于资源的标签集。

类型

对象

必需
  • key

属性 类型 描述

key

字符串

key 是标签的键。

字符串

value 是标签的值。

.status.platformStatus.aws

描述

AWS 包含特定于 Amazon Web Services 基础设施提供商的设置。

类型

对象

属性 类型 描述

region

字符串

region 包含集群创建的新 AWS 资源的默认 AWS 区域。

resourceTags

数组

resourceTags 是应用于为集群创建的 AWS 资源的其他标签列表。有关标记 AWS 资源的信息,请参见https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html。AWS 每个资源最多支持 50 个标签。OpenShift 预留 25 个标签供其使用,用户可以使用 25 个标签。

resourceTags[]

对象

AWSResourceTag 是应用于为集群创建的 AWS 资源的标签。

serviceEndpoints

数组

ServiceEndpoints 列表包含自定义端点,这些端点将覆盖 AWS 服务的默认服务端点。每个服务只能有一个 ServiceEndpoint。

serviceEndpoints[]

对象

AWSServiceEndpoint 存储自定义 URL 的配置,以覆盖 AWS 服务的现有默认值。

.status.platformStatus.aws.resourceTags

描述

resourceTags 是应用于为集群创建的 AWS 资源的其他标签列表。有关标记 AWS 资源的信息,请参见https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html。AWS 每个资源最多支持 50 个标签。OpenShift 预留 25 个标签供其使用,用户可以使用 25 个标签。

类型

数组

.status.platformStatus.aws.resourceTags[]

描述

AWSResourceTag 是应用于为集群创建的 AWS 资源的标签。

类型

对象

必需
  • key

属性 类型 描述

key

字符串

key 是标签的键。

字符串

value 是标签的值。某些 AWS 服务不支持空值。由于标签会添加到许多服务的资源中,因此标签值的长度必须满足所有服务的 requirement。

.status.platformStatus.aws.serviceEndpoints

描述

ServiceEndpoints 列表包含自定义端点,这些端点将覆盖 AWS 服务的默认服务端点。每个服务只能有一个 ServiceEndpoint。

类型

数组

.status.platformStatus.aws.serviceEndpoints[]

描述

AWSServiceEndpoint 存储自定义 URL 的配置,以覆盖 AWS 服务的现有默认值。

类型

对象

属性 类型 描述

name

字符串

name 是 AWS 服务的名称。所有服务名称的列表可在 https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html 找到。这必须提供,并且不能为空。

url

字符串

url 是具有方案 https 的完全限定 URI,它覆盖客户端的默认生成端点。这必须提供,并且不能为空。

.status.platformStatus.azure

描述

Azure 包含特定于 Azure 基础设施提供商的设置。

类型

对象

属性 类型 描述

armEndpoint

字符串

armEndpoint 指定用于在非主权云(例如 Azure Stack)中进行资源管理的 URL。

cloudName

字符串

cloudName 是 Azure 云环境的名称,可用于使用相应的 Azure API 端点配置 Azure SDK。如果为空,则该值等于 AzurePublicCloud

networkResourceGroupName

字符串

networkResourceGroupName 是网络资源(例如集群使用的虚拟网络和子网)的资源组。如果为空,则该值与 ResourceGroupName 相同。

resourceGroupName

字符串

resourceGroupName 是为集群创建的新 Azure 资源的资源组。

resourceTags

数组

resourceTags 是应用于为集群创建的 Azure 资源的其他标签列表。有关 Azure 资源标记的信息,请参阅 https://docs.microsoft.com/en-us/rest/api/resources/tags。由于自动化、内容交付网络、DNS Azure 资源的限制,最多可以应用 15 个标签。OpenShift 保留 5 个标签用于内部使用,允许用户配置 10 个标签。

resourceTags[]

对象

AzureResourceTag 是应用于为集群创建的 Azure 资源的标签。

.status.platformStatus.azure.resourceTags

描述

resourceTags 是应用于为集群创建的 Azure 资源的其他标签列表。有关 Azure 资源标记的信息,请参阅 https://docs.microsoft.com/en-us/rest/api/resources/tags。由于自动化、内容交付网络、DNS Azure 资源的限制,最多可以应用 15 个标签。OpenShift 保留 5 个标签用于内部使用,允许用户配置 10 个标签。

类型

数组

.status.platformStatus.azure.resourceTags[]

描述

AzureResourceTag 是应用于为集群创建的 Azure 资源的标签。

类型

对象

必需
  • key

属性 类型 描述

key

字符串

key 是标签的键部分。标签键最多可以包含 128 个字符,并且不能为空。键必须以字母开头,以字母、数字或下划线结尾,并且只能包含字母数字字符和以下特殊字符 _ . -

字符串

value 是标签的值部分。标签值最多可以包含 256 个字符,并且不能为空。值只能包含字母数字字符和以下特殊字符 _ + , - . / : ; < = > ? @

.status.platformStatus.baremetal

描述

BareMetal 包含特定于 BareMetal 平台的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。已弃用:请改用 APIServerInternalIPs。

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。已弃用:请改用 IngressIPs。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

loadBalancer

对象

loadBalancer 定义了集群使用的负载均衡器的配置方式。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。

nodeDNSIP

字符串

nodeDNSIP 是节点使用的内部 DNS 的 IP 地址。与由 DNS 运算符管理的 IP 不同,NodeDNSIP 为节点本身提供名称解析。BareMetal 部署没有 DNS 即服务。为了最大限度地减少对数据中心 DNS 的必要更改,将 DNS 服务托管为静态 Pod,以便将这些主机名提供给集群中的节点。

.status.platformStatus.baremetal.loadBalancer

描述

loadBalancer 定义了集群使用的负载均衡器的配置方式。

类型

对象

属性 类型 描述

type

字符串

type 定义了 BareMetal 平台上集群使用的负载均衡器的类型,可以是用户管理的负载均衡器或 OpenShift 管理的负载均衡器,用于 OpenShift API 和入口端点。设置为 OpenShiftManagedDefault 时,将部署负责 API 和入口流量负载均衡的机器配置运算符中定义的静态 Pod。设置为 UserManaged 时,将不会部署这些静态 Pod,并且预计负载均衡器是由部署者通过外部配置的。省略时,表示没有意见,平台将选择合理的默认值。默认值为 OpenShiftManagedDefault。

.status.platformStatus.equinixMetal

描述

EquinixMetal 包含特定于 Equinix Metal 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。

.status.platformStatus.external

描述

External 包含特定于通用外部基础设施提供商的设置。

类型

对象

属性 类型 描述

cloudControllerManager

对象

cloudControllerManager 包含特定于外部云控制器管理器(又名 CCM 或 CPI)的设置。省略时,新节点将不会被标记为受损,并且不需要来自云控制器管理器的额外初始化。

.status.platformStatus.external.cloudControllerManager

描述

cloudControllerManager 包含特定于外部云控制器管理器(又名 CCM 或 CPI)的设置。省略时,新节点将不会被标记为受损,并且不需要来自云控制器管理器的额外初始化。

类型

对象

属性 类型 描述

state

字符串

state 确定是否应在集群中安装外部云控制器管理器。https://kubernetes.ac.cn/docs/tasks/administer-cluster/running-cloud-controller/#running-cloud-controller-manager 有效值为“External”、“None”和省略。设置为“External”时,创建新节点时将将其标记为未初始化,阻止它们运行工作负载,直到它们由云控制器管理器初始化。省略或设置为“None”时,新节点将不会被标记为受损,并且不需要来自云控制器管理器的额外初始化。

.status.platformStatus.gcp

描述

GCP 包含特定于 Google Cloud Platform 基础设施提供商的设置。

类型

对象

属性 类型 描述

projectID

字符串

resourceGroupName 是为集群创建的新 GCP 资源的项目 ID。

region

字符串

region 包含为集群创建的新 GCP 资源的区域。

resourceLabels

数组

resourceLabels 是一个用于为集群创建的 GCP 资源应用附加标签的列表。有关 GCP 资源标签的信息,请参阅 https://cloud.google.com/compute/docs/labeling-resources。GCP 每个资源最多支持 64 个标签。OpenShift 保留 32 个标签用于内部使用,允许用户配置 32 个标签。

resourceLabels[]

对象

GCPResourceLabel 是一个用于为集群创建的 GCP 资源应用的标签。

resourceTags

数组

resourceTags 是一个用于为集群创建的 GCP 资源应用附加标签的列表。有关 GCP 资源标签的信息,请参阅 https://cloud.google.com/resource-manager/docs/tags/tags-overview。GCP 每个资源最多支持 50 个标签。

resourceTags[]

对象

GCPResourceTag 是一个用于为集群创建的 GCP 资源应用的标签。

.status.platformStatus.gcp.resourceLabels

描述

resourceLabels 是一个用于为集群创建的 GCP 资源应用附加标签的列表。有关 GCP 资源标签的信息,请参阅 https://cloud.google.com/compute/docs/labeling-resources。GCP 每个资源最多支持 64 个标签。OpenShift 保留 32 个标签用于内部使用,允许用户配置 32 个标签。

类型

数组

.status.platformStatus.gcp.resourceLabels[]

描述

GCPResourceLabel 是一个用于为集群创建的 GCP 资源应用的标签。

类型

对象

必需
  • key

属性 类型 描述

key

字符串

key 是标签的键部分。标签键最多可以包含 63 个字符,并且不能为空。标签键必须以小写字母开头,并且只能包含小写字母、数字字符和以下特殊字符 _-。标签键不能包含保留前缀 kubernetes-ioopenshift-io

字符串

value 是标签的值部分。标签值最多可以包含 63 个字符,并且不能为空。值只能包含小写字母、数字字符和以下特殊字符 _-

.status.platformStatus.gcp.resourceTags

描述

resourceTags 是一个用于为集群创建的 GCP 资源应用附加标签的列表。有关 GCP 资源标签的信息,请参阅 https://cloud.google.com/resource-manager/docs/tags/tags-overview。GCP 每个资源最多支持 50 个标签。

类型

数组

.status.platformStatus.gcp.resourceTags[]

描述

GCPResourceTag 是一个用于为集群创建的 GCP 资源应用的标签。

类型

对象

必需
  • key

  • parentID

属性 类型 描述

key

字符串

key 是标签的键部分。标签键最多可以包含 63 个字符,并且不能为空。标签键必须以字母数字字符开头和结尾,并且只能包含大写、小写字母数字字符和以下特殊字符 ._-

parentID

字符串

parentID 是定义标签的分层资源的 ID,例如组织级别或项目级别。要查找组织或项目 ID,请参阅以下页面:https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_idhttps://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects。组织 ID 必须由十进制数字组成,并且不能有前导零。项目 ID 的长度必须为 6 到 30 个字符,只能包含小写字母、数字和连字符,并且必须以字母开头,不能以连字符结尾。

字符串

value 是标签的值部分。标签值最多可以包含 63 个字符,并且不能为空。标签值必须以字母数字字符开头和结尾,并且只能包含大写、小写字母数字字符和以下特殊字符 _-.@%=+:,*#&(){}[] 和空格。

.status.platformStatus.ibmcloud

描述

IBMCloud 包含特定于 IBMCloud 基础设施提供商的设置。

类型

对象

属性 类型 描述

cisInstanceCRN

字符串

CISInstanceCRN 是管理集群基础域 DNS 区域的云互联网服务实例的 CRN。

dnsInstanceCRN

字符串

DNSInstanceCRN 是管理集群基础域 DNS 区域的 DNS 服务实例的 CRN。

location

字符串

Location 是集群部署的位置。

providerType

字符串

ProviderType 指示已创建的集群类型。

resourceGroupName

字符串

ResourceGroupName 是为集群创建的新 IBMCloud 资源的资源组。

serviceEndpoints

数组

serviceEndpoints 是自定义端点的列表,它将覆盖 IBM Cloud 服务的默认服务端点。集群中的组件使用这些端点来访问相应的 IBM Cloud 服务。

serviceEndpoints[]

对象

IBMCloudServiceEndpoint 存储自定义 URL 的配置,以覆盖 IBM Cloud 服务的现有默认值。

.status.platformStatus.ibmcloud.serviceEndpoints

描述

serviceEndpoints 是自定义端点的列表,它将覆盖 IBM Cloud 服务的默认服务端点。集群中的组件使用这些端点来访问相应的 IBM Cloud 服务。

类型

数组

.status.platformStatus.ibmcloud.serviceEndpoints[]

描述

IBMCloudServiceEndpoint 存储自定义 URL 的配置,以覆盖 IBM Cloud 服务的现有默认值。

类型

对象

必需
  • name

  • url

属性 类型 描述

name

字符串

name 是 IBM Cloud 服务的名称。可能的值包括:CIS、COS、COSConfig、DNSServices、GlobalCatalog、GlobalSearch、GlobalTagging、HyperProtect、IAM、KeyProtect、ResourceController、ResourceManager 或 VPC。例如,可以使用服务nameIAMurlhttps://private.iam.cloud.ibm.com来配置 IBM Cloud Private IAM 服务。而美国南部(达拉斯)的 IBM Cloud Private VPC 服务可以使用服务nameVPCurlhttps://us.south.private.iaas.cloud.ibm.com来配置。

url

字符串

url 是具有方案 https 的完全限定 URI,它覆盖客户端的默认生成端点。这必须提供,并且不能为空。

.status.platformStatus.kubevirt

描述

Kubevirt 包含特定于 kubevirt 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。

.status.platformStatus.nutanix

描述

Nutanix 包含特定于 Nutanix 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。已弃用:请改用 APIServerInternalIPs。

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。已弃用:请改用 IngressIPs。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

loadBalancer

对象

loadBalancer 定义了集群使用的负载均衡器的配置方式。

.status.platformStatus.nutanix.loadBalancer

描述

loadBalancer 定义了集群使用的负载均衡器的配置方式。

类型

对象

属性 类型 描述

type

字符串

type 定义了集群在 Nutanix 平台上使用的负载均衡器的类型,它可以是用户管理的负载均衡器或 OpenShift 管理的负载均衡器,用于 OpenShift API 和 Ingress 端点。设置为 OpenShiftManagedDefault 时,将部署负责 API 和 Ingress 流量负载均衡的机器配置运算符中定义的静态 Pod。设置为 UserManaged 时,将不会部署这些静态 Pod,并且预计部署者会带外配置负载均衡器。省略时,表示没有意见,平台将选择合理的默认值。默认值为 OpenShiftManagedDefault。

.status.platformStatus.openstack

描述

OpenStack 包含特定于 OpenStack 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。已弃用:请改用 APIServerInternalIPs。

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

cloudName

字符串

cloudName 是客户端配置文件 (clouds.yaml) 中所需 OpenStack 云的名称。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。已弃用:请改用 IngressIPs。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

loadBalancer

对象

loadBalancer 定义了集群使用的负载均衡器的配置方式。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。

nodeDNSIP

字符串

nodeDNSIP 是节点使用的内部 DNS 的 IP 地址。与 DNS 运算符管理的 IP 地址不同,NodeDNSIP 为节点本身提供名称解析。OpenStack 部署没有 DNS 作为服务。为了最大限度地减少对数据中心 DNS 的必要更改,DNS 服务作为静态 Pod 托管,以便将这些主机名提供给集群中的节点。

.status.platformStatus.openstack.loadBalancer

描述

loadBalancer 定义了集群使用的负载均衡器的配置方式。

类型

对象

属性 类型 描述

type

字符串

type 定义了集群在 OpenStack 平台上使用的负载均衡器的类型,它可以是用户管理的负载均衡器或 OpenShift 管理的负载均衡器,用于 OpenShift API 和 Ingress 端点。设置为 OpenShiftManagedDefault 时,将部署负责 API 和 Ingress 流量负载均衡的机器配置运算符中定义的静态 Pod。设置为 UserManaged 时,将不会部署这些静态 Pod,并且预计部署者会带外配置负载均衡器。省略时,表示没有意见,平台将选择合理的默认值。默认值为 OpenShiftManagedDefault。

.status.platformStatus.ovirt

描述

Ovirt 包含特定于 oVirt 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。已弃用:请改用 APIServerInternalIPs。

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。已弃用:请改用 IngressIPs。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

loadBalancer

对象

loadBalancer 定义了集群使用的负载均衡器的配置方式。

nodeDNSIP

字符串

已弃用:从 4.6 版本开始,不再设置或使用此字段。将在未来的版本中删除。

.status.platformStatus.ovirt.loadBalancer

描述

loadBalancer 定义了集群使用的负载均衡器的配置方式。

类型

对象

属性 类型 描述

type

字符串

type 定义了 Ovirt 平台上集群使用的负载均衡器的类型,可以是用户管理的或 OpenShift 管理的负载均衡器,用于 OpenShift API 和 Ingress 端点。设置为 OpenShiftManagedDefault 时,将部署机器配置操作符中定义的负责 API 和 Ingress 流量负载均衡的静态 Pod。设置为 UserManaged 时,这些静态 Pod 将不会部署,预计部署者会带外配置负载均衡器。省略此项意味着没有意见,平台将选择合理的默认值。默认值为 OpenShiftManagedDefault。

.status.platformStatus.powervs

描述

PowerVS 包含特定于 Power Systems Virtual Servers 基础设施提供商的设置。

类型

对象

属性 类型 描述

cisInstanceCRN

字符串

CISInstanceCRN 是管理集群基础域 DNS 区域的云互联网服务实例的 CRN。

dnsInstanceCRN

字符串

DNSInstanceCRN 是管理集群基础域 DNS 区域的 DNS 服务实例的 CRN。

region

字符串

region 为集群创建的新 Power VS 资源持有默认的 Power VS 区域。

resourceGroup

字符串

resourceGroup 是为集群创建的新 IBMCloud 资源的资源组名称。集群映像注册表操作符将使用此处指定的资源组在 IBMCloud 中为集群注册表设置 COS 实例。更多关于资源组的信息,请访问:https://cloud.ibm.com/docs/account?topic=account-rgs。省略此项,映像注册表操作符将无法配置存储,这将导致映像注册表集群操作符处于不可用状态。

serviceEndpoints

数组

serviceEndpoints 是自定义端点的列表,它将覆盖 Power VS 服务的默认服务端点。

serviceEndpoints[]

对象

PowervsServiceEndpoint 存储自定义 url 的配置,以覆盖 PowerVS 服务的现有默认值。

zone

字符串

zone 为集群创建的新 Power VS 资源持有默认区域。注意:目前仅支持单区域 OCP 集群。

.status.platformStatus.powervs.serviceEndpoints

描述

serviceEndpoints 是自定义端点的列表,它将覆盖 Power VS 服务的默认服务端点。

类型

数组

.status.platformStatus.powervs.serviceEndpoints[]

描述

PowervsServiceEndpoint 存储自定义 url 的配置,以覆盖 PowerVS 服务的现有默认值。

类型

对象

必需
  • name

  • url

属性 类型 描述

name

字符串

name 是 Power VS 服务的名称。一些服务包括 IAM - https://cloud.ibm.com/apidocs/iam-identity-token-api ResourceController - https://cloud.ibm.com/apidocs/resource-controller/resource-controller Power Cloud - https://cloud.ibm.com/apidocs/power-cloud

url

字符串

url 是具有方案 https 的完全限定 URI,它覆盖客户端的默认生成端点。这必须提供,并且不能为空。

.status.platformStatus.vsphere

描述

VSphere 包含特定于 VSphere 基础设施提供商的设置。

类型

对象

属性 类型 描述

apiServerInternalIP

字符串

apiServerInternalIP 是一个用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。它是 Infrastructure.status.apiServerInternalURI 指向的 IP。它是 API 服务器前面自托管负载均衡器的 IP。已弃用:请改用 APIServerInternalIPs。

apiServerInternalIPs

数组(字符串)

apiServerInternalIPs 是用于联系 Kubernetes API 服务器的 IP 地址,集群内部组件(例如使用基础架构而不是 Kubernetes 网络的 kubelet)可以使用该地址。这些是 API 服务器前面自托管负载均衡器的 IP。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

ingressIP

字符串

ingressIP 是一个外部 IP,它路由到默认入口控制器。该 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。已弃用:请改用 IngressIPs。

ingressIPs

数组(字符串)

ingressIPs 是路由到默认入口控制器的外部 IP。这些 IP 是用于解析默认路由主机名的通配符 DNS 记录的合适目标。在双协议栈集群中,此列表包含两个 IP,否则只有一个。

loadBalancer

对象

loadBalancer 定义了集群使用的负载均衡器的配置方式。

machineNetworks

数组(字符串)

machineNetworks 是用于连接所有 OpenShift 集群节点的 IP 网络。

nodeDNSIP

字符串

nodeDNSIP 是节点使用的内部 DNS 的 IP 地址。与由 DNS 操作符管理的 IP 地址不同,NodeDNSIP 为节点自身提供名称解析。vSphere 部署没有 DNS 即服务。为了最大限度地减少对数据中心 DNS 的必要更改,DNS 服务作为静态 Pod 托管,以便为集群中的节点提供这些主机名。

.status.platformStatus.vsphere.loadBalancer

描述

loadBalancer 定义了集群使用的负载均衡器的配置方式。

类型

对象

属性 类型 描述

type

字符串

type 定义了 VSphere 平台上集群使用的负载均衡器的类型,可以是用户管理的或 OpenShift 管理的负载均衡器,用于 OpenShift API 和 Ingress 端点。设置为 OpenShiftManagedDefault 时,将部署机器配置操作符中定义的负责 API 和 Ingress 流量负载均衡的静态 Pod。设置为 UserManaged 时,这些静态 Pod 将不会部署,预计部署者会带外配置负载均衡器。省略此项意味着没有意见,平台将选择合理的默认值。默认值为 OpenShiftManagedDefault。

API 端点

以下 API 端点可用

  • /apis/config.openshift.io/v1/infrastructures

    • DELETE:删除 Infrastructure 集合

    • GET:列出 Infrastructure 对象

    • POST:创建 Infrastructure

  • /apis/config.openshift.io/v1/infrastructures/{name}

    • DELETE:删除 Infrastructure

    • GET:读取指定的 Infrastructure

    • PATCH:部分更新指定的 Infrastructure

    • PUT:替换指定的 Infrastructure

  • /apis/config.openshift.io/v1/infrastructures/{name}/status

    • GET:读取指定的 Infrastructure 的状态

    • PATCH:部分更新指定的 Infrastructure 的状态

    • PUT:替换指定的 Infrastructure 的状态

/apis/config.openshift.io/v1/infrastructures

HTTP 方法

DELETE

描述

删除 Infrastructure 集合

表 1. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

401 - 未授权

HTTP 方法

GET

描述

列出 Infrastructure 对象

表 2. HTTP 响应
HTTP 代码 响应体

200 - OK

InfrastructureList 模式

401 - 未授权

HTTP 方法

POST

描述

创建 Infrastructure

表 3. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 4. 请求体参数
参数 类型 描述

body

Infrastructure 模式

表 5. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

201 - 已创建

Infrastructure 模式

202 - 已接受

Infrastructure 模式

401 - 未授权

/apis/config.openshift.io/v1/infrastructures/{name}

表 6. 全局路径参数
参数 类型 描述

name

字符串

Infrastructure 的名称

HTTP 方法

DELETE

描述

删除 Infrastructure

表 7. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

表 8. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

202 - 已接受

Status 模式

401 - 未授权

HTTP 方法

GET

描述

读取指定的 Infrastructure

表 9. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 Infrastructure

表 10. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 11. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 Infrastructure

表 12. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 13. 请求体参数
参数 类型 描述

body

Infrastructure 模式

表 14. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

201 - 已创建

Infrastructure 模式

401 - 未授权

/apis/config.openshift.io/v1/infrastructures/{name}/status

表 15. 全局路径参数
参数 类型 描述

name

字符串

Infrastructure 的名称

HTTP 方法

GET

描述

读取指定的 Infrastructure 的状态

表 16. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 Infrastructure 的状态

表 17. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 18. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 Infrastructure 的状态

表 19. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的最后一个重复字段以外的所有重复字段。这是 v1.23 之前的默认行为。- Warn:这将通过标准警告响应标头为每个从对象中删除的未知字段以及遇到的每个重复字段发送警告。如果没有任何其他错误,请求仍然会成功,并且只会持久化任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值 - Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,这将使请求失败并出现 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 20. 请求体参数
参数 类型 描述

body

Infrastructure 模式

表 21. HTTP 响应
HTTP 代码 响应体

200 - OK

Infrastructure 模式

201 - 已创建

Infrastructure 模式

401 - 未授权