我可以运行单节点 K3S 集群吗?

我可以运行单节点 K3S 集群吗?

我知道运行单节点集群的后果和问题。但是,我仍然好奇这是否可行。我打算自己设置一切。

换句话说,我可以在同一台物理机器上运行控制平面和工作节点吗?

答案1

请让我详细阐述一下这个主题:

“换句话说,我可以在同一个集群上运行控制平面和工作节点吗?”

来自 k3s 文档:

服务器节点定义为运行 k3s 服务器命令的机器(裸机或虚拟)。

工作节点定义为运行 k3s agent 命令的机器。添加更多代理将创建更多工作节点来运行你的应用程序。

在这个概念中,一个主节点(运行 k3s 服务器命令和其他代理节点运行 k3s agent 命令)仍然创建一个具有单个控制平面的集群。但是,你可以通过创建具有多个服务器(控制平面)和代理节点的高可用性 K3s 服务器来扩展此方法。

根据 k8s 文档:

控制平面组件

  • kube-api服务器,
  • etcd,
  • kube-调度程序,
  • kube-控制器管理器,
  • 云控制器管理器,

如我所见,还有一个选项可以在单台机器上运行带有多个代理的 k3s,使用 Docker 作为容器运行时 -3D模型((Docker 中的 K3s)和 docker-compose。

或者请按照以下方式操作:

答案2

当您使用如下所示的 curl 脚本安装 K3s 时,该节点将同时作为服务器和代理。

curl -sfL https://get.k3s.io | sh -

因此,默认情况下,服务器和代理会一起部署在同一个节点上。 答案在这里https://github.com/k3s-io​​/k3s/issues/1279#issuecomment-574332274作者:David Nuzik(Rancher Labs(SUSE)项目经理)

答案3

当然是的。结果很简单,因为缺少相应的冗余,所以您没有 HV。

官方文档甚至有一个关于设置带有 kubeadm 的单控制平面集群

(当我谈论“同一台物理机器”时,我会高度鼓励您在那里设置两个虚拟机,一个用于控制平面节点,一个用于工作节点。)

相关内容