生活知识小技巧网logo.png生活知识小技巧网

生活知识小技巧网
生活知识小技巧网是中国最大的生物技术、生物科学门户网站。
生活知识小技巧网

oneinfra作为服务管理多个Kubernetes集群的平台

导读 Oneinfra是一个开源项目,用于管理和运行跨越不同公共云、私有云和裸金属的多个Kubernetes集群。 一个infra安装的主要部分是“管理程序”、群集抽象和组件。 管理程序机器必须运行

Oneinfra是一个开源项目,用于管理和运行跨越不同公共云、私有云和裸金属的多个Kubernetes集群。

一个infra安装的主要部分是“管理程序”、群集抽象和组件。 管理程序机器必须运行容器运行时接口(CRI)实现。 集群抽象表示Kubernetes集群,包括控制平面及其入口。 还有其他组件-属于控制平面和控制平面入口-运行在这些之上。 控制平面组件包括典型的Kubernetes主节点部件-etcd、API服务器、调度器等,而入口组件包括haproxy和VPN端点。 一个infra可以声明的方式创建不同版本的不同集群,允许一个人同时使用不同的Kubernetes版本。 它类似于开源GKE或EKS。

信息Q与软件架构师兼Oneinfra作者Rafael Fernandez Lopez取得了联系,以了解更多关于这个项目的信息。

洛佩兹认为,Oneinfra填补的主要空白是“提供一个非常简单的系统来设置,允许您随意创建和销毁孤立的Kubernetes控制平面,而不需要为它们创建专用基础设施”。 Oneinfra可以使用来自各种云提供商的底层基础设施和机器,包括裸金属实例来创建控制平面实例。 Lopez解释了这方面的一些最佳做法:

您可以使用不同的云提供器创建控制平面实例。 然而,当涉及到将单个控制平面拆分到不同的公共云或服务提供商时,存在操作挑战,因此建议将控制平面的所有组件放置在同一个服务提供商上,但没有什么能阻止您能够在不同的服务提供商上创建不同的控制平面。

图像礼貌-https://github.com/oneinfra/oneinfra(经许可使用)

用oninfra的话来说,管理程序是一种“物理或虚拟机,其中oninfra将创建控制平面组件”。 一个管理程序节点必须运行容器运行时接口(CRI)实现。 管理程序可以是“公共”并运行入口组件,也可以是“私有”并运行控制平面组件。 在管理程序节点上需要CRI实现上的服务包装器来连接到Oneinfra。 洛佩兹解释说,这一过程在未来版本中将变得更加容易:

这是路线图的一部分,以简化您创建新的管理程序的方式-类似`的oi管理程序连接`命令将被添加,类似于当前`的oi节点连接`命令。 后者与托管集群进行谈判,以便加入该集群,而前者将与管理集群进行谈判,并作为管理程序加入。

该系统有一个“调节器”模块-这是一组控制器,做许多事情。 它在管理程序上调度控制平面组件,并创建定义但缺少的组件。 它还删除用户删除的控制平面组件-从而使系统达到所需的状态。 协调器处理针对托管集群的工人节点连接请求,并确保RBAC规则正确设置。

当前的体系结构将每个控制平面实例隔离-因此Kubernetes主节点软件如etcd不能共享,或被另一个持久层替换。 洛佩兹说,性能方面,如基准测试,多少控制平面可以适合一个管理程序,也需要制定。 另一个未来的改进是工人节点在异种网络上的能力。

oninfra源代码可在GitHub上使用。

免责声明:本文由用户上传,如有侵权请联系删除!

相关推荐

最新文章