Upload
bobby-curtis
View
300
Download
11
Embed Size (px)
DESCRIPTION
Oracle Open World 2014 presentation on different ways of monitoring Oracle GoldenGate
Citation preview
How many ways to monitor Oracle GoldenGate?
Session: UGF9217
Oracle Open World 2014
User Group Sunday
Sunday, September 28 Cloud Computing SIG: 1:30 p.m. - 2:30 p.m.
Monday, September 29
Exadata SIG: 2:00 p.m. - 3:00 p.m.
BIWA SIG: 5:00 p.m. – 6:00 p.m.
Tuesday, September 30
Internet of Things SIG: 11:00 a.m. - 12:00 p.m.
Storage SIG: 4:00 p.m. - 5:00 p.m.
SPARC/Solaris SIG: 5:00 p.m. - 6:00 p.m.
Wednesday, October 1
Oracle Enterprise Manager SIG: 8:00 a.m. - 9:00 a.m.
Big Data SIG: 10:30 a.m. - 11:30 a.m.
Oracle 12c SIG: 2:00 p.m. – 3:00 p.m. Oracle Spatial and Graph SIG: 4:00 p.m. (*OTN lounge)
IOUG SIG Meetings @ Oracle Open World
Note:
All Meeting located in Moscone
South – Room 208
Accenture Enkitec Group Enkitec joined Accenture’s Infrastructure Services as Accenture
Enkitec Group (May 2014) Ø 17,000 Infrastructure Services professionals
Ø 52,000 Oracle professionals
Focus on Oracle Engineered Systems Solutions Ø Database Migrations & Transformations
Ø Database-as-a-Service
Ø Oracle Applications on Engineered Systems
Ø Cloud-based solutions leveraging Engineered Systems
Speaker
Douglasville, Georgia
Senior Technical Consultant
IOUG, RMOUG, GAOUG, RACSIG
@dbasolved
http://dbasolved.com
Session Agenda
1. What is Oracle GoldenGate?
2. Use Cases/Topologies
3. Monitoring ü GGSCI
ü Command Line
ü SQL
ü Management Pack
Oracle GoldenGate • Comprehensive software for real-time data integration in heterogeneous
environments
• Benefits
• High Availability Solutions
• Real-Time Data Integration
• Transactional Change Data Capture
• Data Replication
• Transformation of Data
• Verification of Data
• Primary Replication Tool in Oracle Database 12c (12.1.0.1/12.1.0.2)
• Oracle Upgrade Guide, Sections 8.1.6 & 8.1.7
Unidirec(onal Query Offloading Zero-‐Down3me Migra3on Data Integra3on Cloud or On-‐Premise
Bi-‐Direc(onal Ac3ve-‐Ac3ve for Mul3-‐Master/HA Cloud or On-‐Premises
Data Distribu(on via Messaging
Cloud Apps Integra(on
Big Data Delivery
Real/Time and Batch Delivery Structured Data to Data Reservoir
Monitoring • Different Approaches to Monitoring
• Manual
• Scripts Based
• SQL Based
• Oracle Management Pack For Oracle GoldenGate
• Oracle GoldenGate Monitor (not discussed)
• Oracle GoldenGate Director
• Oracle Enteprise Manager 12c
Manual Monitoring • Simplest Approach
• Monitoring parameters in parameter files
• Uses GoldenGate Service Command Interface (GGSCI)
• Error Reporting -> ggserr.log
• SQL Errors -> Discard File (*.dsc)
Monitoring: Scripts • Wrappers for manual commands
• Any language
• Shell
• Perl
• Etc…
• Write once, Run multiple times
• Repeatable process -> no memorization
• Portable between environments
Monitoring: Scripts
#!/bin/sh #info_all.sh export GGS_HOME=/opt/oracle/product/ggate $GGS_HOME/ggsci <<EOF info all exit EOF
Example: Info_all.sh
Monitoring: Scripts
PROCESSES="mgr ggcmd extract replicat" for GGPROCESS in $PROCESSES do FLAG=`ps -ef | grep $GGPROCESS` if [ $_ ] then "No GoldenGate Process Found" else ps -C $GGPROCESS -O rss | awk '{print $2/1024, "MB", $12}' | sort -k 2 fi done exit 0
Example: gg_mem_mon.sh
Monitoring: SQL • Golden Gate specific tables
• 11.2.0.3 (few)
• 11.2.0.4 (little more)
• 12.1.0.1 (moving forward)
• 50 Objects (to date)
• Integrated Capture/Apply
• 11.2.0.3 (Capture)
• 11.2.0.4 (Capture/Apply)
• 12.1.0.1
• Non-PDB (classic/integrated)
• PDB (integrated only)
• Increase in views (AQ_*)
Monitoring: SQL & SQL Developer • Hybrid (Scripts/SQL)
• Ability to monitor from SQL*Plus or SQL Developer
• Can only see what is going on currently
• Moving parts
• Script to write text file • Need to schedule run (crontab/dbms_scheduler)
• Usage of External Tables
Monitoring: SQL & SQL Developer
. [Code Removed] open (GGPROC, ">$outfile") or die "Unable to open file"; foreach (@buf){ if(/MANAGER/||/JAGENT/||/EXTRACT/||/REPLICAT/)
{ no warnings 'uninitialized'; chomp; my ($program, $status, $group, $lagatchkpt, $timesincechkpt) = split(" "); if ($group eq "") { $group = $program;
} if ($lagatchkpt eq "" || $timesincechkpt eq "") { $lagatchkpt = "00:00:00"; $timesincechkpt = "00:00:00";
} print GGPROC "$program|$status|$group|$lagatchkpt|$timesincechkpt\n"; } } close (GGPROC);
Example: gg_mon_sqldev.pl
Monitoring: Director
• Multi-tier, client-server application
• Can manage GoldenGate from a remote client
• Many moving parts
• See Architecture (Next Slide)
• Client – GUI interface for users
• Mid-Tier Server
• Weblogic, Application & Monitor agent
• Central Repository – i.e. Database
Monitoring: Enterprise Manager 12c • Quickly becoming monitoring tool of choice
• GoldenGate monitoring available in OEM 12c (12.1.0.1)
• Support via a plug-in
• JAgent is used to interact with OEM Agent/Plug-In • Plug-in (12.1.0.2), separate JAgent install (12.1.3)
• GLOBALS (ENABLEMONITORING)
Monitoring: Enterprise Manager 12c • GoldenGate Plug-in Installed
• Oracle Management Server
• Oracle Agent
• Current Release (12.1.0.2)
• Ensure update of plug-in
• Setup -> Extensibility -> Self Update
Monitoring: Enterprise Manager 12c GoldenGate Access
• Deployed on OMS/Agent
• JAgent started
• Targets -> GoldenGate
Monitoring: Enterprise Manager 12c
Metric Extensions
• Hybrid Approach • Metric Extensions
• Metric Extensions • Uses Scripts/More Texted based
• Can be deployed to any agent
• Does not have up/down issues with Jagent - Agent interaction
• Not restricted to a minimum version of GoldenGate
Monitoring: Enterprise Manager 12c
Metric Extensions #!/usr/bin/perl -w # # use strict; use warnings; #Static Variables my $gghome = "/oracle/app/product/12.1.2/ggate"; #Program my @buf = `$gghome/ggsci << EOF info all EOF`; foreach (@buf) { if(/EXTRACT/||/REPLICAT/) { s/\s+/\|/g; print $_."\n"; } }
Monitoring: Enterprise Manager 12c
Metric Extensions • Metric Extension • Enterprise -> Monitoring -> Metric Extensions
• Metric seen under All Metrics for Hosts (*)
• Packaged and deployed to multiple agents