calico-kube-controllers 作用一句空话 负责把k8s的各种变化更新到calico网络中。

calico-kube-controllers的Deployment,部署一个Calico Kubernetes控制器。quay.io/calico/kube-controllers容器包含以下控制器:

policy controller:监视网络策略和编程Calico策略,它会把Kubernetes的network policies同步到Calico datastore中,该控制器需要有访问Kubernetes API的只读权限,以监听NetworkPolicy事件。 用户在k8s集群中设置了Pod的Network Policy之后,calico-kube-controllers就会自动通知各个Node上的calico-node服务,在宿主机上设置相应的iptables规则,完成Pod间网络访问策略的设置。

 namespace controller:监视命名空间和编程Calico配置文件,它会把Kubernetes的namespace label变化同步到Calico datastore中,该控制器需要有访问Kubernetes API的只读权限,以监听Namespace事件。

 serviceaccount controller:监视服务帐户和编程Calico配置文件,它会把Kubernetes的service account变化同步到Calico datastore中,该控制器需要有访问Kubernetes API的只读权限,以监听ServiceAccount事件。

 workloadendpoint controller:监视pod标签的更改并更新Calico工作负载中的endpoints配置,它会把Kubernetes的pod label变化同步到Calico datastore中,该控制器需要有访问Kubernetes API的只读权限,以监听Pod事件。

 node controller:监视删除Kubernetes nodes节点的操作并从Calico中也删除相应的数据,该控制器需要有访问Kubernetes API的只读权限,以监听Node事件。

posted @ 2023-01-09 15:31  滴滴滴  阅读(1965)  评论(0编辑  收藏  举报