K3S架构设计
Posted 潍鲸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了K3S架构设计相关的知识,希望对你有一定的参考价值。
什么是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节点的注册方式
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
。
以上是关于K3S架构设计的主要内容,如果未能解决你的问题,请参考以下文章