Disclaimer

Saturday, 7 December 2024

Step-by-Step Installation of Oracle GoldenGate (OGG) 21c Microservices

 

Oracle GoldenGate Microservices Architecture has been introduced in Oracle GoldenGate version 12.3. 

A kind of architecture mainly designed on the perspective of Cloud operations. So, the older one is now called as Classic Architecture.

As we all aware that, Oracle GoldenGate Classic Extract for Oracle Database is already de-supported from OGG version 18c and now from OGG 21c, Oracle GoldenGate Classic Architecture itself got deprecated and may be de-supported and unavailable in future releases.

So, Oracle recommends the customers to move to Microservices architecture.

On each new release, Oracle has enhanced the Microservices architecture and there are bunch of enhancements in OGG 21c.

In this article, I would be explaining about the Installation and Configuration of Oracle GoldenGate 21c Microservices Architecture.


Part 1:-

 —————————–—————————–—————————–

Installation of OGG Microservices

—————————–—————————–—————————–


I have downloaded the binary and unzipped in the below location.

[oracle@rac201 gg_software]$ pwd
/u04/gg_software
[oracle@rac201 gg_software]$
[oracle@rac201 gg_software]$ ls -lrt
total 372396
drwxr-xr-x. 3 oracle oinstall      4096 Jul 29  2021 fbo_ggs_Linux_x64_Oracle_services_shiphome
-rw-r--r--. 1 oracle oinstall    306395 Aug 10  2021 oracle-goldengate-release-notes_21.3.pdf
-rw-r--r--. 1 oracle oinstall      2409 Aug 10  2021 OGG-21.3.0.0-README.txt
-rw-r--r--. 1 oracle oinstall 381014026 Jun 10 18:22 213000_fbo_ggs_Linux_x64_Oracle_services_shiphome.zip



Before installing OGG 21c MA, you need to create three directories which are below,


Why you need the above three directories? What is the need of it?

/u04/app/ogg/ogg21c_ma is OGG_HOME

/u04/app/ogg/ogg21c_sm is Service Manager Home

/u04/app/ogg/ogg21c_deploy is Deployment Home

[oracle@rac201 ogg]$ pwd
/u04/app/ogg
[oracle@rac201 ogg]$ ls -lrt
total 12
drwxrwxr-x. 2 oracle oinstall 4096 Dec  7 14:03 ogg21c_sm
drwxr-xr-x. 2 oracle oinstall 4096 Dec  7 14:03 ogg21c_deploy
drwxrwxr-x. 2 oracle oinstall 4096 Dec  7 14:26 ogg21c_ma


Now, navigate to the directory where binary is stored and run the runInstaller file to start the installation of OGG.

oracle@rac201 Disk1]$
[oracle@rac201 Disk1]$ pwd
/u04/gg_software/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1
[oracle@rac201 Disk1]$
[oracle@rac201 Disk1]$ ls -lrt
total 16
drwxr-xr-x.  4 oracle oinstall 4096 Jul 29  2021 install
drwxr-xr-x. 12 oracle oinstall 4096 Jul 29  2021 stage
-rwxr-xr-x.  1 oracle oinstall  918 Jul 29  2021 runInstaller
drwxrwxr-x.  2 oracle oinstall 4096 Jul 29  2021 response




[oracle@rac201 Disk1]$ ./runInstaller
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 72103 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 95367 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2024-12-07_02-23-31PM. Please wait ...[oracle@rac201 Disk1]$






Choose software location. 

This is OGG HOME /u04/app/ogg/ogg21c_ma --> is OGG_HOME




Click Next 




When it is successfully Installed, you will see the following







Oracle GoldenGate for Microservices is successfully installed now. 

[oracle@rac201 Disk1]$ ./runInstaller
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 72103 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 95367 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2024-12-07_02-23-31PM. Please wait ...[oracle@rac201 Disk1]$ You can find the log of this install session at:
 /u01/app/oracle/oraInventory/logs/installActions2024-12-07_02-23-31PM.log

[oracle@rac201 Disk1]$
[oracle@rac201 Disk1]$
[oracle@rac201 Disk1]$ cat /u01/app/oracle/oraInventory/logs/installActions2024-12-07_02-23-31PM.log
Using paramFile: /u04/gg_software/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/install/oraparam.ini


Checking Temp space: must be greater than 120 MB.   Actual 72103 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 95367 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed

