关注和分享VPS主机优惠活动
www.vpsmr.com
腾讯云双11优惠活动

cluster pedia(kubernetes集群的百科全书)是DaoCloud道客云最初的开源项目,增加了kubectl来检索多集群资源。

本文的内容显示了1的介绍。01集群儿科。1.1.建筑设计。特点和功能2。02部署集群媒体3。03群集资源集合3.1。集群认证3.2。资源收集4。04资源检索。多集群资源检索4.2。指定聚类检索4.3。复杂检索4.4。搜索条件的传输模式4.5。集合资源。4.6.自定义收藏资源5。05在资源上执行更复杂的操作。6.06自动发现和收集集群7。07当前进度8。08路线图8.1。2021 Q4 8.2。Q1 8.3。Q2 9。09用法说明9.1。多集群网络连接9.2。推荐阅读Clusterpedia,即DaoCloud道客云原生开源项目Clusterpedia(The Encyclopedia of Kubernetes clusters)加持kubectl,检索多集群资源DaoCloud Road的原创开源项目,Kubernetes集群百科。源代码在https://github.com/clusterpedia-io/clusterpedia.查看

多集群时代,我们可以通过cluster-api批量创建管理集群,使用Karmada/Clusternet分发部署应用。但是,我们似乎还缺少一些功能。如何才能统一查看多个集群中的资源?

对于单个集群的资源,我们可以使用kubectl查看搜索资源,但是当我们想要检索多个集群的资源时,似乎没有可以使用的产品。这个问题不会再困扰你了,因为有了DaoCloud的原生开源项目Clusterpedia的加持,你的kubectl已经可以用来检索多集群资源了!

例如,使用kubectl在多个集群下的kube -系统名称空间中获得部署。

$ kubectl获取部署-n kube -系统群集名称准备就绪-to -可用日期群集-1 calico -kube -控制器1/1 1 1 63d群集-1核心DNS 2/2 2 2 63d群集-2 calico -kube -控制器1/ 11109D群集-2核心DNS -核心DNS 2/2 2 2 109d群集-2 dce-chart-manager 1/ 11109D群集-2 dce

通过聚合多集群资源,在兼容Kubernetes OpenAPI的基础上,提供了更强大的检索功能,让用户在多集群中更快捷、更方便地获取自己想要的任何资源。当然,Clusterpedia的能力不仅仅是搜索和查看,未来还可以支持对资源的简单控制,就像wiki也支持编辑词条一样。

架构设计DaoCloud道客云原生开源项目Clusterpedia(The Encyclopedia of Kubernetes clusters)加持kubectl,检索多集群资源集群百科在架构上分为四个部分:

Clusterpedia APIServer:以聚合API的形式注册到Kube APIServer,通过统一的门户提供服务。集群同步管理器:管理用于同步集群资源的集群同步。存储层:用于连接和操作特定的存储组件,然后通过存储层接口在Clusterpedia APIServer和ClusterSynchro Manager中注册。存储组件:特定的存储设施,如mysql、postgres、redis或其他图形数据库。此外,Clusterpedia将使用定制的资源PediaCluster实现集群认证和资源集合配置。

Clusterpedia还提供了一个默认的存储层,可以访问mysql和postgres。

Clusterpedia并不关心用户使用的具体存储设置。用户可以根据自己的需求选择或实现存储层,然后将存储层注册到Clusterpedia中作为插件使用。

特性和功能支持复杂的检索条件、过滤条件、排序、分页等。查询资源时,请求附属资源。统一的主集群和多集群资源检索门户兼容kubernetes OpenAPI,使用kubectl可以直接进行多集群检索,不需要第三方插件或工具采集不同版本的集群资源,不受主集群版本约束,资源采集性能高。低内存根据集群的当前健康状态自动启动和停止资源收集的插件存储层。用户可以根据自己的需要使用其他存储组件来定义存储层。02部署集群百科。关于部署的详细过程,您可以查看自述文件。这里主要介绍如何使用clusterpedia。https://github . com/cluster pedia -io/cluster pedia # % E9 % 83% A8 % E7 % BD % B2

03集群资源收集clusterpedia部署完成后,我们就可以通过kubectl操作PediaCluster资源了。

$ kubectl get pediaclusters在examples目录中。可以看到PediaCluster的API版本示例:clusters.clusterpedia.io/v1alpha1kind: pedia cluster metadata:name:cluster -ExAmplespec:API serverurl:” https://172 . 30 . 43 . 41:6443 ” CAData:” ” token data:” ” Certdata:” ” key data:” ” Resources:-Group:Apps Resources:-Deployments -Group:” ” Resources:-PodspeedCluster在配置上可以分为两部分。

群集身份验证指定资源集合。spec.resources群集身份验证cadata、tokendata、certdata和keydata字段用于群集身份验证。

目前不支持从ConfigMap或Secret获取验证相关信息,但已经在Roadmap中。

设置验证字段时,请注意使用base64后面的字符串。

在examples目录下,提供生成RBAC山药簇pedia _ synchronous _ RBAC。YAML,用于访问子集群,以便方便地获得子集群的权限令牌。

在子集群中部署yaml,然后获取相应的令牌和ca证书。

