×
Description

Infrastructure holds cluster-wide information about Infrastructure. The canonical name is cluster Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).

Type

object

Required
  • spec

Specification

Property Type Description

apiVersion

string

APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta_v2

Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec holds user settable values for configuration

status

object

status holds observed values from the cluster. They may not be overridden.

.spec

Description

spec holds user settable values for configuration

Type

object

Property Type Description

cloudConfig

object

cloudConfig is a reference to a ConfigMap containing the cloud provider configuration file. This configuration file is used to configure the Kubernetes cloud provider integration when using the built-in cloud provider integration or the external cloud controller manager. The namespace for this config map is openshift-config. cloudConfig should only be consumed by the kube_cloud_config controller. The controller is responsible for using the user configuration in the spec for various platforms and combining that with the user provided ConfigMap in this field to create a stitched kube cloud config. The controller generates a ConfigMap kube-cloud-config in openshift-config-managed namespace with the kube cloud config is stored in cloud.conf key. All the clients are expected to use the generated ConfigMap only.

platformSpec

object

platformSpec holds desired information specific to the underlying infrastructure provider.

.spec.cloudConfig

Description

cloudConfig is a reference to a ConfigMap containing the cloud provider configuration file. This configuration file is used to configure the Kubernetes cloud provider integration when using the built-in cloud provider integration or the external cloud controller manager. The namespace for this config map is openshift-config. cloudConfig should only be consumed by the kube_cloud_config controller. The controller is responsible for using the user configuration in the spec for various platforms and combining that with the user provided ConfigMap in this field to create a stitched kube cloud config. The controller generates a ConfigMap kube-cloud-config in openshift-config-managed namespace with the kube cloud config is stored in cloud.conf key. All the clients are expected to use the generated ConfigMap only.

Type

object

Property Type Description

key

string

Key allows pointing to a specific key/value inside of the configmap. This is useful for logical file references.

name

string

.spec.platformSpec

Description

platformSpec holds desired information specific to the underlying infrastructure provider.

Type

object

Property Type Description

alibabaCloud

object

AlibabaCloud contains settings specific to the Alibaba Cloud infrastructure provider.

aws

object

AWS contains settings specific to the Amazon Web Services infrastructure provider.

azure

object

Azure contains settings specific to the Azure infrastructure provider.

baremetal

object

BareMetal contains settings specific to the BareMetal platform.

equinixMetal

object

EquinixMetal contains settings specific to the Equinix Metal infrastructure provider.

gcp

object

GCP contains settings specific to the Google Cloud Platform infrastructure provider.

ibmcloud

object

IBMCloud contains settings specific to the IBMCloud infrastructure provider.

kubevirt

object

Kubevirt contains settings specific to the kubevirt infrastructure provider.

nutanix

object

Nutanix contains settings specific to the Nutanix infrastructure provider.

openstack

object

OpenStack contains settings specific to the OpenStack infrastructure provider.

ovirt

object

Ovirt contains settings specific to the oVirt infrastructure provider.

powervs

object

PowerVS contains settings specific to the IBM Power Systems Virtual Servers infrastructure provider.

type

string

type is the underlying infrastructure provider for the cluster. This value controls whether infrastructure automation such as service load balancers, dynamic volume provisioning, machine creation and deletion, and other integrations are enabled. If None, no infrastructure automation is enabled. Allowed values are "AWS", "Azure", "BareMetal", "GCP", "Libvirt", "OpenStack", "VSphere", "oVirt", "KubeVirt", "EquinixMetal", "PowerVS", "AlibabaCloud", "Nutanix" and "None". Individual components may not support all platforms, and must handle unrecognized platforms as None if they do not support that platform.

vsphere

object

VSphere contains settings specific to the VSphere infrastructure provider.

.spec.platformSpec.alibabaCloud

Description

AlibabaCloud contains settings specific to the Alibaba Cloud infrastructure provider.

Type

object

.spec.platformSpec.aws

Description

AWS contains settings specific to the Amazon Web Services infrastructure provider.

Type

object

Property Type Description

serviceEndpoints

array

serviceEndpoints list contains custom endpoints which will override default service endpoint of AWS Services. There must be only one ServiceEndpoint for a service.

serviceEndpoints[]

object

AWSServiceEndpoint store the configuration of a custom url to override existing defaults of AWS Services.

.spec.platformSpec.aws.serviceEndpoints

Description

serviceEndpoints list contains custom endpoints which will override default service endpoint of AWS Services. There must be only one ServiceEndpoint for a service.

Type

array