The commandline for bootstrap:
/tmp/OraInstall2024-12-07_02-23-31PM/jdk//bin/java -d64 -mx150m -jar /u04/gg_software/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/install/..//stage/bootstrap/bootstrap.jar ../stage/Components/oracle.jdk/1.8.0.291.09/1/DataFiles /tmp/OraInstall2024-12-07_02-23-31PM

Using the umask value '022' available from oraparam.ini
INFO: Oracle Universal Installer Version 11.2.0.3.0

Execvp of the child jre : the cmdline is /tmp/OraInstall2024-12-07_02-23-31PM/jdk/jre/bin/java, and the argv is
/tmp/OraInstall2024-12-07_02-23-31PM/jdk/jre/bin/java
-Doracle.installer.library_loc=/tmp/OraInstall2024-12-07_02-23-31PM/oui/lib/linux64
-Doracle.installer.oui_loc=/tmp/OraInstall2024-12-07_02-23-31PM/oui
-Doracle.installer.bootstrap=TRUE
-Doracle.installer.startup_location=/u04/gg_software/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/install
-Doracle.installer.jre_loc=/tmp/OraInstall2024-12-07_02-23-31PM/jdk/jre
-Doracle.installer.nlsEnabled="TRUE"
-Doracle.installer.prereqConfigLoc=
-Doracle.installer.unixVersion=4.18.0-477.10.1.el8_8.x86_64
-d64
-mx150m


If you want to see the logs for the installation, you can get it from below location,

[oracle@rac201 ogg21c_ma]$ pwd
/u04/app/ogg/ogg21c_ma
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$ ls -lrt
total 56
-rw-r-----.  1 oracle oinstall   63 Sep  1 13:16 oraInst.loc
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 diagnostics
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 srvm
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 deinstall
drwxr-xr-x.  8 oracle oinstall 4096 Dec  7 14:30 lib
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 jlib
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 include
drwxr-xr-x.  7 oracle oinstall 4096 Dec  7 14:30 jdk
drwxr-xr-x. 13 oracle oinstall 4096 Dec  7 14:30 OPatch
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 bin
drwxr-xr-x.  8 oracle oinstall 4096 Dec  7 14:30 oui
drwxr-x---. 13 oracle oinstall 4096 Dec  7 14:30 inventory
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 install
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:32 cfgtoollogs


Files under the bin directory,
[oracle@rac201 ogg21c_ma]$ cd bin
[oracle@rac201 bin]$ ls -lrt
total 113596
-rwxrwxr-x. 1 oracle oinstall     6809 Oct 18  2018 XAGTask
-rwxr-x---. 1 oracle oinstall    10362 Dec 16  2020 oggca.sh
-rwxrwxr-x. 1 oracle oinstall     4369 Jul 28  2021 orapki
-rwxrwx---. 1 oracle oinstall 12413968 Jul 29  2021 distsrvr
-rwxrwxr-x. 1 oracle oinstall  8483888 Jul 29  2021 ServiceManager
-rwxrwxr-x. 1 oracle oinstall  1690360 Jul 29  2021 retrace
-rwxrwxr-x. 1 oracle oinstall  1694456 Jul 29  2021 oggerr
-rwxrwxr-x. 1 oracle oinstall  5568576 Jul 29  2021 logdump
-rwxrwxr-x. 1 oracle oinstall  1645280 Jul 29  2021 cachefiledump
-rwxrwxr-x. 1 oracle oinstall 11692320 Jul 29  2021 adminsrvr
-rwxrwxr-x. 1 oracle oinstall  5111424 Jul 29  2021 adminclient
-rwxrwx---. 1 oracle oinstall 11236912 Jul 29  2021 replicat
-rwxrwxr-x. 1 oracle oinstall  8977080 Jul 29  2021 pmsrvr
-rwxrwxr-x. 1 oracle oinstall  5676840 Jul 29  2021 defgen
-rwxrwxr-x. 1 oracle oinstall  1903992 Jul 29  2021 convchk
-rwxrwxr-x. 1 oracle oinstall  5013192 Jul 29  2021 ggcmd
-rwxrwx---. 1 oracle oinstall 11182752 Jul 29  2021 extract
-rwxrwxr-x. 1 oracle oinstall  4976136 Jul 29  2021 emsclnt
-rwxrwxr-x. 1 oracle oinstall  3075192 Jul 29  2021 convprm
-rwxrwxr-x. 1 oracle oinstall  2325248 Jul 29  2021 checkprm
-rwxrwxr-x. 1 oracle oinstall  3185008 Jul 29  2021 certstore
-rwxrwx---. 1 oracle oinstall 10299008 Jul 29  2021 recvsrvr
-rwxrwxr-x. 1 oracle oinstall   112920 Jul 29  2021 keygen


