您现在的位置是:主页 > 数据库技术 > 数据库技术

Cluster API怎么配置使用

IDCBT2021-12-29服务器技术人已围观

简介这篇文章主要介绍“Cluster API怎么配置使用”,在日常操作中,相信很多人在Cluster API怎么配置使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答

这篇文章主要介绍“Cluster API怎么配置使用”,在日常操作中,相信很多人在Cluster API怎么配置使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Cluster API怎么配置使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Cluster API是一个Kubernetes项目,它将声明式Kubernetes风格的API用于集群的创建、配置和管理。它通过使用时CustomResourceDefinitions(CRDs)来扩展被Kubernetes API Server暴露的API来实现这些功能,从而允许用户创建新资源,例如集群(指Kubernetes集群)和Machine(指组成集群的节点的Machine)。然后每个资源的控制器负责对这些资源的更改做出反应,以启动集群。API的设计可以让不同的基础架构提供程序可以与其集成,进而提供针对其环境的特定逻辑。

Cluster API项目仍处于早期阶段,但是当前的情况已经证明了它能带来强大的功能。这

过去:v1alpha1

最初,Cluster API的v1alpha1实现要求提供程序需要在其项目中包含Cluster API控制器代码,并实现actuator(接口)以处理其环境的特定逻辑(例如,对云提供程序API的调用)。该代码作为特定于某个提供程序的管理器二进制文件运行,该二进制文件可以为管理集群所需的每个资源管理一个控制器。

现在:v1alpha2

使用Cluster API 的v1alpha1方法存在一个痛点,即它要求每个提供程序都实现一定数量的bootstrap boilerplate code,即代码不灵活并且冗长。为了解决这个问题,v1alpha2引入了bootstrap provider,它们负责生成将Machine转变为Kubernetes节点所需的数据。Kubeadm bootstrap provider则通过使用kubedam在所有环境中处理此任务。它的默认行为是为每台Machine生成一个可用于bootstrap节点的cloud-config脚本。

v1alpha2引入的另一个更改是,提供程序不再需要将Cluster API控制器代码包含在其项目中。而且Cluster API提供了对核心类型负责的独立控制器。有关这些更改的更多信息,请参阅Github上的信息。

对于此版本,现在需要部署3个管理器(而不是此前的1个):

    Cluster API manager:用于管理核心v1alpha2资源

    Bootstrap provider manager:用于管理资源以生成将Machine转变为Kubernetes节点的数据

    Infrastructure provider manager:用于管理提供运行集群所需基础架构的资源

    例如,如果我想使用kubedam在配置好的GCP上创建一个集群,我应该部署Cluster API manager(用于调和核心资源,例如集群和Machine资源),kubeadm bootstrap provider(例如,用于调和KubeadmConfig资源)以及GCP infrastructure provider(用于调和环境的特定资源,如GCPClusters和GCPMachines)。

    为了了解如何应用这些资源,我们将使用我编写的Kubernetes基础架构提供程序实现来进行集群部署,即由Kubernetes本身提供基础架构的提供程序。Kubernetes节点使用kind镜像作为Kubernetes Pod运行。

    标签:

    很赞哦! ()

本栏推荐