【概要】
OGG 微服務架構(Microservices Architecture)起始于12.3版本,采用各種服務來管理,通過WEB接口來建立程序、啟動程序以及管理底層程序等操作以及具備完善監控功能包括程序、線程等性能資料,以前非微服務架構稱為經典架構(Classic Architecture)。
本文主要介紹OGG 19微服務架構安裝、配置以及簡單資料同步案例示範.
OS Version | Oracle Linux 7.5 X86-64 |
DB Version | Oracle 11.2.0.4 X86-64 |
RAC & ASM | 2個節點的RAC,采用ASM作為資料庫存儲空間 |
注意點OGG、作業系統、資料庫3者的相容性:OGG 19c支援oracle版本包括 11.2.0.4+,12.1 ,12.2 ,18c ,19c(ORACLE 19C需要LINUX 7才能安裝),雖然支援多版本,但是安裝時需要選擇指定資料庫版本而不是安裝後支援所有資料庫版本。如果ORACLE後續更新,OGG必須解除安裝重新安裝對應資料庫版本才能繼續工作,例如在linux 5下安裝OGG 19版本會出現問題(前幾天在linux 5.7安裝出現此GLIBC不相容),是以安裝OGG之前先确認下相容性。
【微服務軟體安裝】
從OGG 12.3開始,傳統架構與微服務架構軟體是獨立下載下傳,其中軟體包名字中包括Microservices字樣就是新架構軟體包.本次安裝環境是19版本。下載下傳位址:https://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html
- 【軟體下載下傳】
選擇帶有關鍵字Microservices的版本下載下傳,對于ORACLE資料庫版本并不是每個版本對應的平台都有微服務,例如19c目前隻支援linux平台,18c支援微服務的平台比較多,但是沒有linux平台,目前12.3版本官方網站無微服務版本可以下載下傳。個人猜測有可能對應版本不穩定或者為了推廣新版本采用下載下傳政策(不一定對的!!!)。
- 【軟體上傳與解壓】
軟體上傳到/dba/soft,且ogg使用者對此目錄有讀寫權限
[[email protected] ~]$ ls -ld /dba/soft/drwxr-xr-x 2 oracle oinstall 4096 Jul 29 00:25 /dba/soft/[[email protected] ~]$ cd /dba/soft/[[email protected] soft]$ ls -lrttotal 741120-rw-r--r-- 1 oracle oinstall 758157974 Jul 29 00:27 191001_fbo_ggs_Linux_x64_services_shiphome.zip[[email protected] soft]$ unzip 191001_fbo_ggs_Linux_x64_services_shiphome.zip
- 【建立微服務目錄】
OGG經典架構需要一個目錄即OGG_HOME,微服務需要3個路徑:
一個是OGG_HOME,軟體安裝路徑與經典架構保持一緻,簡稱MA
一個是服務管理路徑,微服務架構采用服務方式管理,簡稱SM,可以管理多個部署.例如for oracle 11g、oracle 12c等.
一個是部署路徑,微服務采購雲操作方式,所有部署與管理都是通過web其中管理,簡稱DEPLOY.
為了相容多個資料庫版本,目錄命名規則且全部采用小寫建立目錄
OGG_BASE=/u01/app/ogg
OGG_HOME=/u01/app/ogg/dbversion/oggversion_角色,例如
MA=Microservices Architecture HOME,OGG_HOME
SM=SERVICE MANAGER DEPLOYMENT HOME,OGG服務管理HOME
DEPLOY=DEPLOYMENT HOME,主要部署extract,replicat實作資料同步的HOME
是以3個路徑命名如下:
命名規則如下:/dba/app/ogg/db11.2/ogg191_ma/dba/app/ogg/db11.2/ogg191_sm/dba/app/ogg/db11.2/ogg191_deploy具體指令[root使用者操作]mkdir -p /u01/app/ogg/db11.2/ogg191_mamkdir -p /u01/app/ogg/db11.2/ogg191_smmkdir -p /u01/app/ogg/db11.2/ogg191_deploychown oracle:oinstall /u01/app/ogg/db11.2/ogg191_machown oracle:oinstall /u01/app/ogg/db11.2/ogg191_smchown oracle:oinstall /u01/app/ogg/db11.2/ogg191_deploy
- 【解壓ogg 19并進行軟體安裝--使用ogg的所屬使用者oracle】
從ogg 12 for oracle版本開始,ogg采用安裝方式,類似OracleGUI方式安裝或者靜默安裝方式,取消12之前版本直接解壓即可以使用方式,主要是為了将安裝軟體統一管理.如果環境沒有圖形支援,可以使用靜默方式安裝,使用圖形安裝,需要配置。安裝包括軟體安裝以及服務配置以及部署配置,本次使用圖形安裝方式。/u01/soft/fbo_ggs_Linux_x64_services_shiphome/Disk1就是OGG軟體包的路徑,和ORACLE9i版本安裝路徑類似.
WINDOWS下使用xmanager來顯示LUNUX下OGG的GUI,MAC下使用XQuartz來顯示LINUX下OGG的GUI
unzip 191001_fbo_ggs_Linux_x64_services_shiphome.zip cd /u01/soft/fbo_ggs_Linux_x64_services_shiphome/Disk1ls -lrttotal 12drwxr-xr-x. 4 oracle oinstall 4096 May 26 06:28 installdrwxr-xr-x. 12 oracle oinstall 4096 May 26 06:29 stage-rwxr-xr-x. 1 oracle oinstall 918 May 26 06:29 runInstallerdrwxrwxr-x. 2 oracle oinstall 25 May 26 06:29 response[[email protected] Disk1]$ ./runInstallerStarting Oracle Universal Installer...Checking Temp space: must be greater than 120 MB. Actual 6552 MB PassedChecking swap space: must be greater than 150 MB. Actual 8094 MB Passed
4.1 根據資料庫版本選擇需要安裝的版本,支援資料庫版本從11g到19c.本次安裝資料庫版本是11g.
4.2 輸入OGG安裝路徑:/u01/app/ogg/db11.2/ogg191_ma
4.3 核對安裝資訊無誤後點選安裝,
小技巧:可以存在response file作為模闆後續使用靜默安裝
4.4 安裝完成點選close
- 【完成軟體安裝後核對安裝路徑以及安裝軟體】
與Oracle安裝路徑的目錄類似,以前經典架構的跟路徑就相關指令,微服務架構下在bin路徑下
進入bin路徑:extract,replicat,logdump都還有,gggsci不見,取而代之是adminclient.
【配置微服務】
備注:類似先安裝GRID軟體,然後進行配置,之前微服務安裝相當于隻安裝GRID軟體,然後進行服務配置
- 【檢查與配置資料庫和OGG環境】
備注:如果存在多個資料庫版本,需要指定對應資料庫版本的ORACLE_HOME、LD_LIBRARY_PATH、TNS_ADMIN等配置.
--for oracle database 11g envunset ORACLE_HOMEunset LD_LIBRARY_PATHunset TNS_ADMINexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1export LD_LIBRARY_PATH=/u01/app/oracle/product/11.2.0/dbhome_1/libexport TNS_ADMIN=/u01/app/oracle/product/11.2.0/dbhome_1/network/adminexport ORACLE_SID=xiaoxu1export PATH=$ORACLE_HOME/bin:$PATHexport OGG_HOME=/u01/app/ogg/db11.2/ogg191_ma
- 【運作oggca.sh來配置微服務】
oggca.sh在OGG_HOME/bin路徑下.
[[email protected] ~]$ cd $OGG_HOME[orac[email protected] ogg191_ma]$ cd bin[[email protected] bin]$ ./oggca.sh
2.1 選擇新建立服務管理且勾選注冊成系統服務,根據輸入sm路徑/u01/app/ogg/db11.2/ogg191_ma.其中xag與rac結合的一個插件來管理ogg,本次沒有使用,是以沒有勾選
2.2 輸入部署名字,可以自定義:deploy11g(差別資料庫版本),不勾選共享目錄
2.3 輸入部署路徑,配置檔案采用預設路徑
2.4 如果之前沒有配置環境變量,進行設定對應環境變量
2.5 設定管理管理賬号與密碼
備注:本次簡單密碼,取消加強密碼測試.
2.6 不采用SSL方式
2.7 輸入SERVER端口,并開啟監控,其中Distribution是pump process,Receiver Server是Collect Server,隻是換名字了,監控勾選就能實作,so easy,
2.8 Set default schema to add in GLOBALS file ggchema parameter,經典模式都在ggsci指令配置,通過web來配置,好多東西都隐藏了,排查問題可能更加複雜。
2.9 檢視并核對配置後點選Finish開始安裝
2.10 使用root執行如下腳本後點選ok
[[email protected] u01]# /u01/app/ogg/db11.2/ogg191_sm/bin/registerServiceManager.sh Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.---------------------------------------------------- Oracle GoldenGate Install As Service Script ----------------------------------------------------OGG_HOME=/u01/app/ogg/db11.2/ogg191_maOGG_CONF_HOME=/u01/app/ogg/db11.2/ogg191_sm/etc/confOGG_VAR_HOME=/u01/app/ogg/db11.2/ogg191_sm/varOGG_USER=oracleRunning OracleGoldenGateInstall.sh...Created symlink from /etc/systemd/system/multi-user.target.wants/OracleGoldenGate.service to /etc/systemd/system/OracleGoldenGate.service.[[email protected] u01]#
2.11 完成安裝
2.12 驗證Service Manager程序是否啟動
備注:驗證端口、程序以及程序對應服務是否正常
[[email protected] u01]# netstat -anlp |grep 7809 tcp 0 0 0.0.0.0:7809 0.0.0.0:* LISTEN 4888/ServiceManager [[email protected] u01]# ps -ef |grep ServiceManager oracle 4888 1 0 02:42 ? 00:00:01 /u01/app/ogg/db11.2/ogg191_ma/bin/ServiceManager --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/ServiceManager-config.dat --forceroot 9378 15433 0 02:53 pts/1 00:00:00 grep --color=auto ServiceManager[[email protected] u01]# ps -ef |grep /u01/app/ogg/db11.2/ogg191_smoracle 4888 1 0 02:42 ? 00:00:01 /u01/app/ogg/db11.2/ogg191_ma/bin/ServiceManager --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/ServiceManager-config.dat --forceoracle 5052 4888 0 02:42 ? 00:00:01 /u01/app/ogg/db11.2/ogg191_ma/bin/adminsrvr --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/deploy11g-adminsrvr-config.dat --force --quietoracle 5054 4888 0 02:42 ? 00:00:01 /u01/app/ogg/db11.2/ogg191_ma/bin/distsrvr --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/deploy11g-distsrvr-config.dat --force --quietoracle 5056 4888 0 02:42 ? 00:00:02 /u01/app/ogg/db11.2/ogg191_ma/bin/recvsrvr --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/deploy11g-recvsrvr-config.dat --force --quietoracle 5058 4888 1 02:42 ? 00:00:09 /u01/app/ogg/db11.2/ogg191_ma/bin/pmsrvr --config /u01/app/ogg/db11.2/ogg191_sm/var/temp/deploy11g-pmsrvr-config.dat --force --quietroot 9389 15433 0 02:53 pts/1 00:00:00 grep --color=auto /u01/app/ogg/db11.2/ogg191_sm[[email protected] u01]#
【通過WEB檢視微服務】
- 在網址輸入如下位址---http://ip:7809
例如:http://192.168.124.97:7809輸入使用者與密碼
- 檢視部署的詳細資訊以及對應程序資訊.雖然可視化操作簡單,但是排查問題相對麻煩
- Admin server: 用于建立使用者、添加附加日志、建立抽取和投遞程序,類似在ggsci指令下添加附加日志、extract、replicat程序
- Distribution server:用于建立傳輸程序,類似于以前的pump程序
- Receiver server:用于監控接收程序,類似于以前的server collector程序
- Performance metrics server:性能監控,這個裡面資訊非常多,例如ADMINSRVR包括程序性能,線程性能以及程序狀态與配置,非常詳細與直覺。
【總結】至此完成oracle goldengate 19 Microservices安裝、配置,由于篇幅問題,沒有對細節展開,微服務中涉及很多細節問題.由于公衆号有圖檔上傳限制,對于資料同步配置與故障篇在下一個文章輸出。