Oracle GoldenGate 12.3微服务架构指北

Microservices Architecture introduction

Microservices Architecture is a method or approach to developing applications where an application is deployed as a suite of independently deployed small modular services.

Each module supports a specific business goal and uses a simple, light weight and well-defined interface to communicate with other sets of services.

Oracle GoldenGate Microservices Architecture (MA) is a similar architecture based on REST APIs which enable us to configure, monitor, and manage Oracle GoldenGate services using a web-based user interface.

Oracle GoldenGate微服务架构(MA)是从GoldenGate 12.3引入的。基于REST API,用户通过网页就可以完成OGG服务进程配置,监控和管理全新微服务架构。

在Oracle GoldenGate 12.3 发布之后,我们部署OGG就有了新的选择。除了之前大家所熟知的经典架构(Classic Architecture),我们还可以选用微服务架构。而且微服务架构安装介质也是全新的,与传统的OGG架构安装方法有所不同。

下图是OGG微服务(下简称MA)的架构图:

OGG MA由以下5部分组成:

  • Service Manager
  • Administration Server
  • Distribution Server
  • Receiver Server
  • Performance Metrics Server

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

以下是OGG微服务的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文件。

Performance Metrics Server: Performance Metrics Server是MA提供的实时性能监控服务。它可以通过网页展示各个服务和OGG进程的消息总览和状态变化总览。我们还可以通过点击进程来向下钻取来查看详细信息如:进程,线程性能指标,trail 文件,数据库,缓存,队列统计信息等。

OGG MA提供了更为易用的UI界面和丰富的监控工具。在接下来的文章中,我们将陆续介绍OGG MA的安装过程,以及通过OGG MA快速在网页上几分钟建立起一整套OGG 数据同步进程,敬请关注。

Oracle GoldenGate 12.3微服务架构系列之安装配置#1

1.下载安装介质

OTN下载Oracle GoldenGate 12.3.0.1.2 Microservices for Oracle(最新版为12.3.0.1.2):

2. 安装OGG MA

本文以12.3.0.1.0版本为例,

注意,本文选用Oracle  Database 12c。选择安装目录:

总览:

开始安装:

安装完成:

3. 通过OGG 配置助手创建OGG部署

3.1. 运行oggca

运行$OGG_HOME/bin目录下oggca.sh

3.2. 为OGG部署选择$OGG_HOME之外的一个目录

指定主机名,端口号,设置Service Manager作为守护进程。

3.3. 添加一个GoldenGate 部署

3.4. 命名OGG部署

Software home 默认值为: $OGG_HOME.

3.5. 选择OGG部署文件夹

我们也可以为配置文件自定义目录

3.6. 填写所需的环境变量值

3.7. 配置OGG MA 管理员用户名密码

本示例中没有配置SSL/TLS,下一步

3.8. 为MA的服务配置各自的端口号

3.9. 填写默认的数据复制schema

这里选择了示例数据库的SCOTTschema。

3.10. 安装配置信息纵览

也可以保存响应文件,OGG MA配置助手支持静默配置。

3.11. 使用root账号运行registerServiceManager.sh

3.12. 配置完成,点击Close

Oracle GoldenGate 12.3微服务架构系列之安装配置#2

1. 连接OGG MA Service Manager

通过主机名/IP加端口号(9000)连接到OGG MA Service Manager

下图是OGG MA服务总览信息:

2. 连接OGG MA Administration Server

通过主机名/IP加端口号(9001)连接到OGG MA Administration Server

3. 添加数据库登录凭据

点击界面左侧红色菜单

点击界面中Configuration,然后点击加号添加 Credential.

填写所要访问的数据库用户名、密码。

我们可以通过点击Action下的登录按钮测试我们的数据库连接。这里我们创建了源端和目标端pdb以及CDB的登录凭据。

本示例将在同一CDB下2个PDB进行数据同步。源端为pdbsrc,目标端为pdbtgt。

4. 添加附加日志

在Trandata上点击加号按钮,填写相应信息,点击Submit。

您可以添加schema级别或者表级别的附加日志。

添加Checkpoint表

Oracle GoldenGate 12.3微服务架构系列之安装配置#3

5. 创建捕获进程

新建一个Extract

选择集成模式:

填写Extract进程的基本信息:

选择注册信息PDBSRC。

Extract参数文件的基本信息MA已经为您草拟好了,我们只需要填写要传输的表的信息。

保存配置好的参数文件,在Action下拉箭头点击创建并运行。如下图所示extract进程已经运行起来了。

如果您想查看这个捕获进程的详细信息,可以点击Action->Detail查看。详细信息如下图:

可以点击Parameters来查看捕获进程的参数文件,可以点击铅笔的图标进行编辑。

可以点击 Report标签,查看运行报告。

6. 创建投递进程

登录到 OGG MA Distribution Server。

点击加号图标,来创建一个path。填写基本信息。

保存,这样一个path就创建结束了。

我们可以查看path的详细信息。

统计信息如下:

7.创建应用进程

连接到Administration Server。

点击Replicats附近的加号图标来创建应用进程。

这里我们选择集成模式应用。

填写应用进程的基本信息。

在参数文件中填加表的映射关系。

点击下一步,我们的应用进程已经如下图创建完毕。

至此我们OGG MA的数据复制进程已经配置完毕了。

8.Performance Metrics Server

通过端口号9004来访问Performance Metrics Server。

我们点击相应的进程来查看详细信息:

如Exthri,可以监控的信息还是非常丰富的,而且是实时的,而且我们可以点击Pause保持当前画面进行分析。

谢谢各位。

上一篇:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'userId' not found. Available parameters are [arg1, arg0, param1, param2]


下一篇:KEIL C51之绝对地址定位