.spec.platformSpec.aws.serviceEndpoints[]

Description

AWSServiceEndpoint store the configuration of a custom url to override existing defaults of AWS Services.

Type

object

Property Type Description

name

string

name is the name of the AWS service. The list of all the service names can be found at https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html This must be provided and cannot be empty.

url

string

url is fully qualified URI with scheme https, that overrides the default generated endpoint for a client. This must be provided and cannot be empty.

.spec.platformSpec.azure

Description

Azure contains settings specific to the Azure infrastructure provider.

Type

object

.spec.platformSpec.baremetal

Description

BareMetal contains settings specific to the BareMetal platform.

Type

object

.spec.platformSpec.equinixMetal

Description

EquinixMetal contains settings specific to the Equinix Metal infrastructure provider.

Type

object

.spec.platformSpec.gcp

Description

GCP contains settings specific to the Google Cloud Platform infrastructure provider.

Type

object

.spec.platformSpec.ibmcloud

Description

IBMCloud contains settings specific to the IBMCloud infrastructure provider.

Type

object

.spec.platformSpec.kubevirt

Description

Kubevirt contains settings specific to the kubevirt infrastructure provider.

Type

object

.spec.platformSpec.nutanix

Description

Nutanix contains settings specific to the Nutanix infrastructure provider.

Type

object

Required
  • prismCentral

  • prismElements

Property Type Description

prismCentral

object

prismCentral holds the endpoint address and port to access the Nutanix Prism Central. When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list.

prismElements

array

prismElements holds one or more endpoint address and port data to access the Nutanix Prism Elements (clusters) of the Nutanix Prism Central. Currently we only support one Prism Element (cluster) for an OpenShift cluster, where all the Nutanix resources (VMs, subnets, volumes, etc.) used in the OpenShift cluster are located. In the future, we may support Nutanix resources (VMs, etc.) spread over multiple Prism Elements (clusters) of the Prism Central.

prismElements[]

object

NutanixPrismElementEndpoint holds the name and endpoint data for a Prism Element (cluster)

.spec.platformSpec.nutanix.prismCentral

Description

prismCentral holds the endpoint address and port to access the Nutanix Prism Central. When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list.

Type

object

Required
  • address

  • port

Property Type Description

address

string

address is the endpoint address (DNS name or IP address) of the Nutanix Prism Central or Element (cluster)

port

integer

port is the port number to access the Nutanix Prism Central or Element (cluster)

.spec.platformSpec.nutanix.prismElements

Description

prismElements holds one or more endpoint address and port data to access the Nutanix Prism Elements (clusters) of the Nutanix Prism Central. Currently we only support one Prism Element (cluster) for an OpenShift cluster, where all the Nutanix resources (VMs, subnets, volumes, etc.) used in the OpenShift cluster are located. In the future, we may support Nutanix resources (VMs, etc.) spread over multiple Prism Elements (clusters) of the Prism Central.

Type

array

.spec.platformSpec.nutanix.prismElements[]

Description

NutanixPrismElementEndpoint holds the name and endpoint data for a Prism Element (cluster)

Type

object

Required
  • endpoint

  • name

Property Type Description

endpoint

object

endpoint holds the endpoint address and port data of the Prism Element (cluster). When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list.

name

string

name is the name of the Prism Element (cluster). This value will correspond with the cluster field configured on other resources (eg Machines, PVCs, etc).

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

Description

endpoint holds the endpoint address and port data of the Prism Element (cluster). When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy. Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the proxy spec.noProxy list.

Type

object

Required
  • address

  • port

Property Type Description

address

string

address is the endpoint address (DNS name or IP address) of the Nutanix Prism Central or Element (cluster)

port

integer

port is the port number to access the Nutanix Prism Central or Element (cluster)

.spec.platformSpec.openstack

Description

OpenStack contains settings specific to the OpenStack infrastructure provider.

Type

object

.spec.platformSpec.ovirt

Description

Ovirt contains settings specific to the oVirt infrastructure provider.

Type

object

.spec.platformSpec.powervs

Description

PowerVS contains settings specific to the IBM Power Systems Virtual Servers infrastructure provider.

Type

object

Property Type Description

serviceEndpoints

array

serviceEndpoints is a list of custom endpoints which will override the default service endpoints of a Power VS service.

serviceEndpoints[]

object

PowervsServiceEndpoint stores the configuration of a custom url to override existing defaults of PowerVS Services.

.spec.platformSpec.powervs.serviceEndpoints

Description

serviceEndpoints is a list of custom endpoints which will override the default service endpoints of a Power VS service.

Type

array