
CentOS 8 是一个广泛应用于企业环境的开源操作系统,以其稳定性和丰富的功能著称。对于需要轻量级 Kubernetes 解决方案的用户,K3s 提供了一个理想的选择。K3s 是一个针对边缘计算、物联网(IoT)等场景优化的 Kubernetes 发行版,它比传统的 Kubernetes 更加轻便和高效。本文将详细介绍如何在 CentOS 8 上部署 K3s,并涵盖每个步骤的详细操作与配置示例。
1. 环境准备:安装 CentOS 8
1.1 下载 CentOS 8
首先,您需要获取 CentOS 8 的安装镜像文件。访问 CentOS 官方网站下载 ISO 文件:[CentOS下载](https://www.centos.org/download/)。
1.2 创建可启动安装介质
将下载的 CentOS 8 ISO 文件写入 USB 驱动器中,您可以使用如下工具:
Windows:使用工具如Rufus或Balena Etcher将 ISO 文件写入 USB 驱动器。
Linux:您可以使用 `dd` 命令,例如:
sudo dd if=CentOS-8-x86_64-dvd.iso of=/dev/sdX bs=4M status=progress && sync
其中 `/dev/sdX` 替换为您的 USB 驱动器的设备路径。
1.3 安装 CentOS 8
将制作好的 USB 启动盘插入目标机器,重启并进入 BIOS 设置从 USB 启动。接着按照安装向导完成 CentOS 8 的安装。
2. 安装 Docker:K3s 的容器运行时
K3s 依赖 Docker 或其他容器运行时来启动和管理容器。安装 Docker 是 K3s 部署的先决条件。
2.1 更新系统并安装依赖
在 CentOS 8 上安装 Docker 前,首先确保系统是最新的,并安装必要的工具:
sudo dnf update -y
sudo dnf install -y yum-utils
2.2 安装 Docker
您可以通过 Docker 官方的安装脚本来安装最新版本的 Docker:
curl -fsSL https://get.docker.com | sudo sh
2.3 启动 Docker 服务
安装完成后,启动并配置 Docker 服务自动启动:
sudo systemctl start docker
sudo systemctl enable docker
2.4 验证 Docker 是否安装成功
您可以运行以下命令来验证 Docker 是否安装正确:
sudo docker --version
如果显示 Docker 版本信息,表示安装成功。
3. 下载并安装 K3s
K3s 是一个轻量级的 Kubernetes 发行版,特别适用于资源受限的环境。安装 K3s 的过程非常简单,只需通过以下命令即可完成。
3.1 安装 K3s
在 CentOS 8 上,您可以直接通过一个简单的 curl 命令来安装 K3s:
curl -sfL https://get.k3s.io | sh -
此命令会下载并安装最新版本的 K3s,并启动相关服务。
3.2 安装完成后的文件位置
K3s 安装后会将主要的二进制文件放置在 `/usr/local/bin/k3s`,并自动创建 `k3s` 服务。在 `/etc/rancher/k3s` 目录下,您还可以找到 K3s 配置文件。
4. 启动 K3s 服务
K3s 安装完成后,您需要启动 K3s 服务以开始运行 Kubernetes 集群。
4.1 启动 K3s
使用以下命令启动 K3s 服务:
sudo systemctl start k3s
K3s 服务将会以后台进程的方式运行,并且会在系统启动时自动启动。
4.2 配置 K3s 开机自启动
如果希望 K3s 在系统启动时自动启动,可以启用其自启动服务:
sudo systemctl enable k3s
4.3 查看 K3s 状态
您可以使用以下命令查看 K3s 服务的状态:
sudo systemctl status k3s
如果服务正常运行,您将看到 `active (running)` 状态。
5. 验证 K3s 安装
K3s 安装并启动后,您可以验证其是否正常运行。
5.1 检查节点状态
使用 `kubectl` 命令查看 Kubernetes 集群的节点列表:
sudo k3s kubectl get nodes
如果 K3s 正常安装,您将看到名为 `k3s-server` 的节点。
5.2 获取 kubectl 配置文件
默认情况下,K3s 会为集群创建一个 kubeconfig 文件,位于 `/etc/rancher/k3s/k3s.yaml`。您可以将其复制到 `$HOME/.kube/config` 目录下,以便方便使用 `kubectl` 命令:
mkdir -p HOME/.kube
sudo cp /etc/rancher/k3s/k3s.yamlHOME/.kube/config
sudo chown (id -u):(id -g) $HOME/.kube/config
5.3 验证 kubectl 命令
验证 kubectl 是否正常工作:
kubectl get pods -A
如果集群成功启动,您将看到集群中的各个 Pod 信息。
6. 配置和管理 K3s 集群
K3s 不仅仅限于单节点集群,您还可以将多个节点添加到集群中,形成一个多节点的 Kubernetes 集群。
6.1 加入额外节点到 K3s 集群
在加入节点之前,您需要获取主节点的 K3s 令牌。在主节点上执行以下命令来获取令牌:
sudo cat /var/lib/rancher/k3s/server/node-token
然后,在额外节点上,使用该令牌和主节点的 IP 地址启动 K3s:
curl -sfL https://get.k3s.io | K3S_URL=https://<主节点IP>:6443 K3S_TOKEN=<令牌> sh -
6.2 配置 Helm
Helm 是 Kubernetes 的包管理工具,您可以通过 Helm 安装和管理各种 Kubernetes 应用。在 K3s 上安装 Helm:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
在 CentOS 8 上部署 K3s 是一个相对简单且高效的过程,只需几个步骤即可完成 Kubernetes 集群的搭建。通过安装 CentOS 8、Docker 和 K3s,您可以轻松构建适合边缘计算和物联网环境的轻量级 Kubernetes 集群。无论您是运行单节点集群还是多节点集群,K3s 都提供了一个轻松、易用的解决方案。