Part 2:-

 —————————–—————————–—————————–

Deploying OGG Microservices

—————————–—————————–—————————–

Setting the Environment Variables

export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle/oracle_base
export ORACLE_HOME=/u01/app/oracle/product/19.3/db_home
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export TNSADMIN=$ORACLE_HOME/network/admin
export OGG_HOME=/u04/app/ogg/ogg21c_ma



Under the bin directory, we need to run the oggca.sh which takes us to the Deployment screen.

[oracle@rac201 ~]$ cd $OGG_HOME
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$ pwd
/u04/app/ogg/ogg21c_ma
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$ ls -lrt
total 56
-rw-r-----.  1 oracle oinstall   63 Sep  1 13:16 oraInst.loc
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 diagnostics
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 srvm
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 deinstall
drwxr-xr-x.  8 oracle oinstall 4096 Dec  7 14:30 lib
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 jlib
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 include
drwxr-xr-x.  7 oracle oinstall 4096 Dec  7 14:30 jdk
drwxr-xr-x. 13 oracle oinstall 4096 Dec  7 14:30 OPatch
drwxr-xr-x.  2 oracle oinstall 4096 Dec  7 14:30 bin
drwxr-xr-x.  8 oracle oinstall 4096 Dec  7 14:30 oui
drwxr-x---. 13 oracle oinstall 4096 Dec  7 14:30 inventory
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:30 install
drwxr-xr-x.  3 oracle oinstall 4096 Dec  7 14:32 cfgtoollogs
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$
[oracle@rac201 ogg21c_ma]$ cd bin
[oracle@rac201 bin]$
[oracle@rac201 bin]$ ls -lrt
total 113596
-rwxrwxr-x. 1 oracle oinstall     6809 Oct 18  2018 XAGTask
-rwxr-x---. 1 oracle oinstall    10362 Dec 16  2020 oggca.sh
-rwxrwxr-x. 1 oracle oinstall     4369 Jul 28  2021 orapki
-rwxrwx---. 1 oracle oinstall 12413968 Jul 29  2021 distsrvr
-rwxrwxr-x. 1 oracle oinstall  8483888 Jul 29  2021 ServiceManager
-rwxrwxr-x. 1 oracle oinstall  1690360 Jul 29  2021 retrace
-rwxrwxr-x. 1 oracle oinstall  1694456 Jul 29  2021 oggerr
-rwxrwxr-x. 1 oracle oinstall  5568576 Jul 29  2021 logdump
-rwxrwxr-x. 1 oracle oinstall  1645280 Jul 29  2021 cachefiledump
-rwxrwxr-x. 1 oracle oinstall 11692320 Jul 29  2021 adminsrvr
-rwxrwxr-x. 1 oracle oinstall  5111424 Jul 29  2021 adminclient
-rwxrwx---. 1 oracle oinstall 11236912 Jul 29  2021 replicat
-rwxrwxr-x. 1 oracle oinstall  8977080 Jul 29  2021 pmsrvr
-rwxrwxr-x. 1 oracle oinstall  5676840 Jul 29  2021 defgen
-rwxrwxr-x. 1 oracle oinstall  1903992 Jul 29  2021 convchk
-rwxrwxr-x. 1 oracle oinstall  5013192 Jul 29  2021 ggcmd
-rwxrwx---. 1 oracle oinstall 11182752 Jul 29  2021 extract
-rwxrwxr-x. 1 oracle oinstall  4976136 Jul 29  2021 emsclnt
-rwxrwxr-x. 1 oracle oinstall  3075192 Jul 29  2021 convprm
-rwxrwxr-x. 1 oracle oinstall  2325248 Jul 29  2021 checkprm
-rwxrwxr-x. 1 oracle oinstall  3185008 Jul 29  2021 certstore
-rwxrwx---. 1 oracle oinstall 10299008 Jul 29  2021 recvsrvr
-rwxrwxr-x. 1 oracle oinstall   112920 Jul 29  2021 keygen
[oracle@rac201 bin]$
[oracle@rac201 bin]$
[oracle@rac201 bin]$ ./oggca.sh


Configure Service Manager. 

The location of Service Manager is /u04/app/ogg/ogg21c_sm

If you want to register as a service check the box Register Service Manager as a system service/daemon







Click on Add new deployment




Give a name to deployment and software home will be OGG HOME.



In this screen, Provide the Deployment Home. 

