Goldengate Monitor Introduction

一.原理概述
1.1.框架说明:

Goldengate实例可以通过Monitor对mgr,ext,rep,dp进程进行监控,监控原理为:被监控进程周期性更新监控点(比如:status,lag,checkpoint等)。MGR进程则将这些监控信息通过Monitor的agent将信息发送出去到Monitor Server。一个Monitor Server可以最多监控20个OGG实例,每个OGG实例最多可以有50个进程。内部涉及到的网络应用部署在tomcat上的。整个Monitor架构如下图描述:

Oracle goldengate:每个Monitor Server通过JMX(Java Management Extentions)与GG实例的mgr进行通信,MGR进程则负责将监控信息发送到server;
Oracle Goldengate Agent:安装在OGG实例所在主机,11.1.1.1版本agent嵌入在MGR进程中(与基于C的subagent交互),11.2.1之后Agent为独立的Java Agent;
Monitor Server:Monitor Server对多个ogg实例进行监控,主要功能为:1).维护监控信息并与浏览器交互;2).负责对用户,历史信息,监控触发时间进行管理;
Monitor Repository:存放监控信息,用户信息等相关资料的一个数据库;

1.2.发现进程(discovery process)
OGG Monitor预置了一部分用于自动配置策略和自动发现数据库的规则,主要包含:发现方案、局部方案、发现数据库

自动发现OGG框架:
启动ogg进程的时候,agent会自动将这些信息注册到Monitor server用于生成整个OGG框架的流程,通过浏览器登录后将可以看到这些流程。所谓的流程:即在单向复制的过程中,发现进程可以自动发现从源端的抓取及trail到目标端的replicat,进而形成一个完整的流程;如果过是双向复制则为源端到目标端-->目标端到源端的流程。

发现局部框架(partial solutions):
所谓局部框架就是只注册了整个OGG框架中的一部分流程到Monitor Server中去。比如:Replicat进程配置了但是没有启动,则无法注册到Server,此时在用户界面里面可能就只能在TREE VIEW中看到一部分信息但是在完整框架列表将无法看到。因为无法在框架列表中看到局部框架,但是我们可以通过在用户界面创建视图实现查看局部框架的目的。

发现数据库:
在发现进程注册发现OGG框架的时候可以自动发现数据库,取决于数据库类型、安装位置、注册数据库的进程;它会通过实例名,管理端口,主机名来判定是不是同一个数据库。如果同一个数据库的不同schema被不同mgr进程管理的进程抓取,则会显示成两个数据库。如果是被同一个mgr管理的进程所抓取则形成一个数据库图标。

二.Monitor Server安装
2.1.系统需求:
Monitor Server:
操作系统平台:
硬件需求:网络接口需要(5501:关闭, 5500:HTTP, 5505:HTTPS, 5502:JMX Server)、1.5GB内存(如果安装时无法分配1GB内存将安装失败,足够多进程需要监控则建议2GB);
存储空间:取决于监控的实例数量和进程数量及历史信息保留时间长度。数据库空间至少200M
软件需求:需要数据库:Mysql 5.0/5.1,SQL SERVER2005/2008, Oracle 10g/11g,测试可以使用内嵌Derby数据库,生产不建议使用内嵌库;
其他信息:主机名(写入hosts); repository数据库必须运行着; 数据库用户用权限读写repository; 邮件服务器信息; SNMP; 如果使用HTTPS则需要导入jks秘钥库(通过java keytool生成);

2.2.安装Monitor Server
软件下载:
http://edelivery.oracle.com下载,位于11.1.1版本的OGG管理包中,11.2中没有
SQL> create tablespace monitor datafile size 200m autoextend on maxsize 1024M;
SQL> create user monitor identified by monitor1 default tablespace monitor temporary tablespace temp quota unlimited on monitor;
SQL> grant connect to monitor;
SQL> grant resource to monitor;

软件安装:
运行安装包;
欢迎界面下一步;
选择安装位置;
是否添加到开始菜单(仅WIN)
选择数据库, 配置OK后想要更换数据库需要重新配置
配置数据库(仅针对非内嵌数据库), ORACLE: 主机名,端口,实例名MySQL: 主机名,端口,库名;  SQLSERVER: 主机名,端口,库名(只能是dbo)
指定数据库用户;
指定Monitor超级用户(master:master1);
添加到服务(仅WIN);
配置端口, 至少要配置1个(如果默认的不可用可以修改);
配置证书(如果要配置HTTPS则需要);
配置JMX Server:(主机名/IP,Agent连接到Monitor Server的用户名和密码:jmxuser:jmxuser1,端口可以默认的或者自定的);
配置SMTP:(邮件服务器主机,端口,用户名密码及发件人地址);
配置SNMP:
确认所有配置;
完成安装;
注:如果使用命令行安装,只需要在执行安装包后面增加参数 -c

