OGG維護優化腳本(二十二)-部署準備篇--腳本部署準備

很抱歉,腳本部署準備放在後面來講

以下內容必須徹底配置完畢前面講的所有腳本纔會成功生效


1.環境包安裝

因爲腳本通過shell以及perl實現。系統必須支持bshell才能滿足運行環境

部分AIX服務器因爲缺乏bshell需要專門安裝rpm

所以需要安裝以下兩個安裝包

gettext-0.17-8.aix6.1.ppc.rpm

bash-4.2-9.aix6.1.ppc.rpm 

而上傳腳本是通過expect來實現交互式訪問功能,因此部分linux和aix服務器

必須安裝上expect的軟件包。



2.調整OGG運維賬戶環境

Aix系統中部分賬戶默認調用ksh而非bsh 必須調整/etc/passwd文件以讓其調用bshell

例 

/etc/passwd

ggs2:!:507:301::/oracle/test1/ggs2:/usr/bin/bash
ggs1:!:204:301::/oracle/test1/ggs1:/usr/bin/bash

修改末尾值爲 /user/bin/bash


3.修改系統配置文件 profile

因爲部分腳本指令是通過alias別名調用,所以需要修改OGG系統賬戶的.profile文件或者.bash_profile文件

增加以下指令

alias edit='/bin/bash$HOME/ggscript/ggedit'
#調用選擇腳本 ggedit
alias view='cd$HOME/ggserver&&(echo info all;echo exit)|./ggsci|grep -E"EXTRACT|MANAGER|REPLICAT"&&cd $HOME'
#通過view指令獲取所有進程狀態
alias add='/bin/bash$HOME/ggscript/ggadd/add.sh'
#通過add指令執行快速加表腳本
alias pcsinfo='/bin/bash $HOME/ggscript/ggupload/processinfo.sh'
#通過pcsinfo指令調用詳細進程信息查詢腳本
alias repeat='/bin/bash$HOME/ggscript/ggrepeat/repeat.sh'
#通過repeat指令調用重複表查詢腳本
alias area='/bin/bash$HOME/ggscript/ggarea/area.sh'
#通過area指令獲取 區域查詢腳本
alias note='/bin/bash$HOME/ggscript/ggnote/note.sh'
#通過note指令調用快速註釋腳本
alias start='/bin/bash$HOME/ggscript/ggoperat/start.sh'
#通過start指令調用進程開啓腳本
alias stop='/bin/bash$HOME/ggscript/ggoperat/stop.sh'
#通過stop指令調用進程停止腳本
alias info='/bin/bash$HOME/ggscript/ggoperat/info.sh'
#通過info指令調用進程狀態查看腳本


4.進程命名以及部署規範

所有EXTRACT進程,必須以E開頭

所有的發送進程,必須以P開頭命名

所有的寫入replicat進程,必須以R開頭命名

便於腳本通過開頭字符區分進程種類


所有機器的OGG程序必須部署於 $HOME/ggserver 路徑下

腳本必須放置在$home/ggscript路徑下


5.區域信息註釋規範

因爲OGG的所有進程配置文件都是存在 dirprm中,實際上我所編寫的腳本,是對prm文件之直接操作

根據我實際的OGG數據同步配置情況,我們在進程中已經配置的表

是通過地市或者省份來進行分類區分,的以便於今後的維護分類


因此爲了讓 批量加表等腳本能夠準確定位到表名,必須對所有prm表名進行註釋



註釋範例

--HeBei-Begin

TABLE FMTMP.MANTMP;

TABLE FMTMP.ADDRTMP_ALL;

TABLE FMTMP.TMP;

…………

…………

TABLE FMTMP.TMPPORT;

--HeBei-Insert

--HeBei-End

在每個區域類表前,以區域拼音(開頭大寫)-Begin開頭

在結尾分別以同樣的區域拼音-Insert和地市區域拼音(開頭大寫)-End結尾

腳本會獲取 BeginEnd之間配置的所有表與需配置的表進行重複值匹配


而增加的表,會插入InsertEnd之間(AIX系統對sed版本的限制導致)


6 .進程信息註釋

部分查詢信息腳本需要通過進程信息註釋來準確定位信息。

 

目前已知EXTRACT,PUMPREPLICATE三類進程中,將內容分爲參數(PARAMETER)和表(TABLE兩部分

註釋配置,需要增加info類,用於標註該進程的相關信息

同時將參數和表內容用註釋區分,便於今後其他腳本對信息資源的查詢彙總,以及批量修改

註釋配置規則

EXTRACT進程

 

EXTRACT XXXX

--[INFO#]

--source: --源端HOSTNAME

--sourceIP: 源端IP

--[#INFO]

 

--[PARAMETER#]

USERID ggs@…………

…………

--[#PARAMETER]

 

--[TABLE#]

TABLE XX.XXXXXX;

TABLE XX.XXXXXX;

--[#TABLE]

 

投遞進程

EXTRACT XXXX

--[INFO#]

--source:源端主機名

--sourceIP:源端IP

--target:目標端主機名

--targetIP:目標端IP

--defsfile: dirdef下的定義文件

--defprm:dirprm下的定義配置文件

--[#INFO]

 

--[PARAMETER#]

RMTHOST…………

…………

--[#PARAMETER]

 

--[TABLE#]

TABLE XX.XXXXXX;

TABLE XX.XXXXXX;

--[#TABLE]

 

REPLIAT進程

REPLICAT XXXXXX

--[INFO#]

--source:源端主機名

--sourceIP:源端IP

--target:目標端主機名

--targetIP:目標端IP

--defsfile: dirdef下的定義文件

--[#INFO]

 

--[PARAMETER#]

USERID ggs@.......

………………

--[#PARAMETER]

 

--[TABLE#]

MAP XXXX.XXXXX, TARGET XXXXX.XXXXX

--[#TABLE]




7.定義文件信息註釋

定義文件自動上傳腳本,需要獲取發送定義文件的目標端IP,以及路徑賬戶等信息,才能正常的自動生成和發送。

而這類信息需要準確配置dirprm內的定義配置文件中

 

配置範例

--[INFO#]

--RELEASE:10.4    GG定義文件版本

--TARGET:defzlzxsz    對應系統信息文件內配置的主機名,該信息需要統一協調

--[#INFO]

 

 

DEFSFILE ./dirdef/xxxxx    所有的定義文件配置路徑必須修改爲./dirdef/xxxxx,同時後端不要加其他參數。

USERID…..

--[TABLE#]

TABLE XXXXX

TABLE XXXXX

--[#TABLE]

 

 

8.計劃任務配置

定義文件自動下發和系統進程信息上傳需要通過計劃任務自動執行

23 * * * * /bin/bash $HOME/ggscript/ggdef/resend.shdefzlzxdg.prm > $HOME/gglog/ggdef/resend.log

該段根據具體定義配置文件名自行修改

30 * * * * /bin/bash$HOME/ggscript/ggupload/pcsinfoupload.sh >$HOME/gglog/ggupload/pcsinfoupload.log

 


9.備份文件夾創建

$HOME/ggserver/dirprm $HOME/ggserver/dirdef下創建bak文件夾用於存放進程修改類腳本每次操作自動生成的備份文件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章