今天,Platform9在Apache 2.0许可下开源了Klusterkit。它是一组三个开放源码工具,可以单独使用或联合使用,以简化高可用性、多主机、生产级Kubernetes集群的创建和管理。
Klusterkit中包含的工具
“etcdadm”
受'kubeadm'命令的启发,'etcdadm'是一个用于操作etcd集群的命令行界面(CLI)。它可以更轻松地创建新集群,添加新成员或从现有集群中删除成员。它由Kubernetes Cluster Lifecycle SIG采用,该组专注于集群的部署和升级。
“nodeadm”
这是一个CLI节点管理工具,它通过部署kubeadm所需的所有依赖项来补充kubeadm。您可以借助此工具在任何运行Linux的计算机上轻松部署Kubernetes控制平面或节点。
“CCTL”
这是一个基于Kubernetes社区的Cluster API规范的集群生命周期管理工具。它使用Klusterkit中的其他两个工具在本地甚至气隙环境中轻松部署和维护高可用性Kubernetes集群。
Klusterkit的特点
- 它配备了多主(K8s HA)支持
- 用户可以部署和管理安全的etcd集群
- 它提供滚动升级和回滚功能
- 它适用于气隙环境
- 用户可以从仲裁丢失中备份和恢复etcd集群
- 您可以从低内存/低CPU条件控制平面保护。
Klusterkit解决方案架构
资料来源:Platform 9
Klusterkit将您构建的Kubernetes集群的元数据存储在名为“cctl-state.yaml”的单个文件中。您可以调用cctl CLI来从包含此状态文件的任何计算机编排Kubernetes集群的生命周期。
为了在集群上执行CRUD操作,cctl实现并作为库调用cluster-api接口。它使用ssh-provider,用于cluster-api参考实现的机器控制器。然后,ssh-provider调用etcdadm和nodeadm来执行集群操作。
要了解更多详细信息,请查看GitHub上的文档。
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-04/158138.htm
