universal-application-openshift-cluster¶
Pipeline definition for OpenShift Cluster deployment
This profile defines the primary pipeline for building a complete OpenShift cluster. It orchestrates the end-to-end cluster deployment process including initialization, node deployment, and post-installation configuration.
This pipeline uses agent-based installation, which leverages the OpenShift installer to generate agent boot images that configure and join nodes to the cluster automatically. The pipeline is designed to be flexible and can be customized based on specific requirements of the OpenShift deployment.
Requirements¶
Required Parameters: - broker/name: Name of broker managing cluster resources - openshift/pull-secret: Red Hat pull secret for container images - openshift/cluster-domain: Base domain for cluster DNS
Optional Parameters: - openshift/api-vip: VIP for API access - openshift/ingress-vip: VIP for Ingress access - openshift/network/machineNetwork: Node IP address ranges - openshift/network/serviceNetwork: Service IP ranges - openshift/network/clusterNetwork: Pod network configuration - openshift/oc-url: Custom URL for OpenShift CLI tools - openshift/external-registry: External registry configuration - openshift/external-registry-create: Flag to create registry - openshift/external-registry-update: Flag to update registry - registry/address: Registry address for configuration
Usage¶
This pipeline executes in the following sequence:
# Pre-cluster provision tasks:
1. openshift-cluster-prep # Prepare cluster configuration
# Post-cluster provision tasks:
1. openshift-cluster-update-zone # Update DNS zone
2. openshift-cluster-join # Build agent images and join nodes
3. openshift-cluster-wait-for-bootstrap-complete # Wait for bootstrap
4. openshift-cluster-transition-to-installation # Transition nodes
5. openshift-cluster-wait-for-install-complete # Wait for install
6. openshift-cluster-nmstate-operator # Install NMState operator
# Cleanup tasks (cluster destruction):
1. openshift-cluster-cleanup # Clean up cluster resources
The pipeline automatically manages: - Node role assignments - Machine type configurations - Profile applications - Workflow chains - Cluster membership
Objects that Reference universal-application-openshift-cluster¶
Not used in current content packs
Objects used by universal-application-openshift-cluster¶
- params universal/cluster-provision-post-flexiflow in field Params as value [openshift-cluster-update-zone openshift-cluster-join openshift-cluster-wait-for-bootstrap-complete openshift-cluster-transition-to-installation openshift-cluster-wait-for-install-complete openshift-cluster-nmstate-operator openshift-cluster-enable-gitops]
- params broker-pool/return-pipeline in field Params as value universal-application-discover
- params cluster-provision/task-list in field Params as value [rsa-key-create openshift-direct-pool-operations]
- params docker-context/startup-options in field Params as value jsonobject:[ "--dns", "{{.ProvisionerURL | urlParse | dig "host" "127.0.0.1:0" | splitList ":" | first}}" {{if .ParamExists "dns-servers"}}{{range \(i := .ParamExpand "dns-servers" }}, "--dns", "{{\)i}}"{{end}}{{end}} ]
- params on-delete-workflow in field Params as value universal-cluster-destroy
- params broker/set-pipeline in field Params as value universal-application-openshift-node
- params on-complete-work-order-mode in field Params as value true
- params universal/cluster-destroy-post-flexiflow in field Params as value [openshift-cluster-cleanup]
- params universal/cluster-provision-pre-flexiflow in field Params as value [openshift-cluster-prep]
- params broker/set-workflow in field Params as value universal-discover
- params cluster-destroy/task-list in field Params as value [cluster-set-destroy openshift-direct-pool-operations]
- params cluster/wait-for-members in field Params as value false
- params universal/application in field Params as value openshift-cluster
- params universal/workflow-chain-index-override in field Params as value cluster
- params broker-pool/return-workflow in field Params as value universal-discover
- params dns-servers