云平台上运行的应用需要使用一些基础服务,如数据库、应用服务器等通用的基础软件。譬如一个 wordpress 应用,作为一个 web 应用,后端需要一个数据库服务,如 MariaDB。传统方式是在 wordpress 应用的编排中也创建应用依赖的 MariaDB 服务,并与 Web 应用进行集成。这种云上应用开发的方式,就需要开发者花费精力解决所依赖的基础设施软件的部署和配置,增加应用托管和迁移的成本。

阿里云容器服务支持并集成了服务目录的功能,该功能旨在接入和管理 Service Broker,使 kubernetes 上运行的应用可以使用 service broker 所代理的托管服务。服务目录功能将支持一系列基础设施软件,应用开发者可以不用关心这些软件的可用性和伸缩能力,也不用对其进行管理,开发者可以简单的将其作为服务使用,只需专注开发核心的应用程序。

服务目录通过 Kubernetes 的 Open Service Broker API 与 Service Broker 进行通信,并作为 Kubernetes API Server 的中介,以便协商首要规定(initial provisioning)并获取应用程序使用托管服务的必要凭据。关于服务目录的具体实现原理,请参考 service catalog