什么是K3S
移除过时的功能、Alpha功能、非默认功能,这些功能在大多数Kubernetes集群中已不可用。
删除内置插件(比如云供应商插件和存储插件),可用外部插件程序替换。
添加SQLite3作为默认的数据存储。etcd3仍然可用,但并非默认项。
包含在一个简单的启动程序当中,可以处理复杂的TLS和其他选项。
几乎没有操作系统依赖性(仅需要健全的内核和cgroup挂载)。k3s软件包所需的依赖:
containerd
Flannel
CoreDNS
CNI
主机系统服务 (iptables, socat, etc)
K3S架构
server节点被定义为运行
k3s server命令的主机(裸机或虚拟机)。
worker节点被定义为运行
k3s agent命令的主机。
具有嵌入式数据库的单server架构
worker节点都注册到同一个
server节点,K3s用户可以通过在
server节点上调用K3s API来操作Kubernetes资源。

具有外部数据库的高可用K3s server架构
server集群已经可以满足各种使用需求,但是对于重要的环境,需要k3s集群的长时间正常运行,您需要以HA配置运行K3s。
HA K3s集群包括:
两个或更多server节点;
一个外部数据存储

固定的worker节点注册地址
在高可用架构中,每个worker
节点必须使用固定的注册地址向Kubernetes API进行注册,如下图所示。注册后,worker
节点与任意一个server
节点建立连接。

worker节点的注册方式
worker节点通过
k3s agent启动时发起的Websocket连接进行注册.
worker节点将使用节点集群密钥以及存储在
/etc/rancher/node/password的节点随机密码向
server注册。
server将在单个节点的
/var/lib/rancher/k3s/server/cred/node-passwd路径存储密码,后续任何操作都必须使用相同的密码。如果删除了
worker节点目录
/etc/rancher/node,则应该为该
worker节点重新创建密码文件,或者从服务器中删除该节点。
--with-node-id标志启动
K3s server或agent,可以将唯一的节点ID添加到
hostname。
文章转载自潍鲸,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




