High Availability installation instructions overview
You can install High Availability on any Kubernetes cluster. The following table contains links to the specific platform installation instructions and the installation pre-requirements for each one of them.
Platform | General install guide | Pre-installation requirements |
---|---|---|
Azure Kubernetes Service (AKS) |
||
Amazon Elastic Kubernetes Service (EKS) |
||
Google Kubernetes Engine (GKE) |
||
Red Hat OpenShift (OpenShift) |
||
Kubernetes |
Storage requirements
As HA (active/active) requires real-time shared storage between replicas, it does not support multi-region replication. In addition, there are specific storage requirements to use HA (active/active). Please review the specific pre-installation requirements for your platform. |
Managed controller with custom YAML definitions
Managed controllers require |
High Availability in a CloudBees CI on modern cloud platforms
When a managed controller is running in High Availability mode, the Pod status column appears on the Operation center dashboard. This columns displays how many controller replicas exist for each one of the managed controllers, and how many of them are available.
Start a managed controller in High Availability mode using the UI
Admin users can easily create managed controllers that run in High Availability mode by using the UI. Create or configure the managed controller as usual and in the configuration screen as shown in the following example:
-
Enable the High Availability mode.
-
Enter the number of desired replicas in the Managed controller replicas field.
-
Enter the Maximum number of replicas if you want auto-scaling. The Metrics server is required in your cluster if you modify this value to enable auto-scaling. Set it to zero to disable auto-scaling.
-
Set the CPU threshold in percent to trigger upscaling or downscaling if auto-scaling has been configured.
-
And select the Storage Class Name for the shared file system for the replicas. If it is empty, use the default storage class defined in your Kubernetes cluster.
Modifying the number of replicas or the container image of a running managed controller updates the managed controller deployment automatically, and it does not require a restart from the operations center. |
Team controllers do not support HA (active/active), but team controllers can be migrated to managed controllers by following Migrating managed controllers and team controllers. |
Single replica HA cluster
When creating a managed controller in High Availability mode, you can set the number of replicas to one. A single replica HA cluster cannot distribute the workload among the different replicas, but for CloudBees CI on modern cloud platforms, this configuration still provides the following High Availability benefits:
-
Rolling restarts.
-
Rolling upgrades.
In a single-replica HA cluster, if the controller fails, the controller is not available during the recovery process. |