暂无图片
暂无图片
11
暂无图片
暂无图片
暂无图片

Oracle GoldenGate 微服务架构

4588

上文讲述了 利用 OGG 迁移 Oracle11g 到 19C,现在来学习一下Oracle GoldenGate 微服务架构,Oracle GoldenGate 微服务架构(MA)是从 GoldenGate 12.3 引入的开始,目前 Oracle GoldenGate(OGG)微服务架构是 21.4 版本。

图片.png

OGG 全企业解决方案

基于微服务的实时数据事务与事件的复制

图片.png

GoldenGate 平台解决方案功能

图片.png

Oracle GoldenGate 微服务中包括哪些内容?

核心变化有
• 改进了CLI
•类似于 SQL*Plus。可以使用 AdminClient 连接到本地服务器或任何远程服务器上的任何 OGG Microservices 部署。
• 更安全的是,它现在需要用户名/密码来更改 OGG。
• 本地身份验证–创建本地凭据存储,以安全地存储每个常用部署的密码
• 美化了 WebUI
• 直观的图形用户界面,可在大多数浏览器上用于管理您的 GoldenGate 环境。
• 可以从 CLI 执行的任何操作都可以从 Web UI 执行。
• 减少学习曲线,并消除语法问题。
• REST API
•已经构建了一个完整的 Rest API,以便优化 GoldenGate 复制的开发和自动化。
• Web 用户界面是使用此 API 构建的。

Oracle GoldenGate 微服务体系结构

图片.png

OGG MA 微服务架构由以下 5 个部分组成:

  • Service Manager

  • Administration Server

  • Distribution Server

  • Receiver Server

  • Performance Metrics Server

图片.png

Service Manager: Service Manager是 OGG MA 的守护进程服务。它可以管理,监控和起停MA的其他服务。而且通过 Service Manager 可以管理多个本地 OGG 的部署。

Administration Server: Administration Server是管理和配置OGG数据同步进程的服务。您可以配置数据库登录凭据,添加更改抽取(extract)和应用(replicat)进程,以及查看运行报告,统计信息,添加附加日志,配置checkpoint、heartbeat表等。Administration Server将会取代GGSCI,当然在MA架构中仍然提供命令行工具AdminClient,绝大多数命令都是与经典架构相同的。

AdminClient位于OGG安装目录的bin目录下:

OGG MA架构需要通过以下的命令连接到OGG部署

通过预配的数据库凭据登录数据库

dblogin useridalias oggsrc

通过help命令查看帮助:

您也可以通过下面的链接查看详细的AdminClient命令手册。

https://docs.oracle.com/goldengate/c1230/gg-winux/GGSAU/how-use-admin-client.htm#GGSAU-GUID-84B33389-0594-4449-BF1A-A496FB1EDB29

Distribution Server: Distribution Server可以理解为OGG投递进程的替代者。在Distribution Server之中,可以配置trail文件投递的源端和目标端,以及彼此联通的网络协议。

Receiver Server:Receiver Server可以理解为Collector进程的替代者。它用来接收由Distribution Server传送过来的trail文件。

下图显示了各种客户端(Oracle 产品,命令行,浏览器和程序化 REST API 接口),您可以使用它们来使用服务接口来管理部署。

图片.png

GoldenGate提供了实时的、基于日志的变更数据捕获和在同质和异构系统之间的交付。这技术使您能够构建一个具有成本效益和低影响的实时数据集成和持续可用性解决方案。GoldenGate以事务完整性从已提交的事务中复制数据,并将现有基础设施的开销降到最低。该架构支持一对多、多对多、级联、双向等多种数据复制拓扑。它的各种各样的用例包括实时业务智能; 查询卸载; 零停机升级和迁移; 和Active-active数据库用于数据分发、数据同步和高可用性。在12.3版中引入了微服务架构,作为一种新的管理架构支持rest的服务是GoldenGate环境的一部分。 支持rest的服务提供远程配置,通过HTML5网页、命令行界面和api进行管理和监控。

