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结尾

脚本会获取 Begin和End之间配置的所有表与需配置的表进行重复值匹配

而增加的表,会插入Insert和End之间(AIX系统对sed版本的限制导致)

6 .进程信息注释

部分查询信息脚本需要通过进程信息注释来准确定位信息。

目前已知EXTRACT,PUMP,REPLICATE三类进程中,将内容分为参数(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文件夹用于存放进程修改类脚本每次操作自动生成的备份文件

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享文章:OGG维护优化脚本(二十二)-部署准备篇--脚本部署准备-创新互联
文章分享:http://pwwzsj.com/article/gjdhe.html