k3s 是一个轻量级 Kubernetes,它易于安装,二进制文件包小于 40 mb,只需要 512MB RAM 即可运行。
k3s介绍
k3s 旨在成为完全兼容的 Kubernetes 发行版,相比 k8s 主要更改如下:
- 旧的、Alpha 版本的、非默认功能都已经删除。
- 删除了大多数内部云提供商和存储插件,可以用插件替换。
- 新增 SQLite3 作为默认存储机制,etcd3 仍然有效,但是不再是默认项。
- 封装在简单的启动器中,可以处理大量 LTS 复杂性和选项。
- 最小化到没有操作系统依赖,只需要一个内核和 cgroup 挂载。
K3s支持x86_64、ARM64和ARMv7架构,使K3s得以更加灵活地跨任何边缘基础架构工作。
使用场景:
- 边缘计算
- 与应用程序绑定使用
- 嵌入式设备
- CI环境
k3s工作原理:
k3s安装
k3s的安装非常简单,可以直接按照官方给出的教程来操作。
通过 install.sh
脚本来安装,执行如下命令:
1 | curl -sfL https://get.k3s.io | sh - |
k3s的配置文件默认存储在 /etc/rancher/k3s/k3s.yaml
下。安装脚本默认会安装相关的工具,比如 kubectl
和卸载服务相关的 k3s-unstall.sh
脚本等。
配置k3s集群的token文件存在于server节点的 /var/lib/rancher/k3s/server/node-token
文件中。可以通过如下命令来安装worker节点:
1 | curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=XXX sh - |
经测试,默认情况下安装的k3s服务为master节点,服务名称为 k3s.service
,在加上 K3S_URL
和 K3S_TOKEN
两个参数后,安装的服务名称为 k3s-agent.service
,看来官方也是直接做了区分。
当然,你也可以直接通过一条命令 curl -sfL https://get.k3s.io | sh -
来安装所有的master节点和agent节点,这样服务名称都会为 k3s.service
。然后在通过修改命令参数的方式来指定是master节点还是agent节点,以及一些其他参数。
总而言之,k3s的安装相比于k8s来说,还是非常简单的。
相关参考
这篇文章多少有点水,当然,硬货还在后面。。。