作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

我们上一章介绍了Docker基本情况,目前在规模较大的容器集群基本都是Kubernetes,但是Kubernetes涉及的东西和概念确实是太多了,而且随着版本迭代功能在还增加,笔者有些功能也确实没用过,所以只能按照我自己的理解来讲解。
我们前面介绍了那么多资源,这些资源实际上都是在Kubernetes集群内部。但是并不是所有的资源都在集群内部,甚至有些还是PAAS产品,压根不具备放置到内部的条件。一般而言这些组件主要是是数据库或者其他中间(zookeeper,kafka,es等资源)。
对于这些在外部的资源,我们怎么让它和我们的kubernetes集群相互关联,让我们可以像使用集群内部资源一样使用这些外部资源。这个就是我今天要讲的服务目录(ServiceCatalog)。
什么是ServiceCatalog
ServiceCatalog 是一个 Kubernetes 的扩展机制,它提供了一种在集群中管理和使用外部服务的标准化方式。
ServiceCatalog 允许用户将外部服务和资源集成到 Kubernetes 集群中,并使用统一的方式进行管理和使用。
通过 ServiceCatalog,用户可以使用 Kubernetes API 和 YAML 文件定义和消费服务。这使得在 Kubernetes 集群中管理和与外部服务交互变得更加简单和一致。
ServiceCatalog 使用服务经纪人(service brokers)作为 Kubernetes 集群与外部服务提供商之间的中间件。服务经纪人充当了 Kubernetes 集群与外部服务提供商之间的桥梁,使得用户可以通过 Kubernetes API 在集群中进行服务的创建、管理和消费。这种方式使得用户可以无缝地与各种外部服务进行集成,例如数据库、消息队列或云提供商。
通过 ServiceCatalog,用户可以更加方便地管理外部服务的依赖关系,提高了应用程序的可移植性和灵活性。它简化了在 Kubernetes 集群中管理外部服务的流程,并提高了应用程序的敏捷性。
需要注意的是,ServiceCatalog 是一个扩展机制,它可能并不适用于所有的 Kubernetes 发行版或版本。其使用和可用性可能取决于您所使用的具体 Kubernetes 环境。
通俗来说,就是应用可以通过编写yaml文件可以申请到自己需要的外部资源,包括,zk,kafka,mysql等资源。
架构图

当年我对这个图也是花了很多时间,才能理解这里的逻辑,然后在工作看到对应的概念才比较顺手。
原本是打算安装来演示的,但是由于这个已经停止维护,再加上版本更新太快,尝试测试了4个kubernets版本都无法完全匹配上,所以这里就没办法演示,但是可以做一点简单的介绍
1.首先它会通过CRD注册方式很多的资源类型(后面详细介绍)
2.然后它会有自己的控制器的Pod
3.使用的话就是自己编写yaml文件,然后通过kube-apiserver转发到它自己的控制器,再转发到第三方进行资源申请开通。
4.比如我要申请一个Redis资源,就会编写一个需要多少配置(预设里面选的)等配置,最后申请成功就会获得链接地址,密码等信息。
运维小路
一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!
关注微信公众号《运维小路》获取更多内容。
307

被折叠的 条评论
为什么被折叠?



