Rancher 2.x 快速入门:2分钟内搭建Kubernetes集群实践指南

随着容器化技术的飞速发展,Kubernetes 已然成为现代云计算领域的“操作系统”。而在这个领域里,Rancher 2.x 无疑是一匹黑马,以其简洁、高效、易用的特点,赢得了众多开发者和运维工程师的青睐。今天,就让我们一起走进 Rancher 2.x 的世界,探索如何在短短2分钟内,搭建起一个功能完备的 Kubernetes 集群。

一、Rancher 2.x 简介

Rancher 是一个开源的企业级 Kubernetes 管理平台,它不仅支持多种 Kubernetes 发行版,还提供了丰富的集群管理功能,如多集群管理、应用部署、监控告警等。Rancher 2.x 版本更是将易用性提升到了一个新的高度,使得 Kubernetes 集群的部署和管理变得更加简单和高效。

二、准备工作

在开始搭建之前,我们需要做一些准备工作:

  1. 环境要求

    • 一台或多台能够运行 Docker 的 Linux 服务器。
    • 服务器之间网络互通。
    • 具备基本的 Linux 和 Docker 操作能力。
  2. 软件下载

    • 下载最新版本的 Rancher 2.x Docker 镜像。

三、快速搭建 Kubernetes 集群

Step 1:安装 Rancher Server

首先,我们需要在一台服务器上安装 Rancher Server。执行以下命令:

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

这条命令会在后台启动一个名为 rancher 的 Docker 容器,并将容器的 80 和 443 端口映射到主机的相同端口上。

Step 2:访问 Rancher UI

在浏览器中输入服务器的 IP 地址或域名,即可访问 Rancher 的 Web 界面。首次访问时,系统会提示设置管理员密码。

Step 3:创建集群

登录后,点击左侧菜单的“集群”,然后点击“添加集群”。Rancher 提供了多种集群创建方式,这里我们选择“自定义”。

  1. 填写集群名称:例如 my-cluster
  2. 选择 Kubernetes 版本:选择一个合适的 Kubernetes 版本。
  3. 配置节点:根据实际情况配置节点角色(etcd、controlplane、worker)。

Step 4:节点注册

Rancher 会生成一个节点注册命令,我们需要在每个节点上执行这个命令。例如:

docker run -d --privileged --restart=unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /var/lib/rancher:/var/lib/rancher \
  rancher/rancher-agent:v2.5.8 \
  --server https://<Rancher-Server-IP> \
  --token <your-registration-token> \
  --ca-checksum <your-ca-checksum> \
  --address <Node-IP>

<Rancher-Server-IP><your-registration-token><your-ca-checksum><Node-IP> 替换为实际值。

Step 5:等待集群就绪

回到 Rancher UI,你会看到节点开始注册并加入集群。稍等片刻,当所有节点状态变为“Active”时,你的 Kubernetes 集群就搭建完成了!

四、集群验证

为了验证集群是否正常工作,我们可以部署一个简单的 Nginx 应用:

  1. 在 Rancher UI 中,选择你的集群。
  2. 点击“项目/命名空间”,选择 default 命名空间。
  3. 点击“工作负载”,然后点击“部署”。
  4. 填写应用名称,例如 nginx,选择镜像 nginx:latest,然后点击“部署”。

几秒钟后,Nginx 应用就会启动。你可以通过 Rancher 提供的负载均衡器 IP 访问 Nginx 的欢迎页面。

五、结语

至此,我们已经成功地在2分钟内搭建起了一个功能完备的 Kubernetes 集群。Rancher 2.x 的强大和易用性,让 Kubernetes 集群的管理变得前所未有的简单。无论是对于初学者还是资深运维工程师,Rancher 都是一个不可多得的好工具。

当然,Rancher 的功能远不止于此,它还提供了丰富的扩展和集成功能,等待着你去探索和发现。希望这篇文章能成为你 Kubernetes 之旅的起点,开启一段全新的云计算旅程!