Workloads
This section describes how to manage application workloads.
In the KubeSphere platform, applications run in pods. To ensure business continuity when a single pod fails, it is usually necessary to create multiple replicas of a pod for an application. An application workload is a resource used to manage pod replicas. It is responsible for managing multiple replicas of an application’s pods, primarily providing the following functions:
-
Monitor pod status and automatically restart or replace unhealthy pods.
-
Allocate and limit resources such as CPU and memory for pods.
-
Automatically update pods according to the user-specified update strategy.
-
Roll back pods to a previous version.
The KubeSphere platform supports the following types of application workloads:
-
Deployment: Used to manage stateless applications. Multiple pod replicas managed by a Deployment share a single volume. When a pod replica is recreated, the new pod replica has a different name from the old one.
-
StatefulSet: Used to manage stateful applications. Multiple pod replicas managed by a StatefulSet can use independent volumes. Each pod replica has a fixed ordinal name. When a pod replica is recreated, the new pod replica has the same name as the old one.
-
DaemonSet: Used to manage daemon processes. A DaemonSet ensures that all or specific nodes run a pod replica. When a new node is added to the cluster, if the new node meets the pod scheduling rules, the DaemonSet automatically creates a pod replica on the new node.