K3s
概述
本文档介绍如何在 Firefly 系列服务器上安装和使用 K3s,并指导用户将业务程序部署到 K3s 集群中。
文档内容涵盖 K3s 的基本概念、部署前准备、Server 和 Agent 安装、集群验证,以及应用部署和日常运维所需的常用操作。读者可以根据实际部署环境选择相应章节进行操作。
读者对象
本文档主要面向以下人员:
- 企业管理员
- 企业终端用户
- 负责服务器部署、应用交付和集群运维的技术人员
读者应具备基本的 Linux 操作和容器使用经验,并了解网络、进程管理和命令行工具的基本操作。
为什么使用 K3s
Docker:统一客户应用运行环境
客户需要在不同类型的平台上运行自己的应用,例如瑞芯微(Rockchip)、全志(Allwinner)等嵌入式平台。不同平台通常存在处理器架构、系统组件和文件系统差异。如果直接为每个平台适配应用,开发和维护成本较高。
通过 Docker,客户可以将应用及其运行依赖封装为镜像,在不同平台上使用统一的交付和启动方式。客户不需要针对各家的文件系统分别适配业务应用,DevOS 也可以通过 Docker 为应用提供一致的运行环境。
Docker Compose 与 K3s:适用于不同规模的部署
部署方式应根据设备数量和系统规模进行选择:
- 单节点设备或盒子:使用 Docker Compose 管理多个相关容器,配置简单,适合单台设备上的应用部署和维护。
- 多节点集群系统:使用 Kubernetes 管理容器化应用,适合需要服务编排、服务发现、负载均衡、故障恢复和滚动更新的场景。
- 嵌入式设备集群:使用 K3s。K3s 保留了 Kubernetes 的核心能力,同时降低了资源占用和部署复杂度,更适合 CPU、内存和存储资源受限的嵌入式设备。
K3s:面向嵌入式集群的 Kubernetes
K3s 可以帮助用户:
- 使用统一的容器方式部署和管理应用
- 在多个节点之间调度工作负载
- 通过 Service 和 Ingress 提供稳定的服务访问入口
- 使用 Deployment 实现应用更新和故障恢复
- 使用存储卷保存应用数据
- 按照 Kubernetes 标准工具和资源模型进行日常运维
多集群管理
对于机房管理员,实际环境中可能同时存在多个 Kubernetes 或 K3s 集群。每个集群都可以独立承载一组业务,但分别登录和维护多个集群会增加运维成本。
可以使用 Rancher 等多集群管理平台,将多个 Kubernetes 和 K3s 集群接入统一的管理界面。管理员可以在一个入口查看集群状态、节点和工作负载,管理命名空间、应用、用户权限和集群配置,并根据需要切换到不同集群执行运维操作。
因此,Docker 适合提供统一的应用运行环境,Docker Compose 适合管理单节点设备上的容器,K3s 适合资源受限的嵌入式集群,而 Rancher 等平台则适合机房管理员统一管理多个 Kubernetes 或 K3s 集群。
具体部署规模和硬件资源要求请参阅系统需求。
详细文档
如需了解 K3s 的完整部署、配置、应用发布和日常运维流程,请参阅 K3s 使用手册。

