Rancher 是一个开源的容器管理平台,它提供了一个统一的管理界面来部署和管理 Kubernetes 集群。在 CentOS 上部署 Rancher 可以让企业级用户轻松地管理和扩展他们的 Kubernetes 环境。以下是一份详细的指南,帮助您在 CentOS 上部署 Rancher。

准备工作

在开始之前,请确保您的 CentOS 系统满足以下要求:

  • 操作系统:CentOS 7 或更高版本
  • 硬件要求:至少 2GB 的 RAM(推荐 4GB 或更高)
  • 网络连接:稳定的网络连接
  • 系统更新:确保您的系统已更新到最新状态

步骤 1:安装 Docker

Rancher 是基于 Docker 的,因此首先需要在 CentOS 上安装 Docker。

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker

步骤 2:安装 Docker Compose

Docker Compose 是用于定义和运行多容器 Docker 应用程序的工具。

sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep 'tag_name' | cut -d '"' -f 4)/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

步骤 3:创建 Kubernetes 集群

使用 kubeadm 工具创建一个单节点 Kubernetes 集群。

sudo yum install -y kubeadm kubelet kubectl
sudo systemctl start kubelet
sudo systemctl enable kubelet
sudo kubeadm init --pod-network-cidr=10.244.0.0/16

执行上述命令后,您将看到一条命令,用于将您的节点添加到集群中。保存这条命令,稍后会用到。

步骤 4:配置 kubeconfig 文件

将当前用户添加到 docker 组,以便无需 sudo 运行 Docker 命令。

sudo usermod -aG docker $(whoami)
newgrp docker

然后,配置 kubeconfig 文件。

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

步骤 5:安装 Calico 网络

Calico 是一个开源的网络解决方案,适用于容器化工作负载。

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

步骤 6:部署 Rancher

使用 Docker Compose 部署 Rancher。

docker run -d --name rancher --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher

等待 Rancher 容器启动,默认情况下,Rancher 服务将在 80 和 443 端口上运行。

步骤 7:访问 Rancher

步骤 8:添加 Kubernetes 集群

在 Rancher 中添加您的 Kubernetes 集群。

  1. 登录到 Rancher。
  2. 点击左侧菜单的 “Kubernetes” 选项。
  3. 点击 “添加” 按钮并选择 “Kubernetes”。
  4. 输入集群名称并选择“导入凭据”。
  5. 复制之前保存的 kubeadm init 命令中的 join 命令,并粘贴到输入框中。
  6. 点击 “添加” 按钮完成集群的添加。

总结

通过以上步骤,您已经成功在 CentOS 上部署了 Rancher,并添加了您的 Kubernetes 集群。现在,您可以开始使用 Rancher 来管理和扩展您的 Kubernetes 环境。