2.3. 在基于模板的安装中使用 Oracle 数据库升级 3scale
本节介绍在 OpenShift 3.11 基于模板的安装中使用带有 Oracle 数据库的 3scale 系统镜像时,如何升级 Red Hat 3scale API 管理。
先决条件
带有 Oracle 数据库的 3scale 安装.请参阅使用 Oracle 数据库设置 3scale 系统镜像。
要在基于模板的安装中使用 Oracle 数据库升级 3scale 系统镜像,请执行以下步骤:
2.3.1. 使用 Oracle 19c 升级 3scale 复制链接链接已复制到粘贴板!
此流程指导您从现有的 3scale 2.9 安装更新到使用 Oracle Database 19c 的 3scale 2.10。
重要信息:与数据库的连接丢失可能会破坏 3scale。在继续升级前进行备份。请参阅官方 Oracle 数据库文档: Oracle 数据库备份和恢复用户指南。
先决条件
- 3scale 2.9 安装。
一个 Oracle 数据库 19c 安装。
- 有关使用 Oracle 配置 3scale 的详情,请参考准备 Oracle 数据库
流程
git clone --branch 3scale-2.10.0-GA https://github.com/3scale/3scale-amp-openshift-templates.git
$ git clone --branch 3scale-2.10.0-GA https://github.com/3scale/3scale-amp-openshift-templates.git
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将您的 Oracle Database Instant 客户端软件包文件放在
3scale-amp-openshift-templates/amp/system-oracle/oracle-client-files
目录中。 使用
-f
选项运行oc process
命令并指定build.yml
OpenShift 模板:oc process -f build.yml | oc apply -f -
$ oc process -f build.yml | oc apply -f -
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
-f
选项运行oc new-app
命令以指示amp.yml
OpenShift 模板,并使用-p
选项指定带有 OpenShift 集群域的WILDCARD_DOMAIN
参数:oc new-app -f amp.yml -p WILDCARD_DOMAIN=mydomain.com
$ oc new-app -f amp.yml -p WILDCARD_DOMAIN=mydomain.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意以下步骤是可选的。如果在安装或系统升级后删除
ORACLE_SYSTEM_PASSWORD
,请使用它们。输入以下
oc patch
命令,将SYSTEM_PASSWORD
替换为您在准备 Oracle 数据库中设置的 Oracle Databasesystem
密码:oc patch dc/system-app -p '[{"op": "add", "path": "/spec/strategy/rollingParams/pre/execNewPod/env/-", "value": {"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}}]' --type=json oc patch dc/system-app -p '{"spec": {"strategy": {"rollingParams": {"post":{"execNewPod": {"env": [{"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}]}}}}}}'
$ oc patch dc/system-app -p '[{"op": "add", "path": "/spec/strategy/rollingParams/pre/execNewPod/env/-", "value": {"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}}]' --type=json $ oc patch dc/system-app -p '{"spec": {"strategy": {"rollingParams": {"post":{"execNewPod": {"env": [{"name": "ORACLE_SYSTEM_PASSWORD", "value": "SYSTEM_PASSWORD"}]}}}}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令,替换
DATABASE_URL
以指向在准备 Oracle 数据库中指定的 Oracle 数据库 :oc patch secret/system-database -p '{"stringData": {"URL": "DATABASE_URL"}}'
$ oc patch secret/system-database -p '{"stringData": {"URL": "DATABASE_URL"}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入
oc start-build
命令以构建新系统镜像:oc start-build 3scale-amp-system-oracle --from-dir=.
$ oc start-build 3scale-amp-system-oracle --from-dir=.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 等待构建完成。要查看构建的状态,请运行以下命令:
oc get build <build-name> -o jsonpath="{.status.phase}"
$ oc get build <build-name> -o jsonpath="{.status.phase}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 等待构建处于 Complete 状态。
使用 Oracle 数据库设置 3scale 系统镜像后,从
system-app
DeploymentConfig 中删除ORACLE_SYSTEM_PASSWORD
。在升级到新版本的 3scale 前,不需要再次执行它。oc set env dc/system-app ORACLE_SYSTEM_PASSWORD-
$ oc set env dc/system-app ORACLE_SYSTEM_PASSWORD-
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
其他资源
有关 3scale 和 Oracle 数据库支持的更多信息,请参阅 Red Hat 3scale API 管理支持的配置。