Windows系统K8s节点是否需要部署aws-node与kube-proxy Pod?
问题解答
部署形态说明
- 你当前的集群状态是完全正常的,Windows节点不需要在kube-system命名空间下部署aws-node、kube-proxy的Pod,你通过RDP在Windows系统内看到的运行中kube-proxy服务就是该组件的正常运行形态。
和Linux节点的运行机制差异
- kube-proxy组件
Linux节点上kube-proxy默认以DaemonSet资源类型调度为Pod运行,依赖Linux内核的iptables/ipvs模块实现Service的流量转发规则。Windows受限于操作系统容器网络的实现逻辑差异,kube-proxy默认直接以Windows系统服务的形式运行在节点主机上,不需要封装为Pod资源。 - aws-node(AWS VPC CNI插件)组件
Linux节点上aws-node以DaemonSet形式部署为Pod,负责给节点上的Pod分配VPC内网地址、配置节点网络路由规则。Windows节点上对应的VPC CNI功能由直接运行在主机上的Windows服务实现,不会以Pod形式出现在集群的 workload 列表中,也无需额外部署Pod版本的插件。 - 你可以执行
kubectl get nodes -o wide确认所有Windows节点的IP地址和状态正常,也可以直接在Windows节点上调度测试Pod验证集群内、外网连通性,只要网络功能正常就说明两个组件运行无异常。
内容的提问来源于stack exchange,提问作者Kseven
相关产品推荐
相关产品推荐

