作为IT经理,在Windows环境中使用kubeadm部署Kubernetes集群需注意以下核心要点:
-
环境限制
- Kubernetes控制平面(Control Plane)必须运行在Linux节点,仅Worker节点可部署在Windows Server 2019/2022(需LTSC版本)。
- 确认Windows节点满足:启用Hyper-V、容器功能,且使用Docker EE或containerd运行时。
-
混合集群架构
- 至少部署1个Linux主节点(如Ubuntu)运行kube-apiserver等组件,Windows节点通过kubeadm join加入集群。
-
关键步骤
- Linux主节点:安装kubeadm/kubelet,执行
kubeadm init
并配置CNI插件(如Calico Windows版)。 - Windows节点:
▪️ 安装Windows Containers功能并重启
▪️ 通过Install-Kubernetes.ps1
脚本部署kubelet/kubeadm
▪️ 执行kubeadm join
关联主节点
- Linux主节点:安装kubeadm/kubelet,执行
-
网络特殊性
- 必须选择支持Windows的CNI(如Calico VXLAN模式或Flannel host-gw),禁用IPv6。
- kube-proxy需在Windows节点以进程模式运行。
-
验证与排障
- 使用
kubectl get nodes -o wide
确认节点状态 - 部署Windows测试Pod(如mcr.microsoft.com/windows/servercore:ltsc2022)
- 检查kubelet日志:
Get-EventLog -LogName Application -Source kubelet
- 使用
-
生产建议
- 优先在测试环境验证Windows功能(如持久卷挂载、网络策略)。
- 关注Kubernetes版本兼容性(当前推荐v1.28+对Windows支持较完善)。
- 参考微软官方文档《Kubernetes on Windows》进行安全加固。