- 作者:小梦
- 发表时间:2026-03-05
- 来源:原创
🚢 云服务器 Kubernetes 集群搭建实战
📋 集群规划与服务器配置要求
K8s 集群分为 Master 节点(控制平面)与 Worker 节点(工作节点),新手建议采用 1 主 2 从架构,保证高可用基础。云服务器配置方面,Master 节点不低于 2 核 4GB,Worker 节点不低于 2 核 2GB,系统优先选择 Ubuntu 20.04/22.04 或 CentOS 7/8,节点之间内网互通,关闭防火墙与虚拟内存。
| 节点类型 | 最低配置 | 数量建议 |
|---|---|---|
| Master 节点 | 2 核 4GB | 1 台(高可用 3 台) |
| Worker 节点 | 2 核 2GB | 2 台及以上 |
⚙️ 所有节点通用环境初始化
搭建前必须对所有云服务器节点进行环境配置,这是集群稳定运行的基础。关闭防火墙、SELinux 与虚拟内存,配置主机名与 hosts 解析,保证节点间可通过主机名相互访问;开启内核 ipvs 模块与网桥过滤,调整系统内核参数,开启端口转发,为容器网络提供支撑。
- 关闭虚拟内存(swap),K8s 强制要求禁用
- 配置内核参数,开启 net.ipv4.ip_forward
- 加载 ipvs 模块,提升集群服务转发性能
- 所有节点时间同步,避免证书与服务异常
📦 安装 Docker 与 K8s 核心组件
K8s 依赖容器运行时,优先选择 Docker,安装后配置 cgroup 驱动与 K8s 保持一致。之后添加 K8s 软件源,安装 kubeadm、kubelet、kubectl 三大核心组件,设置 kubelet 开机自启,所有节点均需完成此步骤。
组件版本必须保持统一,版本冲突会导致集群搭建失败,建议选择稳定的 LTS 版本,避免使用最新测试版。
🚀 Master 节点初始化集群
在 Master 节点执行 kubeadm init 命令完成集群初始化,指定 API 服务器地址、Pod 网段与 Service 网段。初始化成功后会输出节点加入命令与 token,务必保存。配置 kubectl 权限,将管理配置文件拷贝至用户目录,使普通用户可管理集群。
之后部署网络插件,这是 Pod 通信的关键,主流选择 Flannel、Calico,新手推荐 Flannel,部署简单、兼容性强,插件部署完成后,Master 节点状态会变为 Ready。
🔗 Worker 节点加入集群
在所有 Worker 节点执行 Master 初始化时生成的 kubeadm join 命令,输入后等待节点注册。完成后在 Master 节点执行 kubectl get nodes 查看节点状态,所有节点显示 Ready 即代表加入成功。
- token 过期可在 Master 节点重新生成
- 节点加入失败优先检查网络、端口、防火墙
- 确保所有节点组件版本完全一致
✅ 集群功能验证与基础使用
集群搭建完成后,创建 Nginx 测试 Pod 与 Service,验证 Pod 调度、网络通信、服务访问是否正常。通过 kubectl 命令查看 Pod、Service、节点状态,测试容器日志、远程执行、端口映射等基础功能,确认集群可正常提供服务。
基础验证通过后,可配置 Dashboard 可视化面板、存储类、Ingress 等组件,完善集群功能,满足业务部署需求。
📌 常见问题与避坑要点
云服务器搭建 K8s 最常见问题为网络不通、端口未开放、虚拟内存未关闭、版本不一致、cgroup 驱动不匹配。云服务商安全组需开放 6443、10250、8472 等核心端口,内网互通必须开启,严禁节点间存在网络限制。
搭建完成后及时备份 etcd 数据,这是集群的核心数据存储,定期备份可避免节点故障导致集群崩溃。
✅ 搭建总结
在云服务器搭建 K8s 集群,核心是标准化环境、统一组件版本、保证网络畅通、正确部署网络插件。按照环境初始化、组件安装、Master 初始化、Worker 加入、功能验证的流程操作,即可快速搭建稳定可用的 K8s 集群。
云服务器的弹性与 K8s 的编排能力结合,可轻松支撑容器化业务的部署、扩容与运维,是云原生时代的基础架构方案。