系统架构

    所有 OpenKruise 的功能都是通过 Kubernetes API 来提供, 比如:

    • 资源对象中的特定标识(labels, annotations, envs 等),比如

    逻辑上来说,如 cloneset-controller/sidecarset-controller 这些的 controller 都是独立运行的。不过为了减少复杂度,它们都被打包在一个独立的二进制文件、并运行在 这个 Pod 中。

    除了 controller 之外, 中还包含了针对 Kruise CRD 以及 Pod 资源的 admission webhook。Kruise-manager 会创建一些 webhook configurations 来配置哪些资源需要感知处理、以及提供一个 Service 来给 kube-apiserver 调用。

    这是从 Kruise v0.8.0 版本开始提供的一个新的 daemon 组件。

    它通过 DaemonSet 部署到每个 Node 节点上,提供镜像预热、容器重启等功能。