GoldenGate Hub 是一个架构概念,它将GoldenGate软件放置在与数据库不同的主机上操作,如图2所示。 集线器必须在接近目标数据库的网络中,并期望网络延迟不应该超过2-3ms,或者通常小于50公里。 这种架构的一个优点是它是隔离的来自源和目标数据库服务器的大部分GoldenGate资源使用,为应用程序启用更多的系统资源和数据库处理。 另一个优点是,通过管理和,GoldenGate的配置大大简化了从一个自包含的单一服务器监控整个GoldenGate基础设施,而不需要访问单独的GoldenGate安装在每个数据库服务器上.

图片.png

OUI 图形界面安装

图片.png

图片.png

使用 oggca 图形化创建服务管理器和部署。
易于使用的 WebUI 界面
用于部署的统一主页

图片.png

微服务架构重要文件位置

1. GLOBALS and ENCKEYS : $OGGDEPLOY/etc/conf/ogg/
2. Parameter files : $OGGDEPLOY/etc/conf/ogg/
3. Activity Logging : $OGGDEPLOY/etc/conf/logging
4. Report files : $OGGDEPLOY/var/lib/report/ (IE/IR)
5. SCA log files :$OGGDEPLOY/var/log/
6. Trails : $OGGDEPLOY/var/lib/data/
7. SQL scripts (ddl_setup etc.): $OGGHOME/lib/sql/legacy
8. COM : $OGGDEPLOY/var/temp
9. BR/checkpoint files : $OGGDEPLOY/var/run
10.Wallet for Trail file encryption : $OGGDEPLOY/var/lib/wallet
11. Datastore : $OGGDEPLOY/var/run/dirbdb or $OGGDEPLOY/var/run/dirlmdb
12. DB login Credential : $OGGDEPLOY/var/lib/credential
13. GG Service login wallet: $OGGDEPLOY/var/lib/credential/secureStore

部署之间的桥梁

图片.png

图片.png

图片.png

图片.png

Adminclient/GGSCI

微服务架构中没有 GGSCI
• 两者都是可以管理 GoldenGat e实例的命令界面
• 几乎所有 GGSCI 命令都可以运行,而无需对 Adminclient 进行任何更改
adminclient 的优势是什么?
• GG用户身份验证,不同用户,不同角色,更安全
• 远程运行连接到任何GG MA
• 支持Linux风格的命令历史记录和调用,
例如:

