The ocp4-upi-compute-powervs project provides Terraform based automation code to help with the deployment of OpenShift Container Platform (OCP) compute workers on IBM® Power Systems™ Virtual Server on IBM Cloud.
Warning Active code updates in progress to make the code base function more efficiently as part of the Intel Control Plane with Power and Intel workers ci. Consult the documentation for the latest approved versions.
v1 is left for compatibility reasons. v2 is the preferred branch.
- Requires Terraform v1.14 or higher
- A IBM Cloud Workspace for Power Virtual Server on IBM Cloud that supports Power Edge Router. If your workspace supports
s1022,e1080, you'll have to update the var.tfvars to the supportedsystem_type. - An RHCOS Image loaded to the PowerVS workspace service.
- An IBM Cloud Transit Gateway connecting the IBM Cloud to your IBM Cloud VPC. The connections must be established.
- An Existing OpenShift Container Platform Cluster installed on IBMCloud VPC with Intel architecture.
- The Automation Supports OVN-Kube networks only.
- The terraform code deploys a dhcp sever on the bastion node.
- The VPC support system uses
vpcuserto connect.
Change to the v2 directory. v1 is maintained for backwards compatibility.
❯ terraform init -upgrade
Copy the var.tfvars into a sub-folder data/
Edit for your usage
❯ terraform plan -var-file=data/var.tfvars
Note: The PowerVS and IBMCloud VPC regions must be compatible.
❯ terraform apply -var-file=data/var.tfvars
❯ terraform destroy -var-file=data/var.tfvars
To run the code, you'll need to set the MTU for your machine:
ip link set eth0 mtu 1400
To get the IPs of the Power Workers.
❯ oc get nodes -l 'kubernetes.io/arch=ppc64le' -owide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
mac-d263-worker-0 Ready worker 40h v1.27.4+4e87926 192.168.200.10 <none> Red Hat Enterprise Linux CoreOS 414.92.202308151250-0 (Plow) 5.14.0-284.25.1.el9_2.ppc64le cri-o://1.27.1-6.rhaos4.14.gitc2c9f36.el9
If you have any questions or issues you can create a new [issue here][issues].
Pull requests are very welcome! Make sure your patches are well tested. Ideally create a topic branch for every separate change you make. For example:
- Fork the repo
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Added some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
All source files must include a Copyright and License header. The SPDX license header is preferred because it can be easily scanned.
If you would like to see the detailed LICENSE click here.
#
# Copyright 2026 - IBM Corporation. All rights reserved
# SPDX-License-Identifier: Apache-2.0
#
Question: Is this a Red Hat or IBM supported solution?
Multi-Arch Compute with an Installer Provisioned Infrastructure control plane on IBM Cloud (Intel Control Plane and Intel/Power compute) is not supported with a User-Provisioned Infrastructure worker - Installer-Provisioned Infrastructure and User Provisioned nodes are not supported.