第 3 章 服务代理
3.1. 安装服务目录
OpenShift Container Platform 4 中已弃用服务目录。Operator Framework 和 Operator Lifecycle Manager (OLM) 提供了等效和更好的功能。
3.1.1. 关于服务目录
在开发基于微服务的应用程序以在云原生平台中运行时,可以通过许多方式置备不同的资源并共享其协调、凭证和配置,具体取决于服务供应商和平台。
为了给开发人员提供更加顺畅的体验,OpenShift Container Platform 包含服务目录(service catalog),这是 Kubernetes 的 Open Service Broker API (OSB API) 实施。用户可以将部署在 OpenShift Container Platform 中的应用程序与广泛的服务代理连接。
服务目录允许集群管理员使用单一 API 规格集成多个平台。OpenShift Container Platform Web 控制台显示服务目录中由服务代理提供的集群服务类,让用户能够发现并实例化服务以用于其应用程序。
因此,服务用户可从使用不同供应商的不同类型的服务简易性和一致性中受益,而服务供应商则可得益于通过一个集成点来访问多个平台。
默认情况下,OpenShift Container Platform 4 中不安装服务目录。
3.1.2. 安装服务目录
如果计划使用 OpenShift Ansible Broker 或 Template Service Broker 中的任何服务,您必须完成以下步骤来安装服务目录。
OpenShift Container Platform 中默认为服务目录的 API 服务器和控制器管理器创建自定义资源,但最初的 managementState
为 Removed
。要安装服务目录,必须将这些资源的 managementState
更改为 Managed
。
流程
启用服务目录 API 服务器。
使用以下命令来编辑服务目录 API 服务器资源。
$ oc edit servicecatalogapiservers
在
spec
下,将managementState
字段设置为Managed
:spec: logLevel: Normal managementState: Managed
保存文件以应用更改。
Operator 会安装服务目录 API 服务器组件。自 OpenShift Container Platform 4 起,此组件安装到
openshift-service-catalog-apiserver
命名空间中。
启用服务目录控制器管理器。
使用以下命令来编辑服务目录控制器管理器资源。
$ oc edit servicecatalogcontrollermanagers
在
spec
下,将managementState
字段设置为Managed
:spec: logLevel: Normal managementState: Managed
保存文件以应用更改。
Operator 会安装服务目录控制器管理器组件。自 OpenShift Container Platform 4 起,此组件安装到
openshift-service-catalog-controller-manager
命名空间中。