[ogg@oggma213dk bin]$ ./adminclient
Oracle GoldenGate Administration Client for Oracle
Version 21.3.0.0.0 OGGCORE_21.3.0.0.0_PLATFORMS_210728.1047
Copyright (C) 1995, 2021, Oracle and/or its affiliates. All rights reserved.
Oracle Linux 7, x64, 64bit (optimized) on Jul 28 2021 12:32:46
Operating system character set identified as US-ASCII.
OGG (not connected) 2> connect https://localhost:443 as oggadmin !
Password for 'oggadmin' at 'https://localhost':
Using default deployment 'oggma213dk'
OGG (https://localhost oggma213dk) 3> info all
Program Status Group Type Lag at Chkpt Time Since Chkpt
00:00:02 00:00:05
ADMINSRVR RUNNING
DISTSRVR RUNNING
PMSRVR RUNNING
RECVSRVR RUNNING
EXTRACT RUNNING EDB19MAC INTEGRATED

OGG (https://localhost oggma213dk) 4> info extract EDB19MAC, detail
Extract EDB19MAC Last Started 2021-09-02 03:26 Status RUNNING
Description Database 19c running on Mac Docker
Checkpoint Lag 00:00:00 (updated 00:00:00 ago)
Process ID 591
Log Read Checkpoint Oracle Integrated Redo Logs
2021-09-02 05:09:22
SCN 0.3656202 (3656202)
Settings Profile Default
Encryption Profile LocalWallet
Target Extract Trails:
Trail Name Seqno RBA Max MB Trail Type
et 4 1345 50 EXTTRAIL
Extract Source Begin End
Integrated Extract outbound server first scn: 0.3016529 (3016529)
Integrated Extract outbound server filtering start scn: 0.3016840 (3016840)

OGG 微服务 docker 镜像

• Docker Build files available on GIT, under Oracle Docker images
https://github.com/oracle/docker-images/tree/main/OracleGoldenGate/21c
• Download GoldenGate installation files from Oracle OTN download site
https://www.oracle.com/middleware/technologies/goldengate-downloads.html
• Run Docker Build command, giving the GG installation file to INSTALLER argument
$ docker build --tag=oracle/goldengate_microservices:21.3.0.0.0 \
--build-arg INSTALLER=213000_fbo_ggs_Linux_x64_Oracle_services_shiphome.zip .
Sending build context to Docker daemon
...
Successfully tagged oracle/goldengate_microsservices:21.3.0.0.0
• Check the image is successfully built
$ docker images oracle/goldengate-microservices:21*
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle/goldengate-microservices 21.3.0.0.0 ff910ccc7f89 2 weeks ago 2.12GB


• Use docker run command to create the
container
$ docker run \
--name <container name> \
-p <host port>:443 \
-e OGG_ADMIN=<admin user name> \
-e OGG_ADMIN_PWD=<admin password> \
-e OGG_DEPLOYMENT=<deployment name> \
-v [<host mount point>:]/u02 \
-v [<host mount point>:]/u03 \
-v [<host mount point>:]/etc/nginx/cert \
oracle/goldengate_microservices:21.3.0.0.0

• Parameters
<container name> - A name for the new container
(default: auto generated)
-p <host-port> - The host port to map to the Oracle
GoldenGate HTTPS server (default: no mapping)
-e OGG_ADMIN - The name of the administrative
account to create (default: oggadmin)
-e OGG_ADMIN_PWD - The password for the
administrative account (default: auto generated)
-e OGG_DEPLOYMENT - The name of the
deployment (default: Local)
-v /u02 - The volume used for persistent GoldenGate
data (default: use container storage)
-v /u03 - The volume used for temporary GoldenGate
data (default: use container storage)
-v /etc/nginx/cert - The volume used for storing the
SSL certificate for the HTTPS server (default: create a
self-signed certificate)

Docker Run Example

$docker run --name oggma213dk -p 3443:443 -h oggma213dk \
-e OGG_ADMIN=oggadmin -e OGG_ADMIN_PWD=Uguess! -e OGG_DEPLOYMENT=oggma213dk \
-v /Users/werhe/Documents/Software/OracleDocker/OGG213Docker/u02:/u02 \
-v /Users/werhe/Documents/Software/OracleDocker/OGG213Docker/u03:/u03 \
-v /Users/werhe/Documents/Software/OracleDocker/OGG213Docker/cert:/etc/nginx/cert \
-d oracle/goldengate-microservices:21.3.0.0.0
$ docker ps -f name=oggma213dk
CONTAINER ID IMAGE COMMAND
abaa91df5aba oracle/goldengate-microservices:21.3.0.0.0
(healthy) 0.0.0.0:3443->443/tcp oggma213dk
CREATED STATUS PORTS NAMES
"/usr/local/bin/depl…" 14 hours ago Up About an hour

============(未完待续)=

参考链接

https://www.oracle.com/a/ocom/docs/goldengate-management-pack-datasheet.pdf
https://blogs.oracle.com/dataintegration/post/replication-paths-between-oracle-goldengate-msa-marketplace
https://docs.oracle.com/en/middleware/goldengate/core/21.3/ggmas/index.html
https://www.oracle.com/a/tech/docs/maa-goldengate-hub.pdf
https://www.likecs.com/show-204362261.html

❤️ 欢迎关注我的公众号,来一起玩耍吧!!!

————————————————————————————
公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
腾讯云:https://cloud.tencent.com/developer/user/5645107
————————————————————————————
图片.png

最后修改时间:2022-06-15 11:16:09
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论