To install an OpenShift cluster with an installer-provisioned infrastructure, follow the instructions below.

This is one of the two methods to install an OpenShift cluster. The other method is to install the cluster with a user-provisioned infrastructure (see Installing OpenShift 4 with User-Provisioned Infrastructure). You can use only one of the two methods.

Prepare install-config.yaml

  1. Generate install-config.yaml with the following command:
    openshift-install --dir=$MY_CLUSTER create install-config
  2. Edit $MY_CLUSTER/install-config.yaml to update the networking section.
    • Change networkType to ncp.
    • Set the cidr value under clusterNetwork.
An example of install-config.yaml:
apiVersion: v1
baseDomain: openshift.test
compute:
- architecture: amd64
  hyperthreading: Enabled
  name: worker
  platform: {}
  replicas: 3
controlPlane:
  architecture: amd64
  hyperthreading: Enabled
  name: master
  platform: {}
  replicas: 3
metadata:
  creationTimestamp: null
  name: ipi
networking:
  networkType: ncp
  clusterNetwork:
  - cidr: 10.0.0.0/14
    hostPrefix: 24
  machineCIDR: 192.168.10.0/24
  serviceNetwork:
  - 172.8.0.0/16
platform:
  vsphere:
    apiVIP: 192.168.10.11
    cluster: cluster
    datacenter: dc
    defaultDatastore: vsanDatastore
    ingressVIP: 192.168.10.12
    network: openshift-segment
    password: pass
    username: user
    vCenter: my-vc.local
publish: External
pullSecret: 'xxx'
sshKey: 'ssh-rsa xxx'
You can validate your DNS configuration before installing OpenShift. Here is a sample DNS zone database:
$TTL    604800
$ORIGIN openshift.test.
@       IN      SOA     dns1.openshift.test. root.openshift.test. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
; main domain name servers
@       IN      NS      localhost.
@       IN      A       127.0.0.1
@       IN      AAAA    ::1
        IN      NS      dns1.openshift.test.
; recors for name servers above
dns1    IN      A       10.92.204.129
; sub-domain definitions
$ORIGIN ipi.openshift.test.
api IN A 192.168.10.11
apps IN A 192.168.10.12
; sub-domain definitions
$ORIGIN apps.ipi.openshift.test.
* IN A 192.168.10.12

Prepare the manifest files

  • Move the operator yaml files from deploy/openshift4 to $MY_CLUSTER/manifests.
  • Edit the operator configurations in configmap.yaml.
  • Add the operator image and NCP image in operator.yaml.

Create the cluster

Run the following command:
openshift-install create cluster --dir=$MY_CLUSTER
The installation log messages are in $MY_CLUSTER/.openshift_install.log. If the installation fails, check the log for error messages and make changes to the environment accordingly. Then re-run the installation with the following command:
openshift-install wait-for install-complete