---
# System prepended metadata

title: OpenShiftCluster

---

# OpenShiftCluster

## Owner: none

```
spec:
  initialComputeReplicas: 0
  podCIDR: 10.132.0.0/14
  providerCreds:
    name: provider-creds
  pullSecret:
    name: pull-secret
  release:
    channel: ""
    image: quay.io/openshift-release-dev/ocp-release:4.7.0-fc.4-x86_64
  serviceCIDR: 172.31.0.0/16
  sshKey:
    name: ssh-key
status:
  ready: true
```

# NodePool

## Owner: OpenShiftCluster

```
spec:
  autoScaling:
    max: 0
    min: 0
  clusterName: example
  nodeCount: 2
  platform:
    aws:
      instanceType: m5.large
```

# Cluster

## Owner: OpenShiftCluster

```
spec:
  controlPlaneEndpoint:
    host: api.example.ocp.variantweb.net
    port: 6443
  controlPlaneRef:
    apiVersion: hypershift.openshift.io/v1alpha1
    kind: HostedControlPlane
    name: example
    namespace: hypershift
  infrastructureRef:
    apiVersion: hypershift.openshift.io/v1alpha1
    kind: ExternalInfraCluster
    name: example
    namespace: hypershift
status:
  conditions:
  - lastTransitionTime: "2021-01-28T15:44:26Z"
    status: "True"
    type: Ready
  - lastTransitionTime: "2021-01-28T15:44:24Z"
    status: "True"
    type: ControlPlaneReady
  - lastTransitionTime: "2021-01-28T15:44:26Z"
    status: "True"
    type: InfrastructureReady
  controlPlaneReady: true
  infrastructureReady: true
  observedGeneration: 2
  phase: Provisioned
```

# HostedControlPlane

## Owner: Cluster

```
spec:
  podCIDR: 10.132.0.0/14
  providerCreds:
    name: provider-creds
  pullSecret:
    name: pull-secret
  releaseImage: quay.io/openshift-release-dev/ocp-release:4.7.0-fc.4-x86_64
  serviceCIDR: 172.31.0.0/16
  sshKey:
    name: ssh-key
status:
  controlPlaneEndpoint:
    host: api.example.ocp.variantweb.net
    port: 6443
  ready: true
```

# ExternalInfraCluster

## Owner: Cluster

```
spec:
  controlPlaneEndpoint:
    host: api.example.ocp.variantweb.net
    port: 6443
  region: us-east-2
status:
  ready: true
```

# AWSMachineTemplate

## Owner: Cluster

```
spec:
  template:
    spec:
      ami:
        id: ami-07f853f5be82a15e0
      cloudInit:
        insecureSkipSecretsManager: true
        secureSecretsBackend: secrets-manager
      iamInstanceProfile: example-cluster-external-worker-profile
      instanceType: m5.large
      subnet:
        filters:
        - name: tag:Name
          values:
          - example-cluster-external-private-us-east-2a
      uncompressedUserData: true
```

# MachineSet

## Owner: Cluster

```
spec:
  clusterName: example
  replicas: 2
  selector:
    matchLabels:
      example-c-c5ed10a5-example-cluster-external: example-c-c5ed10a5-example-cluster-external
  template:
    metadata:
      labels:
        cluster.x-k8s.io/cluster-name: example-cluster-external
        example-c-c5ed10a5-example-cluster-external: example-c-c5ed10a5-example-cluster-external
    spec:
      bootstrap:
        dataSecretName: example-user-data
      clusterName: example
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1alpha3
        kind: AWSMachineTemplate
        name: example-c-c5ed10a5-example-cluster-external
        namespace: hypershift
status:
  fullyLabeledReplicas: 2
  observedGeneration: 1
  replicas: 2
  selector: cluster.x-k8s.io/cluster-name=example,example-c-c5ed10a5-example-cluster-external=example-c-c5ed10a5-example-cluster-external
```

# Machine

## Owner: MachineSet

```
spec:
  bootstrap:
    dataSecretName: example-user-data
  clusterName: example
  infrastructureRef:
    apiVersion: infrastructure.cluster.x-k8s.io/v1alpha3
    kind: AWSMachine
    name: example-c-c5ed10a5-example-cluster-external-djqp4
    namespace: hypershift
    uid: f3c29784-6226-40b2-ac78-465e93267d87
  providerID: aws:///us-east-2a/i-05abef698139f2117
status:
  addresses:
  - address: ip-10-0-116-56.us-east-2.compute.internal
    type: InternalDNS
  - address: 10.0.116.56
    type: InternalIP
  - address: ec2-18-224-236-174.us-east-2.compute.amazonaws.com
    type: ExternalDNS
  - address: 18.224.236.174
    type: ExternalIP
  bootstrapReady: true
  conditions:
  - lastTransitionTime: "2021-01-28T15:44:49Z"
    status: "True"
    type: Ready
  - lastTransitionTime: "2021-01-28T15:44:21Z"
    status: "True"
    type: BootstrapReady
  - lastTransitionTime: "2021-01-28T15:44:49Z"
    status: "True"
    type: InfrastructureReady
  - lastTransitionTime: "2021-01-28T15:44:21Z"
    reason: WaitingForNodeRef
    severity: Info
    status: "False"
    type: NodeHealthy
  infrastructureReady: true
  lastUpdated: "2021-01-28T15:44:21Z"
  observedGeneration: 1
  phase: Provisioning
```

# AWSMachine

## Owner: Machine

```
spec:
  ami:
    id: ami-07f853f5be82a15e0
  cloudInit:
    insecureSkipSecretsManager: true
    secureSecretsBackend: secrets-manager
  iamInstanceProfile: example-cluster-external-worker-profile
  instanceType: m5.large
  providerID: aws:///us-east-2a/i-05abef698139f2117
  subnet:
    filters:
    - name: tag:Name
      values:
      - example-cluster-external-private-us-east-2a
  uncompressedUserData: true
status:
  addresses:
  - address: ip-10-0-116-56.us-east-2.compute.internal
    type: InternalDNS
  - address: 10.0.116.56
    type: InternalIP
  - address: ec2-18-224-236-174.us-east-2.compute.amazonaws.com
    type: ExternalDNS
  - address: 18.224.236.174
    type: ExternalIP
  conditions:
  - lastTransitionTime: "2021-01-28T15:44:49Z"
    status: "True"
    type: Ready
  - lastTransitionTime: "2021-01-28T15:44:49Z"
    status: "True"
    type: InstanceReady
  - lastTransitionTime: "2021-01-28T15:44:48Z"
    status: "True"
    type: SecurityGroupsReady
  instanceState: running
  ready: true
```


