karmada作为集群资源同步工具在灾备系统中的实践
1 karmada是什么?
karmada是一个kubernetes多集群管理系统,它可以保持原有使用apiserver的方式,将资源分布到多个集群中。提供了跨云多集群多模式管理、多策略的多集群调度、应用的跨集群故障转移、全局统一资源视图、多集群的服务发现和FederatedHPA能力。它的设计思路继承了集群联邦v2,目前是cncf的sandbox开源项目。
karmada是一个kubernetes多集群管理系统,它可以保持原有使用apiserver的方式,将资源分布到多个集群中。提供了跨云多集群多模式管理、多策略的多集群调度、应用的跨集群故障转移、全局统一资源视图、多集群的服务发现和FederatedHPA能力。它的设计思路继承了集群联邦v2,目前是cncf的sandbox开源项目。
使用kubebuilder来开发vpa相关的operator,这个operator会watch集群里的所有的vpa创建和删除和更新,controller-runtime提供了predictate来过滤调不需要的事件,使用predicate.GenerationChangedPredicate过滤掉vpa更新status。但是却发现vpa的status更新(由vpa-recommender更新推荐值)也触发了Reconcile。