Oracle GoldenGate 21c Microservices Architecture with Oracle Real Application Clusters Configuration

How to install and configure Oracle Goldengate 21c Microservices on an Oracle 12c RAC environment. 

Environmental details:

Hosts: dbsrv01, dbsrv02

Clusterware and database version :12.1.0.2.0

GoldenGate version: 21.3.0.0.0

XAG Agent: 10.2

Applied Patches: 30070257


 1. Setup ACFS File System for storing GoldenGate deployment files on Oracle RAC.

Create the ACFS volume from the existing DATA disk group:

[root@dbsrv01 ~]# su - grid

Last login: Fri Aug 16 14:00:21 IST 2024 from gateway on pts/0

[grid@dbsrv01 ~]$ echo $ORACLE_SID

+ASM1

[grid@dbsrv01 ~]$ asmcmd volcreate -G DATA -s 8G OGGVOL

Verify the volume was created and obtain the new volume device name:

[grid@dbsrv01 ~]$ asmcmd volinfo --all

Diskgroup Name: DATA

         Volume Name: OGGVOL

         Volume Device: /dev/asm/oggvol-329

         State: ENABLED

         Size (MB): 8192

         Resize Unit (MB): 512

         Redundancy: UNPROT

         Stripe Columns: 8

         Stripe Width (K): 1024

         Usage:

         Mountpath:

 

[grid@dbsrv01 ~]$ /u01/app/12.1.0/grid/bin/crsctl stat res -w "TYPE = ora.volume.type"

NAME=ora.DATA.OGGVOL.advm

TYPE=ora.volume.type

TARGET=ONLINE           , ONLINE

STATE=ONLINE on dbsrv01, ONLINE on dbsrv02

 From the first node, create the ACFS filesystem on the new volume device ("/dev/asm/oggvol-329") as "root" user:

[root@dbsrv01 ~]# /sbin/mkfs -t acfs /dev/asm/oggvol-329

mkfs.acfs: version                   = 12.1.0.2.0

mkfs.acfs: on-disk version           = 39.0

mkfs.acfs: volume                    = /dev/asm/oggvol-329

mkfs.acfs: volume size               = 8589934592  (   8.00 GB )

mkfs.acfs: Format complete.

 Register the ACFS filesystem & new volume with the CRS as "root" user.

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/srvctl add filesystem -d /dev/asm/oggvol-329 -g 'DATA' -v OGGVOL -m /ogg -u oracle

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/crsctl stat res -w "TYPE = ora.acfs.type"

NAME=ora.data.oggvol.acfs

TYPE=ora.acfs.type

TARGET=OFFLINE, OFFLINE

STATE=OFFLINE, OFFLINE

 Start the new ACFS CRS resource (as root user):

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/srvctl start filesystem -d /dev/asm/oggvol-329

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/crsctl stat res -w "TYPE = ora.acfs.type"

NAME=ora.data.oggvol.acfs

TYPE=ora.acfs.type

TARGET=ONLINE           , ONLINE

STATE=ONLINE on dbsrv01, ONLINE on dbsrv02

 

[root@dbsrv01 ~]# df -h /ogg

Filesystem           Size  Used Avail Use% Mounted on

/dev/asm/oggvol-329  8.0G   93M  8.0G   2% /ogg

 

[root@dbsrv02 ~]# df -h /ogg

Filesystem           Size  Used Avail Use% Mounted on

/dev/asm/oggvol-329  8.0G   93M  8.0G   2% /ogg

 Set the desired new ownership and permissions as root user.

[root@dbsrv01 ~]# chown oracle:oinstall /ogg

[root@dbsrv01 ~]# chmod 775 /ogg

 

2. Install Oracle GoldenGate 21ma software locally on all nodes in the Oracle RAC configuration to provide minimized downtime during software patching.

Unzip the folder that contains the Oracle GoldenGate installation program.

[oracle@dbsrv01 ~]$ cd /tmp

[oracle@dbsrv01 tmp]$ unzip -qa 213000_fbo_ggs_Linux_x64_Oracle_services_shiphome.zip

Prepare the response File with below parameter values.

[oracle@dbsrv01 ~]$ vi /tmp/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/response/oggcore.rsp

INSTALL_OPTION=ora21c

SOFTWARE_LOCATION=/u01/app/oracle/product/ogg21ma

INVENTORY_LOCATION=/u01/app/oraInventory

UNIX_GROUP_NAME=oinstall

Perform a silent installation using the response file.

[oracle@dbsrv01 ~]$ /tmp/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/runInstaller -silent -showProgress -responseFile /tmp/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/response/oggcore.rsp

Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 6438 MB    Passed

Checking swap space: must be greater than 150 MB.   Actual 8183 MB    Passed

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2024-08-19_08-37-52AM. Please wait ...[oracle@dbsrv01 ~]$ You can find the log of this install session at:

 /u01/app/oraInventory/logs/installActions2024-08-19_08-35-31AM.log

Prepare in progress.

..................................................   10% Done.

Prepare successful.

Copy files in progress.

..................................................   53% Done.

..................................................   64% Done.

..................................................   75% Done.

..................................................   80% Done.

..................................................   91% Done.

Copy files successful.

Link binaries in progress.

Link binaries successful.

Setup files in progress.

..................................................   95% Done.

..................................................   96% Done.

..................................................   97% Done.

..................................................   99% Done.

Setup files successful.

Setup Inventory in progress.

Setup Inventory successful.

..................................................   95% Done.

Successfully Setup Software.

