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保持当前画面进行分析。

谢谢各位。

Oracle GoldenGate 12.3微服务架构指北的更多相关文章

  1. GoldenGate 12.3微服务架构与传统架构的区别

    随着Oracle GoldenGate 12c(12.3.0.1.0)的发布,引入了可用于复制业务数据的新架构. 多年来,这种架构有着不同的称谓,Oracle终于在最后GA发布的版本中,以“Micro ...

  2. 学习一下 SpringCloud (一)-- 从单体架构到微服务架构、代码拆分(maven 聚合)

    一.架构演变 1.系统架构.集群.分布式系统 简单理解 (1)什么是系统架构? [什么是系统架构?] 系统架构 描述了 在应用程序内部,如何根据 业务.技术.灵活性.可扩展性.可维护性 等因素,将系统 ...

  3. Oracle GoldenGate微服务架构的服务Shell脚本

    Oracle GoldenGate微服务架构的/etc/init.d下的OracleGoldenGate服务Shell脚本: #!/bin/sh # # Oracle GoldenGate Servi ...

  4. 微服务架构 | 12.1 使用 Apache Dubbo 实现远程通信

    目录 前言 1. Dubbo 基础知识 1.1 Dubbo 是什么 1.2 Dubbo 的架构图 1.3 Spring Cloud 与 Dubbo 的区别 1.4 Dubbo 的特点 1.5 Dubb ...

  5. 基于 Docker 的微服务架构实践

    本文来自作者 未闻 在 GitChat 分享的{基于 Docker 的微服务架构实践} 前言 基于 Docker 的容器技术是在2015年的时候开始接触的,两年多的时间,作为一名 Docker 的 D ...

  6. 微服务架构集大成者—Spring Cloud (转载)

    软件是有生命的,你做出来的架构决定了这个软件它这一生是坎坷还是幸福. 本文不是讲解如何使用Spring Cloud的教程,而是探讨Spring Cloud是什么,以及它诞生的背景和意义. 1 背景 2 ...

  7. 几种常见的微服务架构方案简述——ZeroC IceGrid、Spring Cloud、基于消息队列

    微服务架构是当前很热门的一个概念,它不是凭空产生的,是技术发展的必然结果.虽然微服务架构没有公认的技术标准和规范草案,但业界已经有一些很有影响力的开源微服务架构平台,架构师可以根据公司的技术实力并结合 ...

  8. 几种常见的微服务架构方案——ZeroC IceGrid、Spring Cloud、基于消息队列、Docker Swarm

    微服务架构是当前很热门的一个概念,它不是凭空产生的,是技术发展的必然结果.虽然微服务架构没有公认的技术标准和规范草案,但业界已经有一些很有影响力的开源微服务架构平台,架构师可以根据公司的技术实力并结合 ...

  9. Re:从0开始的微服务架构:(一)重识微服务架构--转

    原文地址:http://www.infoq.com/cn/articles/micro-service-architecture-from-zero?utm_source=infoq&utm_ ...

随机推荐

  1. thinkjs解决跨域

    this.header("Access-Control-Allow-Origin", "*"); 将上面的代码在请求发送之前执行即可 如果不知道放在哪里 可以参 ...

  2. FFT NTT 错误总结(持续更新)

    FFT NTT错误总结 1 处理\(r\)数组时忘记赋值 r[i] = (r[i >> 1] >> 1) | ((i & 1) << (l - 1)); 2 ...

  3. 不同RAM空间存储变量区分

  4. 第二阶段:2.商业需求分析及BRD:3.产品需求分析

    产品需求收集之后就可以进行产品需求分析了. 比如微信功能的逐步完善,偏向于做加法,但有时候也会做减法. Y轴是重要跟不重要 X轴是紧急跟不紧急 然后通过各个需求的分数来确定坐标位置.同时可以根据阶段调 ...

  5. 【重学Node.js 第1&2篇】本地搭建Node环境并起RESTful Api服务

    本地搭建Node环境并起RESTful Api服务 课程介绍看这里:https://www.cnblogs.com/zhangran/p/11963616.html 项目github地址:https: ...

  6. C# 初识接口 Interface

    什么是接口? 接口(interface)用来定义一种程序的协定.实现接口的类或者结构要与接口的定义严格一致.有了这个协定,就可以抛开编程语言的限制(理论上).C#接口可以从多个基接口继承,而类或结构可 ...

  7. vc++栈的简单实现

    栈的数据类型是先进后出 #ifndef __MYSTACK__ #define __MYSTACK__ #include <Windows.h> typedef struct Node { ...

  8. $[SHOI2007]$ 园丁的烦恼 二维数点/树状数组

    \(Sol\) 设一个矩阵的左上角为\((x_1,y_1)\),右下角为\((x_2,y_2)\),\(s_{x,y}\)是到\((1,1)\)二维前缀和,那么这个矩阵的答案显然是\(s_{x_2,y ...

  9. Java函数式接口与Lambda表达式

    什么是函数式接口? 函数式接口是一种特殊的接口,接口中只有一个抽象方法. 函数式接口与Lambda表达式有什么关系? 当需要一个函数式接口的对象时,可以提供一个lambda表达式. package l ...

  10. VS Code 解决 因为在此系统上禁止运行脚本

    vscode执行命令的 主要是由于没有权限执行脚本.开通权限就可以解决啦 在搜索框中输入:powerShell 选择管理员身份运行 输入命令行:set-ExecutionPolicy RemoteSi ...