2.3.Monitor配置
基础要求:
1).OGG版本高于11.1.1.1.1;
2).JAVA版本1.6以上;

配置环境变量:
11.2版本 OGG需要设置的变量
export JAVA_HOME=<JAVA_INSTALL_DEST>
export PATH=$JAVA_HOME/jre/bin:$JAVA_HOME/bin/server:$PATH

11.1.1版本OGG需要额外配置的环境变量:
      Linux/Solars变量:LD_LIBRARY_PATH配置为libjvm.so文件路径,64位Solaris要配置为:JAVA_HOME/jre/lib/sparcv9/server
      AIX变量:LIBPATH,指定ppc64及j9vm所在位置,$JAVA_HOME/jre/lib/ppc64:$JAVA_HOME/jre/lib/ppc64/j9vm:$LIBPATH
      HPUX变量:SHLIB_PATH,指定libjvm.s1 (HPUX PARISC) or libjvm.so(HPUX Itanium)

OGG相关路径(在OGG安装目录下有部分文件和Monitor有关系):
cfg:安装时创建的用于存放配置agent相关的XML配置文件;
dirjar:安装时创建的用于支持agent运行jar包;
dirprm:安装时创建的用于存放OGG进程参数文件的目录,其中jagent.prm文件为agent的参数文件;
dirwlt:配置wallet的时候创建的用于存放用于配置Monitor的密码的目录;
dirdb:在GGSCI执行create datastore语句时创建berkely数据库(OGG11.2.1以后)用于保存监控信息时自动创建,
dirchk:安装时创建的用于存放检查点文件的路径,monitor运行时会自动创建agent.cpm文件在此路径

配置准备工作:
确认OGG版本为11.1.1.1.1之后版本:<gg_home>/ggsci -v
检查JAVA版本:java -verison
打开Monitor(在GGSCI执行, 需要重启):EDIT param ./GLOBALS
      建议直接在此时停掉所有OGG进程
      11.1.1.1.1版本写入参数:ENABLEMONITORAGENT
      11.2.1之后版本写入参数:ENABLEMONITORING(只能是这个参数,老版本的应该删掉)
配置OGG实例;
创建Oracle Wallet;
启动OGG实例;

配置OGG实例:
设定<GG_HOME>/cfg/Config.properties文件中的参数
参数默认值推荐值含义备注
jagent.hostlocalhost<主机名/IP>Jagent运行主机统一使用主机名或IP
jagent.jmx.port5555未被占用口Jagent端JMX的端口最好使用默认端口
interval.regular6060Jagent收集监控信息常规周期,秒 
interval.quick3030Jagent收集监控信息快速周期,秒 
monitor.hostlocalhost<主机名/IP>Monitor Server运行主机值需要与Monitor Server端的monitor.properties文件中monitor.jmx.server.host一致
monitor.jmx.port5502预置端口JMX服务在JMX Server所对应的端口安装Server时指定的值
monitor.jmx.usernamecmroot自定义JMX用户名Monitor Server安装过程中指定的JMX用户名
jagent.usernameroot自定义agent用户名可以随便指定,主要用于agent注册时发送到Server端
reg.retry.interval1010Jagent重新连接到Server的时间间隔,秒 
instance.query.initial.interval530如果MGR进程启动后,此时间内没有ext,rep进程启动则agent也会去注册到Server 
incremental.registration.quiet.interval515新进程配置后agent会增量注册到Server,此时间为配置接口后到注册前的等待时间 
maximum.message.retrieval500500jagent启动时从cagent获取的最大信息数量 
mgr.hostlocalhost注释掉mgr运行主机如果jagent和mgr进程运行在同一个主机则无需配置
mgr.port7089注释掉mgr运行端口如果jagent和mgr进程运行在同一个主机则无需配置
jagent.rmi.port55595559RMI运行端口仅针对agent type是OEM的时候,EM agent连接到Jagent的端口
agent.type.enabledOGGMONOGGMON/OEM监控类型 
status.polling.interval55集新状态信息的时间周期,秒根据需求设置
message.polling.interval55message收集周期,秒 

