Ubuntu 上安装 Kubernetes 的依赖清单
一 系统与硬件依赖
- 操作系统:建议使用 Ubuntu 20.04 LTS 及以上版本(内核建议 ≥ 4.19)。
- 硬件基线:至少 2 核 CPU、2 GB 内存、20 GB 磁盘空间(生产环境建议更高)。
- 网络与时间:节点间需 互通,建议配置 静态 IP 与 主机名解析;启用 NTP 时间同步以避免证书与调度异常。
二 系统与内核参数依赖
- 关闭 Swap:执行 swapoff -a,并在 /etc/fstab 中注释 swap 行,避免重启后恢复。
- 内核模块:加载 overlay 与 br_netfilter。
- 网络转发与桥接:开启 IPv4 转发 与桥接流量进入 iptables。示例 sysctl 配置:
- net.bridge.bridge-nf-call-iptables = 1
- net.bridge.bridge-nf-call-ip6tables = 1
- net.ipv4.ip_forward = 1
- 持久化:将上述配置写入 /etc/sysctl.d/k8s.conf 并执行 sysctl --system 生效。
三 容器运行时依赖
- 选项一 Docker(传统常用)
- 安装包:docker-ce、docker-ce-cli、containerd.io。
- 建议将 Docker 的 cgroup driver 设为 systemd,与 kubelet 保持一致:
- /etc/docker/daemon.json:{“exec-opts”: [“native.cgroupdriver=systemd”]}
- 选项二 containerd(轻量、云原生场景常用)
- 安装包:containerd.io;如使用 containerd 1.24+,可通过 cri-dockerd 适配 dockershim 移除后的接口。
- 通用要求:启动并 开机自启 容器运行时服务(如 systemctl enable --now docker 或 containerd)。
四 Kubernetes 组件与仓库依赖
- APT 基础依赖:apt-transport-https、ca-certificates、curl、gnupg/gnupg-agent、software-properties-common,用于添加 GPG 与 HTTPS 仓库。
- 组件包:在所有节点安装 kubelet、kubeadm、kubectl(同一小版本),并建议 apt-mark hold 防止自动升级破坏集群一致性。
- 仓库源:添加 Kubernetes APT 源(如 https://apt.kubernetes.io/ kubernetes-xenial main),导入 GPG 后更新索引并安装组件。
五 网络与端口依赖
- 必装网络插件:部署 Pod 网络 插件(如 Calico 或 Flannel),否则节点将持续 NotReady。
- 典型端口:确保 6443(API Server)、10250(kubelet)、2379–2380(etcd)、以及 8472/4789(Flannel VXLAN)、179(Calico BGP) 等端口在节点与控制平面间 放通(云环境需在安全组放行)。