在VMware环境中使用kubeadm部署Kubernetes集群需重点考虑虚拟化资源优化及网络适配,建议步骤如下:
-
环境准备
- 部署3台及以上VM(建议2核/4GB+)作为节点,操作系统选Ubuntu 22.04/CentOS 8+
- 启用嵌套虚拟化(ESXi参数调整),保障vCPU支持KVM
- 配置VMware网络使用桥接/NAT模式,确保节点间互通(禁用防火墙或开放6443/2379等端口)
-
容器运行时配置
- Containerd为首选(默认集成kubelet兼容性最佳)
- 配置systemd作为cgroup驱动,避免Pod状态异常
-
kubeadm初始化
- 主节点执行
kubeadm init --pod-network-cidr=10.244.0.0/16
- 保存join命令并配置CNI插件(推荐Calico支持VMware NSX-T集成)
- 主节点执行
-
网络适配要点
- 若使用vSphere Distributed Switch,需确保CNI插件兼容Underlay网络
- 当VMware Tanzu共存时,需规避Kubernetes服务CIDR冲突
-
存储集成
- 使用vSphere CSI Driver动态创建PV,需提前配置VMware Cloud Provider
- 验证StorageClass与vSAN/VMFS的兼容性
-
高可用方案选择
- 生产环境建议部署3个控制平面节点,采用kube-vip或HAProxy实现API Server负载均衡
- 结合vSphere HA实现物理层故障转移
关键注意:VMware Tools需更新至最新版本,避免因时间漂移导致证书错误;建议在虚拟机模板中预置Kubernetes依赖环境加速集群扩容。