KubeEdge边缘节点显示calico、kube-proxy等,并且
-
kubeproxy显示部署成功
-
calico初始化出现Error
这会导致部分 Pod 在调度至该边缘节点上后可能会一直处于 Pending
状态
这是因为部分守护进程集(例如,Calico)有强容忍度,在KubeSphere v3.1.1,网络插件是通过daemonset部署的,所以需要去daemonset调整kubeproxy和calico的亲和性防止它们调度至该边缘节点。
kubectl edit daemonset -n kube-system calico-node
kubectl edit daemonset -n kube-system kube-proxy
在spec里新增以下内容
spec:
...
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/edge
operator: DoesNotExist
...
然后刷新边缘节点容器组页面,即可看到kube-proxy和calico已经消失