In our case it is /u04/app/ogg/ogg21c_deploy



Set the environment variables if not already set.







By default, SSL is enabled. 

This is to create a secured deployment. 

Uncheck the boxes to create unsecured deployment. 

But, if you are going to replicat data from this unsecured deployment to a secured deployment, then you need to check the second check box. 

All three cases are shown below, you can select it accordingly.




As we are going with Unsecured deployment, we have unchecked all.






Choose the administration server port. 

If you click on Distribution port, the rest will be automatically set.

also click on Enable Monitoring




Provide Schema name to add it in the GLOBALS file.





Save the response file, if required. 

Review the summary once before clicking the finish button.





Once you click on the finish button, the deployment creation starts and at the end, it will ask us to run the servicemanager.sh script as root.




[root@rac201 ~]#
[root@rac201 ~]# /u04/app/ogg/ogg21c_sm/bin/registerServiceManager.sh
Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
----------------------------------------------------
     Oracle GoldenGate Install As Service Script
----------------------------------------------------
OGG_HOME=/u04/app/ogg/ogg21c_ma
OGG_CONF_HOME=/u04/app/ogg/ogg21c_sm/etc/conf
OGG_VAR_HOME=/u04/app/ogg/ogg21c_sm/var
OGG_USER=oracle
Running OracleGoldenGateInstall.sh...
Created symlink /etc/systemd/system/multi-user.target.wants/OracleGoldenGate.service → /etc/systemd/system/OracleGoldenGate.service.


The configuration of Deployment is completed.





As we have registered the Service Manager as daemon, it will be started automatically. 

Check if it is running,

[root@rac201 ~]#
[root@rac201 ~]# ps -ef | grep ServiceManager
oracle      6935       1  0 18:05 ?        00:00:00 /u04/app/ogg/ogg21c_ma/bin/ServiceManager --inventory '/u04/app/ogg/ogg21c_sm/etc/conf'
root        7160    2976  0 18:08 pts/0    00:00:00 grep --color=auto ServiceManager
[root@rac201 ~]#
[root@rac201 ~]#
[root@rac201 ~]#



Check if other services are running.

oracle@rac201 ~]$ ps -ef | grep /u04/app/ogg/ogg21c_ma
oracle      6720       1  0 18:02 ?        00:00:01 /u04/app/ogg/ogg21c_ma/bin/adminsrvr --config /u04/app/ogg/ogg21c_sm/var/temp/Deployment1-adminsrvr-config.dat --force --quiet
oracle      6722       1  0 18:02 ?        00:00:00 /u04/app/ogg/ogg21c_ma/bin/distsrvr --config /u04/app/ogg/ogg21c_sm/var/temp/Deployment1-distsrvr-config.dat --force --quiet
oracle      6724       1  0 18:02 ?        00:00:01 /u04/app/ogg/ogg21c_ma/bin/recvsrvr --config /u04/app/ogg/ogg21c_sm/var/temp/Deployment1-recvsrvr-config.dat --force --quiet
oracle      6726       1  1 18:02 ?        00:00:06 /u04/app/ogg/ogg21c_ma/bin/pmsrvr --config /u04/app/ogg/ogg21c_sm/var/temp/Deployment1-pmsrvr-config.dat --force --quiet
oracle      6935       1  0 18:05 ?        00:00:00 /u04/app/ogg/ogg21c_ma/bin/ServiceManager --inventory '/u04/app/ogg/ogg21c_sm/etc/conf'
oracle      7189    3024  0 18:10 pts/1    00:00:00 grep --color=auto /u04/app/ogg/ogg21c_ma



Login to the Service Manager GUI. 

URL :- rac201.priyadba.com:7802/?root=account

          192.168.0.201:7802/?root=account

Provide the username and password.




Once you login to the Service Manager, you can see the other services running. 

Here Service Manager is just a watch dog.






Administration Service is where we can create Extract and Replicat processes. 

Login to the Administration server:-

url :- 192.168.0.201:7001/?root=account







Distribution Service is where we configure the data push. 

Where the data needs to be replicated? To which Target.



Receiver Service – Configuration for receiving the data from Distribution Service.

Performance Metric Service is a real time monitoring of all OGG processes configured.




Happy Learning ðŸ™‚






No comments:

Post a Comment

How to recovery PDB when PDB database is dropped in Oracle

  How to recovery PDB when PDB database is dropped :) [oracle@rac01 ~]$ sqlplus '/as sysdba' SQL*Plus: Release 21.0.0.0.0 - Product...