English | 简体中文
What is NEW! |
---|
May 20th, 2021. Kruise v0.9.0 is RELEASED! It provides great features such as ContainerRecreate and DeletionProtection, please check the CHANGELOG for details. |
Mar 4th, 2021. Kruise v0.8.0 is RELEASED! It provides refactoring SidecarSet, Deployment hosted by UnitedDeployment, and a new kruise-daemon component which supports image pre-download, please check the CHANGELOG for details. |
Dec 16th, 2020. Kruise v0.7.0 is RELEASED! It provides a new CRD named AdvancedCronJob, promotes AdvancedStatefulSet to v1beta1 and a few features in other controllers, please check the CHANGELOG for details. |
OpenKruise (official site: https://openkruise.io) is now hosted by the Cloud Native Computing Foundation (CNCF) as a Sandbox Level Project. It consists of several controllers which extend and complement the Kubernetes core controllers for workload and application management.
As of now, Kruise mainly offers these controllers:
-
CloneSet: CloneSet is a workload that mainly focuses on managing stateless applications. It provides a rich set of features for more efficient, deterministic and controlled management, such as in-place update, specified Pod deletion, configurable priority/scatter based update, preUpdate/postUpdate hooks, etc. This post provides more details about why CloneSet is useful.
-
Advanced StatefulSet: An enhanced version of default StatefulSet with extra functionalities such as
in-place update
,pause
andmaxUnavailable
. -
SidecarSet: A controller that injects sidecar containers into the Pod spec based on the Pod selectors. The controller is also responsible for upgrading the sidecar containers.
-
Advanced DaemonSet: An enhanced version of default DaemonSet with extra upgrade strategies such as partition, node selector, pause and surging.
-
UnitedDeployment: This controller manages application Pods spread in multiple fault domains by using multiple workloads.
-
BroadcastJob: A job that runs Pods to completion across all the nodes in the cluster.
-
AdvancedCronJob: An extended CronJob controller, currently its template supports Job and BroadcastJob.
-
ImagePullJob: Help users download images on any nodes they want.
-
ContainerRecreateRequest: Provides a way to let users restart/recreate one or more containers in an existing Pod.
-
Deletion Protection: Provides a safety policy which could help users protect Kubernetes resources and applications' availability from the cascading deletion mechanism.