配置Oracle Wallet:
Oracle Wallet主要用于存储密码,我们可以通过安装OGG的时候自带的pw_agent_util.bat/pw_agent_util.sh工具文件创建Oracle wallet并保存两个我们需要的密码。注意,创建的时候必须是安装OGG的操作系统用户进行。
1).命令行进入ogg安装目录(WIN也是用命令行);
2).执行:pw_agent_util.sh -create
3).如果wallet已经存在:则参考3.3中的相关动作
4).创建好后会提示输入Agent的JMX密码,在注册的时候会发送到Monitor Server;
5).输入Monitor Server的JMX的密码,此密码在安装Monitor Server的时候指定



启动OGG实例:
11.1.1.1.1之前的OGG的agent是嵌入在MGR里面的,可以通过重启MGR实现打开agent的办法;
11.2.1之后的版本agent独立出来了,打开方法如下:
1).进入GGSCI命令行
2).启动mgr进程;
3).执行create datastore
4).执行start jagent

三.Monitor Server管理
3.1.启动与停止:
1).可以通过Monitor安装目录下的bin子目录中的monitor.bat/monitor.sh脚本启动或者停止Monitor服务
      启动:./monitor.sh start
      停止:./monitor.sh stop
2).可以通过网页界面进行启动停止:
http://host_name:http_port/monitor/

3.2.调整Monitor Server
修改密码:
我们可以通过Monitor提供的工具(<Monitor_Home>/bin/pw_server_util.bat/sh)来调整Monitor的相关密码:
Shell>  ./pw_server_util.sh -{updateJPA | updateJMX | updateSMTP}
     updateJPA changes the databaseconnection password
updateJMX changes the Oracle GoldenGateMonitor Server’s JMX password
updateSMTP changes the SMTP e-mail password
:修改密码时什么都不输入则意味着不修改,修改密码后需要重启Monitor

调整Monitor的内存:
调整Monitor内存之前先要停掉Monitor Server,调整Monitor的内存方式同样取决于是否将Monitor Server配置成服务。

没有配置成服务:
1).打开<Monitor_Home>/bin/monitor.sh(或bat文件)
2).修改:JAVA_OPTS=-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m
参数说明
-Xms最小分配的内存
-Xmx最大可分配的内存
PermSize常驻内存堆大小,用于存放常用类
MaxPermSize最大的内存堆大小

已配置成服务:
1).打开<Monitor_Home>/bin/monitor-service.bat(官方文档说是<Monitor_Home>/tomcat/bin/monitor-service.bat)
2).调整rem Set extra parameters中的--JvmMx 1024 和PermSize 参数中的值。达到调整内存的目的。
3).卸载现有服务:monitor.bat uninstall
4).重新安装服务:monitor.bat install
5).重新启动Monitor Server

调整session Timeout周期:
1)编辑<Monitor_Home>/webapp/WEB-INF/web.xml
2).调整session-timeout节点中的值,单位为分钟,如果 不希望过期,则设置为0或-1
3).重启Monitor服务

3.3.管理GoldenGate Agent:
修改Agent密码:
因为wallet配置后可能需要修改密码,所以可以通过OGG中的pw_agent_util.sh工具来更新密码,步骤如下:
1).进入到OGG的安装目录;
2).执行: ./pw_agent_util.sh -[updateAgentJMX | updateServerJMX]
updateJAgentMX  changes the agent’s JMX password.
updateServerJMX  changes Oracle GoldenGate Monitor Server’s JMX password.
3).重启agent: 11.1.1.1版本重启MGR实现11.2.1之后版本通过重启jagent实现

修改JAGENT内存:
1).在GGSCI中执行:edit param jagent
2).按照需求修改:java -jar - Xms64m - Xmx512m dirjar/jagent.jar

3.4.配置ALERTS
以下操作,配置完都需要重启Monitor Server
配置邮件alerts
此功能可以通过邮件将定义好的一些警告信息发送出来,要使用此功能需要在安装Monitor Server的过程中配置SMTP。如果在安装过程中没有配置,则需要在安装过后修改<Monitor_Home>/cfg/monitor.properties中的相关参数实现:
monitor.smtp.alerts.enabled=true
monitor.smtp.from=<发件地址>
monitor.smtp.host=<邮件服务器地址>
monitor.smtp.port=<端口>
monitor.smtp.secure={true | false}<是否需要认证>
monitor.smtp.user=<用户名>
密码需要通过: ./pw_server_util.sh -updateSMTP

配置CLI alerts
配置过程中没有打开则需要调整<Monitor_Home>/cfg/monitor.properties中的相关参数实现:
monitor.cli.alerts.enabled=true
详细配置方式参见官方文档

配置SNMP Alerts

启停用Alerts
修改<Monitor_Home>/cfg/monitor.properties中的相关参数实现
monitor.smtp.alerts.enabled=false
monitor.cli.alerts.enabled=false
monitor.snmp.alerts.enabaled=false



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值