当前位置:首页 > RockyLinux > 正文

RockyLinux集群容器编排实战指南(手把手教你搭建Kubernetes集群)

在当今云原生时代,容器编排已成为部署和管理微服务架构应用的核心技术。而RockyLinux作为RHEL的社区替代品,因其稳定性与兼容性,越来越受到企业用户的青睐。本文将带领你从零开始,在多台RockyLinux服务器上搭建一个高可用的Kubernetes集群,实现高效的RockyLinux容器管理

RockyLinux集群容器编排实战指南(手把手教你搭建Kubernetes集群) RockyLinux集群  容器编排 Kubernetes安装 RockyLinux容器管理 第1张

一、准备工作

在开始之前,请确保你有以下资源:

  • 至少3台RockyLinux 9.x服务器(1个控制节点 + 2个工作节点)
  • 每台服务器至少2核CPU、2GB内存
  • 所有服务器之间网络互通,且能访问外网
  • root权限或具有sudo权限的用户

二、基础环境配置(所有节点执行)

首先,我们需要在所有节点上进行一些基础设置。

1. 关闭防火墙(生产环境建议配置规则而非关闭)

sudo systemctl stop firewalldsudo systemctl disable firewalld

2. 禁用SELinux

sudo setenforce 0sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

3. 配置主机名和hosts文件

以控制节点为例(其他节点类似):

# 控制节点sudo hostnamectl set-hostname k8s-master# 工作节点1sudo hostnamectl set-hostname k8s-node1# 工作节点2sudo hostnamectl set-hostname k8s-node2

然后在所有节点的 /etc/hosts 文件中添加如下内容:

192.168.1.10 k8s-master192.168.1.11 k8s-node1192.168.1.12 k8s-node2

4. 加载内核模块并启用IP转发

cat <

三、安装容器运行时(containerd)

Kubernetes推荐使用符合CRI标准的容器运行时。这里我们选择轻量级且稳定的 containerd

# 安装依赖sudo dnf install -y yum-utils device-mapper-persistent-data lvm2# 添加Docker官方仓库(包含containerd)sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装containerdsudo dnf install -y containerd.io# 配置containerdsudo mkdir -p /etc/containerdsudo containerd config default | sudo tee /etc/containerd/config.toml# 修改SystemdCgroup为true(关键步骤!)sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' /etc/containerd/config.toml# 启动并设置开机自启sudo systemctl enable --now containerd

四、安装Kubernetes组件

接下来,我们在所有节点上安装 kubeadmkubeletkubectl

# 添加Kubernetes官方YUM源cat <

五、初始化控制平面(仅在master节点执行)

# 初始化集群(注意替换为你自己的Pod CIDR)sudo kubeadm init \  --pod-network-cidr=10.244.0.0/16 \  --kubernetes-version=v1.28.0 \  --cri-socket=unix:///run/containerd/containerd.sock

初始化成功后,会输出类似如下的命令,请务必保存:

mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config

执行上述命令,使当前用户可以使用 kubectl 管理集群。

六、安装网络插件(Flannel)

Kubernetes需要CNI插件来实现Pod间通信。我们使用轻量级的 Flannel

kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml

七、加入工作节点(在node1和node2上执行)

回到初始化输出信息,找到类似以下的 kubeadm join 命令,在每个工作节点上执行:

sudo kubeadm join 192.168.1.10:6443 \  --token abcdef.0123456789abcdef \  --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \  --cri-socket=unix:///run/containerd/containerd.sock

八、验证集群状态

回到控制节点,执行以下命令查看节点状态:

kubectl get nodes

如果看到所有节点状态为 Ready,恭喜你!你的 RockyLinux集群容器编排 环境已成功搭建。

九、总结

通过本教程,你已经掌握了如何在 RockyLinux 上从零搭建一个功能完整的 Kubernetes 集群。这为你后续部署微服务、CI/CD流水线以及实现自动化运维打下了坚实基础。记住,容器编排 是现代DevOps的核心技能之一,而 RockyLinux容器管理 则是企业级稳定运行的关键保障。

如果你在操作过程中遇到问题,欢迎查阅官方文档或在社区论坛寻求帮助。祝你在云原生之旅中一路顺风!