$ #目前kubectl连接到$ ku bectl apply -fexamps/clusterpedia _ synchronous _ RBAC。yamclclusterrole.rbac.authorization.k8s.io/集群pedia -synchro created service account/集群pedia -synchro createdclusterrolebinding.rbac.authorization.k8s.io/集群pedia -synchronous created $ synchronous _ token = $(ku bectl get secret的操作员支持$ (kubectl get service account集群pedia -synchronous -o JSON path = ‘ {。机密标签密钥=,=,!对于大小的条件,kubectl其实可以用–chunk-size来指定,不需要label key。

馆藏资源在clusterpedia中有更高级的资源聚合,使用馆藏资源可以一次获得一组不同类型的资源。

您可以首先检查clusterpedia当前支持哪些集合资源。

$ kubectl获取集合资源名称资源工作负载部署。应用程序、守护程序集。应用程序、有状态集。应用程序可以通过获取工作负载来获得一组部署。Daemonset、statefulset聚合资源和集合资源也支持所有复杂的查询。

Kubektl get collection resources工作负载默认会获取所有集群下所有名称空间的对应资源。

$ kubectl get collection resources workloads cluster GROUP VERSION KIND NAMESPACE NAME age cluster -1 apps v1 DaemonSet kube -system vsphere -cloud -controller -manager 63d cluster -2 apps v1 Deployment kube -kube -controllers 109 dcluster -2 apps v1 Deployment kube -system coredns -coredns 109 dcluster -2 apps v1 Deployment DCE -ACM -agent DCE -ACM -agent 84d添加了集合daemon set

由于kubectl的限制,在kubectl中不能使用复杂的查询,只能通过url查询进行查询。

自定义集合资源集合资源支持存储层提供哪些资源,默认存储层将来会支持自定义组合集合资源。

05更复杂的资源操作。clusterpedia不仅用于资源检索,还像wiki一样对资源具有简单的控制能力,如观看、创建、删除、更新等。

对于写操作,实际上会通过双写+响应警告来完成。

有兴趣的话可以在下期一起讨论。

06集群的自动发现和收集clusterpedia中用来表示集群的资源称为PediaCluster,而不是简单集群。主要原因是clusterpedia的初衷是让clusterpedia建立在现有的多集群管理平台上。

为了遵循初衷,首先的问题是不能与现有多集群平台中的资源冲突,集群是最常见的代表集群的资源名称。此外,为了更好地访问现有的多集群平台,使被访问的集群能够自动收集资源,我们需要另一种集群发现机制。这种发现机制需要解决以下问题:

通过配置触发PediaCluster生命周期的条件条件、设置默认资源收集策略和名称前缀,可以实现对访问集群的认证信息的访问。这一功能将在Q1或Q2详细讨论。

07当前进展clusterpedia目前处于早期阶段(v0.0.9-alpha),核心功能刚刚完成。还有很多可以优化的地方。针对这些优化点,也提出了相应的问题。欢迎大家一起讨论。

以下是进入v0.1.0版本前的一些简单优化点:

从集群中收集到的具有Server-Side Apply特征的资源将有一个臃肿的managedFields字段,相应的特征门将被添加到clustersynchro manager模块中。允许用户在收集该字段时,在同一个臃肿的字段注释中删除kubectl.kubernetes.io/last-applied-configuration,也允许用户在指定集群获取资源时,删除该字段。如果集群处于异常状态,则应该在响应中添加警告,提醒用户更准确地更新PediaCluster的状态信息。在弱网络环境下,有更多的资源收集优化项目,您可以在问题中提出新的想法。

路线图目前只是一个试探性的路线图,具体的时间表还要看社区的需求。

2021年Q4,2021年Q4将完成上述优化事项,完成定制资源的收集。

详细的资源收集状态,定制的资源收集Q1支持插件存储层实现集群的自动发现和收集,Q2支持对集群资源的更多控制,例如,监视/创建/更新/删除等操作,默认存储层支持定制的收集资源和请求附加的关系资源。09注意多集群网络连接。clusterpedia实际上不会解决多集群环境中的网络连接问题。用户可以使用tower等工具连接和访问子集群,或者使用submariner或skupper解决跨集群网络问题。

当然也可以加入DaoCloud道客云原生交流群参与交流互动:

DaoCloud道客云原生开源项目Clusterpedia(The Encyclopedia of Kubernetes clusters)加持kubectl,检索多集群资源(企业)微信扫码加盟道云公司简介:“道云道客”是云原生领域的创新领导者。成立于2014年底,拥有自主知识产权的核心技术,致力于打造开放的云原生操作系统,赋能企业数字化转型。产品能力覆盖云原生应用开发、交付、运维的全生命周期,提供公有云、私有云、混合云等多种交付方式。公司自成立以来,深耕金融科技、先进制造、智能汽车、零售网点、城市大脑等领域。其标杆客户包括交通银行、浦发银行、上汽集团、东风汽车、海尔集团、屈臣氏、金拱门(麦当劳)等。目前公司已完成超亿元的D轮融资,被誉为科技领域的准独角兽企业。公司在北京、武汉、深圳、成都设立了多家分公司和合资企业,员工总数超过350人。是上海市高新技术企业、上海市“科技巨人”企业、上海市“专业化创新型”企业,并被纳入科技创新板培育企业名单。

未经允许不得转载:国外VPS主机测评 » cluster pedia(kubernetes集群的百科全书)是DaoCloud道客云最初的开源项目,增加了kubectl来检索多集群资源。
任何商家都有倒闭和跑路可能,本站仅分享优惠活动及信息,购买前请自行斟酌,衡量评估风险,自负责任。数据勤备份是最佳选择!友情提示

评论 抢沙发

评论前必须登录!