1. K3S简介
k3s即轻量级Kubernetes发行版。易于安装,内存减半,所有二进制文件不到40mb。k3s是完全兼容的Kubernetes发行版,有以下更改:
- 移除过时的功能、Alpha功能、非默认功能,这些功能在大多数Kubernetes集群中已不可用。
- 删除内置插件(比如云供应商插件和存储插件),可用外部插件程序替换。
- 添加SQLite3作为默认的数据存储。etcd3仍然可用,但并非默认项。
- 包含在一个简单的启动程序当中,可以处理复杂的TLS和其他选项。
- 几乎没有操作系统依赖性(仅需要健全的内核和cgroup挂载)。k3s软件包所需的依赖:containerd、Flannel、CoreDNS、CNI及主机系统服务 (iptables, socat, etc)。
2. K3S架构
server节点被定义为运行k3s server命令的主机(裸机或虚拟机)。worker节点被定义为运行k3s agent命令的主机。
2.1. 具有嵌入式数据库的单server架构
下图展示了一个单server集群示例,该集群具有带嵌入式SQLite数据库的单节点K3s server。在此架构中,每个worker节点都注册到同一个server节点,K3s用户可以通过在server节点上调用K3s API来操作Kubernetes资源。