Debian下Kubernetes部署的最佳实践
导读:一 环境与规划 操作系统与版本:优先选择 Debian 12(Bookworm),内核保持 稳定版,所有节点保持一致的 时间与时区。 硬件基线:控制平面建议 ≥2 核 CPU、4 GB RAM、20 GB 磁盘;工作节点按业务负载提升规格...
一 环境与规划
- 操作系统与版本:优先选择 Debian 12(Bookworm),内核保持 稳定版,所有节点保持一致的 时间与时区。
- 硬件基线:控制平面建议 ≥2 核 CPU、4 GB RAM、20 GB 磁盘;工作节点按业务负载提升规格。
- 网络与互通:节点间需 互通,规划好 Pod 网段 与 Service 网段,避免与宿主机/现有内网冲突。
- 主机标识:为每个节点设置 唯一主机名,并在 /etc/hosts 或 DNS 中维护解析,便于排障与自动化。
- 安全基线:准备 非 root 运维账号、SSH 证书登录、最小权限的 sudo 策略。
二 系统与安全加固
- 内核与模块:启用 br_netfilter、overlay 等模块,开启 IP 转发 与桥接流量到 iptables。
- 交换分区:Kubernetes 要求关闭 Swap(临时与永久),避免 kubelet 异常。
- 防火墙与端口:仅放行必要端口(如 6443/443/10250/10251/10252/8472 UDP 等,按网络插件与组件调整)。
- 容器运行时:优先使用 containerd(或符合 CRI 的运行时),并按需配置 systemd cgroup 驱动。
- 软件源与版本:添加 Kubernetes APT 仓库,安装 kubelet/kubeadm/kubectl,并对组件执行 版本锁定(hold)。
- 安全基线:启用 RBAC、按业务划分 命名空间、开启 审计日志、限制对敏感端口的访问、定期升级修复漏洞。
三 使用 kubeadm 部署步骤
- 准备阶段:系统更新;设置 主机名 与 /etc/hosts;加载 br_netfilter/overlay 模块;关闭 Swap;配置防火墙放行 6443 等必要端口。
- 安装运行时:安装并启用 containerd,完成基础配置与 cgroup 驱动一致性检查。
- 安装工具链:添加 Kubernetes APT 源,安装 kubelet/kubeadm/kubectl 并执行 apt-mark hold。
- 初始化控制平面:执行 kubeadm init,按所选网络插件规划 Pod CIDR(如 10.244.0.0/16 或 192.168.0.0/16),保存输出的 join 命令。
- 配置 kubectl:拷贝 /etc/kubernetes/admin.conf 至 $HOME/.kube/config 并修正权限。
- 安装网络插件:部署 Calico 或 Flannel 等 CNI,确保 Pod 间通信 与 节点就绪。
- 加入工作节点:在各 Worker 上执行 kubeadm join 加入集群。
- 验证:检查 节点 Ready、系统 Pod Running、网络插件 Pod 就绪。
四 网络与存储建议
- Pod 网络:选择与现有网络不冲突的 Pod CIDR;Calico 适合复杂网络策略场景,Flannel 部署简洁、易上手。
- 服务与入口:内部服务优先 ClusterIP,对外暴露使用 NodePort/LoadBalancer/Ingress 分层治理。
- 网络策略:启用 NetworkPolicy 实现 命名空间与服务间隔离,默认拒绝、按需放行。
- 存储:优先 动态供给(StorageClass);有状态应用使用 StatefulSet 与 持久卷(PV/PVC);数据库类选择 本地 SSD 或分布式存储 并配置 备份/恢复。
五 运维与可观测性
- 镜像与运行时:使用 最小化基础镜像,容器以 非 root 用户 运行,减少攻击面。
- 升级与变更:遵循 版本升级路线,变更前备份 etcd 与关键清单,采用 滚动升级 降低风险。
- 资源与调度:为关键组件设置 requests/limits,配置 污点与容忍、节点亲和/反亲和、拓扑分散 提升可用性与资源利用率。
- 监控与日志:部署 节点/容器监控(如 node-exporter/Prometheus)与 日志采集(如 fluentd/vector),设置 告警 覆盖 API Server/etcd/控制平面与核心业务。
- 审计与合规:启用 Kubernetes 审计日志,定期审计 RBAC 权限 与 准入控制 策略,落实 最小权限原则。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian下Kubernetes部署的最佳实践
本文地址: https://pptw.com/jishu/758263.html
