Kubernetes cluster management is how an IT team manages a group of Kubernetes clusters.
With modern cloud-native applications, Kubernetes environments are becoming highly distributed. They can be deployed across multiple datacenters on-premise, in the public cloud, and at the edge.
Organizations that want to use Kubernetes at scale or in production will have multiple clusters, such as for development, testing, and production, distributed across environments and need to be able to manage them effectively.
Benefits of a multi-cluster Kubernetes deployment:
- Improve application availability
- Reduce latency
- Improve disaster recovery
- Deploy legacy and cloud-native applications across environments
Learn how Kubernetes can help your organization build applications and manage containers on site and across hybrid cloud environments.
A Kubernetes cluster is a set of node machines for running containerized applications. The Kubernetes cluster gives you the ability to schedule and run containers across a group of machines, be they physical or virtual, on-premise or in the cloud.
A Kubernetes cluster has a desired state, which defines which applications or other workloads should be running, along with which images they use, which resources should be made available for them, and other such configuration details.
Kubernetes will automatically manage your cluster to match the desired state. For example, you deploy an application with a desired state of "3," meaning 3 replicas of the application should be running. If 1 of those containers crashes, Kubernetes will see that only 2 replicas are running, so it will add 1 more to satisfy the desired state.
Since current Kubernetes environments require management at an individual cluster level, the cost of managing these across an enterprise can quickly increase based on the number of clusters.
Each cluster has to be individually deployed, upgraded, and configured for security. In addition, if applications need to be deployed across environments, deployment has to be done manually or outside the Kubernetes environment control.
Management of day 2 operations such as patching and upgrading at the individual cluster level is also time-consuming and error prone.
Life cycle management of a Kubernetes cluster includes:
- Creating a new cluster
- Removing a cluster
- Updating the control plane and compute nodes
- Maintenance and updates to the node
- Upgrading the Kubernetes API version
- Securing the cluster
- Upgrading the cluster, which may also be provider-dependant
Developers want it to be easy to get access to new clusters as they need them. For operations teams and site reliability engineers (SREs), new clusters need to be configured correctly so that apps will be available in production. Ops and SREs also want to monitor the health of clusters in your environment.
Kubernetes cluster management addresses the common challenges administrators and site reliability engineers face as they work across a range of environments that run Kubernetes clusters.
The right Kubernetes cluster management tool gives you visibility into your clusters and helps you to manage application life cycles across hybrid environments. Red Hat® Advanced Cluster Management for Kubernetes controls clusters and applications from a single console, with built-in security policies.
Red Hat OpenShift® and Red Hat Advanced Cluster Management for Kubernetes deliver the platform and capabilities that are critical to addressing the challenges organizations face as they work across a range of environments, including multiple datacenters and private, hybrid, and public clouds.
Running on Red Hat OpenShift Container Platform, Red Hat Advanced Cluster Management for Kubernetes includes capabilities that unify multi-cluster management, provide policy-based governance, and extend application life cycle management.
With Red Hat Advanced Cluster Management for Kubernetes you can:
- Centrally create, update, and delete Kubernetes clusters across multiple private and public clouds
- Search, find, and modify any Kubernetes resource across the entire domain
- Automatically deploy applications to specific clusters based on channel and subscription definitions