以下是在Debian上部署Kubernetes的最佳实践:
-
系统准备
- 使用Debian 12+等最新稳定版本,确保硬件满足最低要求(如Master节点≥2核CPU、≥8GB内存)。
- 关闭swap分区:
sudo swapoff -a并修改/etc/fstab永久生效。
- 配置静态IP和主机名,确保节点间网络互通,添加
/etc/hosts解析。
-
安装组件
- 添加Kubernetes官方APT源,安装
kubelet、kubeadm、kubectl,并锁定版本避免自动升级。
- 以容器运行时替代Docker,推荐使用containerd:安装并配置
SystemdCgroup为true。
-
集群初始化
- 在主节点执行
kubeadm init,指定Pod网络CIDR(如10.244.0.0/16),生成集群配置。
- 配置
kubectl访问权限,复制admin.conf到用户目录。
-
网络插件
- 选择Calico、Flannel等支持高可用的CNI插件,通过
kubectl apply部署。
- 配置防火墙规则,开放必要端口(如6443、10250等)。
-
安全与高可用
- 启用RBAC权限控制,限制API访问。
- 部署多节点控制平面(≥3个Master节点),搭配负载均衡器(如HAProxy)实现高可用。
- 使用etcd集群存储数据,定期备份。
-
监控与运维
- 部署Prometheus+Grafana监控集群状态,配置ELK或Loki收集日志。
- 定期更新Kubernetes组件和系统补丁,备份etcd数据和集群配置。
参考来源: