4.2. 在 OpenShift 中使用 PostgreSQL 数据库存储配置 Service Registry
本节介绍如何使用 PostgreSQL 数据库 Operator 为 OpenShift 上的 Service Registry 配置存储。您可以在现有数据库中安装 Service Registry,或根据您的环境创建新数据库。本节演示了一个使用 PostgreSQL Operator by Dev4Ddevs.com 的简单示例。
先决条件
- 您必须具有具有集群管理员访问权限的 OpenShift 集群。
- 您必须已安装了 Service Registry。请参阅 第 2 章 在 OpenShift 上安装 Service Registry。
- 您必须已在 OpenShift 上安装 PostgreSQL Operator。例如,请参阅 第 4.1 节 “从 OpenShift OperatorHub 安装 PostgreSQL 数据库”。
流程
- 在 OpenShift Container Platform Web 控制台中,使用具有集群管理员特权的帐户登录。
-
切换到安装 Service Registry 和 PostgreSQL Operator 的 OpenShift 项目。例如,从 Project 下拉菜单中选择
my-project
。 - 为您的 Service Registry 存储创建一个 PostgreSQL 数据库。例如,单击 Installed Operators,PostgreSQL Operator by Dev4Ddevs.com,然后单击 Create database。
点 YAML 并编辑数据库设置,如下所示:
-
名称
:将值改为registry
-
Image
:将值改为centos/postgresql-12-centos7
-
根据您的环境,根据需要编辑任何其他数据库设置,例如:
apiVersion: postgresql.dev4devs.com/v1alpha1 kind: Database metadata: name: registry namespace: my-project spec: databaseCpu: 30m databaseCpuLimit: 60m databaseMemoryLimit: 512Mi databaseMemoryRequest: 128Mi databaseName: example databaseNameKeyEnvVar: POSTGRESQL_DATABASE databasePassword: postgres databasePasswordKeyEnvVar: POSTGRESQL_PASSWORD databaseStorageRequest: 1Gi databaseUser: postgres databaseUserKeyEnvVar: POSTGRESQL_USER image: centos/postgresql-12-centos7 size: 1
- 点 Create,然后等待数据库创建完毕。
- 点 Installed Operators > Red Hat Integration - Service Registry > ApicurioRegistry > Create ApicurioRegistry。
粘贴以下自定义资源定义,并编辑数据库
url
和凭证的值以匹配您的环境:apiVersion: registry.apicur.io/v1 kind: ApicurioRegistry metadata: name: example-apicurioregistry-sql spec: configuration: persistence: 'sql' sql: dataSource: url: 'jdbc:postgresql://<service name>.<namespace>.svc:5432/<database name>' # e.g. url: 'jdbc:postgresql://acid-minimal-cluster.my-project.svc:5432/registry' userName: 'postgres' password: '<password>' # Optional
- 点 Create 并等待 OpenShift 上创建 Service Registry 路由。
点 Networking > Route 访问 Service Registry web 控制台的新路由。例如:
http://example-apicurioregistry-sql.my-project.my-domain-name.com/