
k0s、k0s教程、k0s安装教程、Kubernetes发行版、轻量级Kubernetes、k0sctl、K8S集群部署、Kubernetes高可用、边缘计算Kubernetes、ARM Kubernetes
大家好 这里是「代码简单说」,欢迎大家关注同名公众号,不定时更新更多实用有趣的教程 也欢迎大家在评论区一起讨论交流!~
在 Kubernetes 生态中,虽然 K8S 功能强大,但安装和维护往往比较复杂。对于个人开发者、中小企业、边缘计算以及 IoT 场景来说,部署一个完整的 Kubernetes 集群往往需要较高的学习成本。
今天给大家介绍一个开源项目:

k0s 是一个轻量级、开源、符合 CNCF 认证标准的 Kubernetes 发行版,最大的特点就是:
单个二进制文件即可运行完整 Kubernetes 集群。
无论是云服务器、物理机、边缘设备还是 IoT 环境,都可以快速部署 Kubernetes 集群。
项目地址:
https://github.com/k0sproject/k0sk0s 官方将自己定义为:
The Zero Friction Kubernetes(零摩擦 Kubernetes)
其目标是降低 Kubernetes 的安装、部署和维护门槛。
相比传统 Kubernetes 安装方式:
k0s 更加简单直接。
它将 Kubernetes 所需组件全部打包到一个可执行文件中,不依赖额外运行环境。
官方介绍中提到:
k0s 是一个开源、一体化 Kubernetes 发行版,包含构建 Kubernetes 集群所需的全部功能,并以单个二进制文件形式发布。
k0s 并不是精简版 Kubernetes。
它提供:
属于完整 K8S 解决方案。
传统 Kubernetes 安装:
docker
containerd
kubelet
kubeadm
kubectl需要安装多个组件。
而 k0s:
curl -sSLf https://get.k0s.sh | sudo sh即可安装。
部署极其简单。
支持:
适用于:
适用于:
官方最低要求:
配置 | 要求 |
|---|---|
CPU | 1 Core |
内存 | 1 GB |
系统 | Linux |
相比标准 Kubernetes 更轻量。
非常适合:
支持:
例如:
均可部署。
k0s 可扩展为:
Controller × 3
Worker × N支持:
适合生产环境。
典型架构:
┌──────────────┐
│ Controller 1│
└──────┬───────┘
│
┌──────▼───────┐
│ Controller 2│
└──────┬───────┘
│
┌──────▼───────┐
│ Controller 3│
└──────┬───────┘
│
┌─────▼─────┐
│ Worker │
└─────┬─────┘
│
┌─────▼─────┐
│ Worker │
└───────────┘支持:
Linux:
curl -sSLf https://get.k0s.sh | sudo sh查看版本:
k0s version创建控制平面:
sudo k0s install controller --single启动:
sudo k0s start查看状态:
sudo k0s status导出配置:
sudo k0s kubeconfig admin > kubeconfig设置环境变量:
export KUBECONFIG=./kubeconfig查看节点:
kubectl get nodes输出:
NAME STATUS ROLES
server1 Ready control-plane说明集群已经运行成功。
在 Controller 节点生成 Token:
k0s token create --role=worker输出类似:
K10xxxxxxxxxxxx在 Worker 节点执行:
sudo k0s install worker \
--token-file token.txt启动:
sudo k0s start查看节点:
kubectl get nodes结果:
controller Ready
worker01 Ready
worker02 Ready官方推荐使用:
类似:
用于自动化管理集群。
安装:
curl -sSL https://github.com/k0sproject/k0sctl/releases/latest/download/k0sctl-linux-amd64 \
-o k0sctl
chmod +x k0sctl创建:
apiVersion: k0sctl.k0sproject.io/v1beta1
kind: Cluster
spec:
hosts:
- role: controller
ssh:
address: 192.168.1.10
user: root
- role: worker
ssh:
address: 192.168.1.11
user: root部署:
k0sctl apply即可自动安装整个集群。
默认:
SQLiteetcd此外还支持:
方便与企业现有基础设施集成。
默认网络方案:
Kube-Router同时支持:
自定义 CNI 配置即可使用。
兼容 Kubernetes CSI 标准。
支持:
例如:
均可接入。
功能 | k0s | K3s |
|---|---|---|
CNCF认证 | ✔ | ✔ |
单文件部署 | ✔ | ✔ |
ARM支持 | ✔ | ✔ |
高可用 | ✔ | ✔ |
自动运维 | ✔ k0sctl | 部分 |
资源占用 | 低 | 更低 |
企业生产环境 | ✔ | ✔ |
如果是:
k0s 更具优势。
如果是:
K3s 更节省资源。
快速搭建 Kubernetes 学习环境。
构建:
适用于:
例如:
均可部署。
k0s 是目前 Kubernetes 领域非常值得关注的轻量级发行版之一。
相比传统 Kubernetes:
如果你正在寻找一个比 kubeadm 更简单、比传统 Kubernetes 更易维护,同时又保留完整 Kubernetes 能力的解决方案,那么 k0s 是一个非常不错的选择。