..................................................   100% Done.

Finish Setup successful.

The installation of Oracle GoldenGate Services was successful.

Please check '/u01/app/oraInventory/logs/silentInstall2024-08-19_08-35-31AM.log' for more details.

 

3. Create an Oracle GoldenGate Deployment using oggca as "oracle" user.

Service Manager Deployment Home and Deployment home directory must be on the ACFS file system.

Specify localhost as the Listening hostname/address field. Using localhost allows the deployment to be started on all of the RAC nodes without the need for a Virtual IP address (VIP). 

Below is the screenshots of the recommended configuration.

[oracle@dbsrv01 ~]$ /u01/app/oracle/product/ogg21ma/bin/oggca.sh


















 

















4. Install the Oracle Grid Infrastructure Standalone Agent(XAG) to manage GoldenGate from  Oracle Clusterware as "grid" user.

The XAG software must be installed in the same directory on all RAC nodes that is outside of the Oracle Grid Infrastructure home directory to avoid conflicts with software patching.

[root@dbsrv01 ~]# mkdir -p /u01/app/xag

[root@dbsrv01 ~]# chown grid:oinstall /u01/app/xag

[root@dbsrv01 ~]# chmod 775 /u01/app/xag

 

[root@dbsrv02 ~]# mkdir -p /u01/app/xag

[root@dbsrv02 ~]# chown grid:oinstall /u01/app/xag

[root@dbsrv02 ~]# chmod 775 /u01/app/xag

Unzip the folder that contains the XAG Agent.

[grid@dbsrv01 ~]$ cd /tmp

[grid@dbsrv01 tmp]$ unzip -qa p31215432_190000_Generic.zip

 Install the XAG standalone agent.

[grid@dbsrv01 ~]$ /tmp/xag/xagsetup.sh --install --directory /u01/app/xag --all_nodes

Installing Oracle Grid Infrastructure Agents on: dbsrv01

Installing Oracle Grid Infrastructure Agents on: dbsrv02

Updating XAG resources.

Successfully updated XAG resources.


5. Prepare for Application Virtual IP Address (VIP) Creation.

 A dedicated application VIP is required to allow access to the GoldenGate Microservices using the same host name, regardless of which Oracle RAC node is hosting the services. An application VIP also ensures that the GoldenGate Distribution Server can communicate with the Distribution Receiver running the current Oracle RAC node.

 [root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/appvipcfg create -network=1 -ip=192.168.56.90 -vipname=oggma_vip -user=root

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/crsctl setperm resource oggma_vip -u user:oracle:r-x

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/crsctl start resource oggma_vip

CRS-2672: Attempting to start 'oggma_vip' on 'dbsrv01'

CRS-2676: Start of 'oggma_vip' on 'dbsrv01' succeeded

[root@dbsrv01 ~]# /u01/app/12.1.0/grid/bin/crsctl status resource oggma_vip

NAME=oggma_vip

TYPE=app.appvipx.type

TARGET=ONLINE

STATE=ONLINE on dbsrv01


6. Create an application service as "oracle" user.

  An application service is required so that the Oracle Grid Infrastructure Agent will automatically start the Oracle GoldenGate deployment when the database is opened. 

 [oracle@dbsrv01 ~]$ srvctl add service -db rac -service oggmaserv -role PRIMARY -preferred rac1 -available rac2

[oracle@dbsrv01 ~]$ srvctl start service -service oggmaserv -db rac

[oracle@dbsrv01 ~]$ srvctl status service -service oggmaserv -db rac

Service oggmaserv is running on instance(s) rac1

 

7. Configure Oracle Grid Infrastructure Agent (XAG) as "root" user.

 Oracle GoldenGate must be registered with XAG so that the deployment is started and stopped automatically when the database is started and the file system is mounted.

To register Oracle GoldenGate Microservices Architecture with XAG use the following command format.

[root@dbsrv01 ~]# /u01/app/xag/bin/agctl add goldengate oggms_ha --gg_home /u01/app/oracle/product/ogg21ma --service_manager --config_home /ogg/ogg21ma_sm/etc/conf --var_home /ogg/ogg21ma_sm/var --vip_name oggma_vip --port 9100  --adminuser oggadmin --user oracle --group oinstall --filesystems ora.data.oggvol.acfs --db_services ora.rac.oggmaserv.svc --use_local_services

Enter password for 'oggadmin' :

[root@dbsrv01 ~]# /u01/app/xag/bin/agctl start goldengate oggms_ha

[root@dbsrv01 ~]# /u01/app/xag/bin/agctl status goldengate oggms_ha

Goldengate  instance 'oggms_ha' is running on dbsrv01

 To manually relocate the Oracle GoldenGate deployment to another node:

[root@dbsrv01 ~]# /u01/app/xag/bin/agctl relocate goldengate oggms_ha --node dbsrv02

[root@dbsrv01 ~]# /u01/app/xag/bin/agctl status goldengate oggms_ha

Goldengate  instance 'oggms_ha' is running on dbsrv02

Connect service manager through the Application VIP.

http://192.168.56.90:9100




Comments

  1. Excellent step by step to configure golden gate microservices 21c on RAC with acfs

    ReplyDelete

Post a Comment

Popular posts from this blog

Step-by-Step Guide to Configure Oracle GoldenGate Plug-in for Enterprise Manager 13cR5

Step-by-Step Guide to Configure Oracle GoldenGate Veridata 23c

How to Reposition Extract, Data Pump and Replicat in GoldenGate During Trail File Corruption