The code is built with Terraform, Ansible and Shell Scripts.
This architecture augments an existing IBM VPC hosted Red Hat OpenShift Container Platform cluster with workers hosted on IBM PowerVS. The approach uses the ignition file from the existing cluster in order to boot Red Hat CoreOS with the cluster's MachineConfigPool worker
.
This architecture only adds compute plane workers.
Providers
The automation code uses the following providers:
- ibm-cloud/ibm to deploy a work on a Power Systems Virtual Server Instance.
- hashicorp/random sets a random id for the
- hashicorp/null we may use this in the future to sign the CSR on the bastion
- community-terraform-providers/ignition git
Ansible
The code uses Ansible Playbooks:
- ocp4-helpernode to set up an "all-in-one" support instance that has all the infrastructure/services in order to install OpenShift.
- ocp4-playbooks to create the ignition and to monitor OCP installation progress and configure the cluster nodes as defined in vars.yaml.
- Number of VPCs per Region
Each OpenShift Container Platform cluster creates its own VPC. The default quota of VPCs per region is 10 and will allow 10 clusters. To have more than 10 clusters in a single region, you must increase this quota.
- The Cloud Init is limited to 65K in lenght the Ignition file is longer than 65k, and needs to use source to point to the source.