IBM和SUN平台的差异性分析.docx
《IBM和SUN平台的差异性分析.docx》由会员分享,可在线阅读,更多相关《IBM和SUN平台的差异性分析.docx(46页珍藏版)》请在冰豆网上搜索。
IBM和SUN平台的差异性分析
目录
第1章概述1-1
第2章双机软件分析2-1
2.1双机软件简介2-1
2.1.1IBM平台双机软件HACMP2-1
2.1.2SUN平台双机软件suncluster2.22-3
2.1.3SUN平台双机软件suncluster3.02-4
2.2双机应用的配置比较2-6
2.2.1IBMHACMP2-6
2.2.2SUNcluster2.22-8
2.2.3SUNcluster3.02-8
2.3双机应用的维护比较2-10
2.4Cluster状态检查2-14
2.4.1IBM平台2-14
2.4.2Suncluster2.2平台2-15
2.4.3Suncluster3.0平台2-18
第3章磁盘和文件系统操作3-21
3.1IBM对磁盘和文件系统的管理方法介绍3-21
3.1.1逻辑卷管理3-21
3.1.2创建逻辑卷3-22
3.1.3创建文件系统3-23
3.1.4管理调页空间(PagingSpace)3-25
3.2常用维护命令介绍3-26
第4章告警处理4-30
4.1IBM平台告警介绍4-30
4.1.1操作系统层4-31
4.1.2HACMP层4-32
4.1.3Crontab层4-33
4.1.4三类告警的整合4-33
4.2SUN平台告警介绍4-33
4.32G中告警的发送4-34
第5章常见问题处理5-34
5.1问题一5-34
5.2问题二5-35
5.3问题三5-35
5.4问题四5-36
5.5问题五5-36
5.6信息日志的收集5-43
附录5-44
IBM常用命令集5-44
第1章概述
目前,在HLR中既使用了IBM平台,又使用了SUN平台,这两个平台之间存在着较大区别,本文档从双机软件、磁盘和文件系统操作、告警处理、常见问题处理四个方面对这两个平台进行差异性分析,目的在于提高HLR维护人员对两个平台的认识;
第2章双机软件分析
2.1双机软件简介
IBM平台和SUN平台有着各自的双机软件,IBM的双机软件为HACMP,SUN平台的双机软件为suncluster,主要有2.2和3.0版本,下面对各个双机软件进行简要介绍;
2.1.1IBM平台双机软件HACMP
HACMP是IBM双机的高可用性管理软件,通过"心跳"协议来监控处理器和网络接口,心跳信号通过TCPIP(公网)以及RS232(私网)同时传送;目前HLR使用的版本为HACMP/ES4.4.1(增强版本);在HACMP中,cluster的配置过程如下【只在一台主机上操作】:
1、定义Cluster拓扑结构(ClusterTopology)
2、同步群组中各节点上的拓扑定义
3、定义ApplicationServer,用于启停oracle、HLR应用
4、定义ApplicationMonitor,和ApplicationServer关联,对ApplicationServer进行监控
5、定义资源组,和ApplicationServer关联,资源组中还需定义与之关联的磁盘组;
6、同步资源组
HACMP通过对资源组的管理来实现对应用的管理,cluster在启动时,就会激活资源组,主机在激活资源组的过程中,首先绑定服务ip,然后挂接阵列,调用ApplicationServer的start方法启动应用;应用启动完毕,clstrmgr调用run_clappmond,从而唤醒clappmond,clappmond调用用户自定义的方法(monitor.sh)来监测应用,clappmond检测到monitor.sh非0退出则退出;clstrmgr检测到clappmond退出,则重起应用或倒换;cluster与应用的稳定运行和ApplicationMonitor配置紧密相关,ApplicationMonitor中存在如下重要概念:
Applicationservername:
也就是Applicationmonitor的名字.
StabilizationInterval:
从应用重起到开始监测的时间间隔.
RestartCount:
应用发生异常后,重起应用的次数.
RestartInterval:
把app_mon的定时器定期清0的时间间隔.
ActiononApplicationFailure:
fallover(倒换)/notify
MonitorMethod:
监测应用的脚本(monitor.sh)
MonitorInterval:
对应用进行监测的时间间隔.
HungMonitorSignal:
监控脚本挂起时发送的信号.
RestartMethod:
应用异常时,重起应用的脚本.
CleanupMethod:
应用异常后,首先执行进行清理,再重起
在配置ApplicationMonitor,需要对上述参数进行正确设置;参数的图解如下所示:
事件处理流是HACMP的重要特性,HACMP的任何活动都是以事件流的方式进行的,如:
节点启动(node_up事件和node_up_complete事件),同时会引发其他相应的事件(如果是第一个节点的话,还有start_server,acquire_service_addr等),所有的事件都定义在:
/usr/es/sbin/cluster/events,每个事件对应一个脚本;主要的事件有:
1.node_up节点加入cluster
2.node_down节点离开cluster
work_up网络(ether,rs)恢复
work_down网络故障
5.swap_adapter主备网卡倒换
6.fail_standby备用网卡失效
7.join_standby备用网卡恢复
8.get_disk_vg_fs获得阵列控制权
当事件发生后,HACMP根据事件定义的处理方法进行处理;
2.1.2SUN平台双机软件suncluster2.2
在SUN平台下,HLR使用了双机软件suncluster的两个版本,2.2和3.0;在cluster2.2中,cluster配置过程主要为:
1、定义磁盘管理工具(SDS/VolumeManager,如果使VolumeManager,在公网配置后,需要配置quorumdevice)
2、定义cluster的名字
3、定义cluster的组成节点
4、定义节点的私网口
5、定义节点的公网口
6、定义系统的dataserviceHAoracle
7、注册逻辑主机,和磁盘组关联
8、注册dataservice,和逻辑主机进行绑定
SC2.2主要是通过对逻辑主机的管理来实现对应用的管理;主机在激活逻辑主机的过程中,首先挂接阵列,然后绑定服务ip,通过调用dataservice的start_net,fm_start方法激活与该逻辑主机的dataservice,应用启动完毕,oracle通过Haoracle进行监控,HLR的应用通过系统命令pmfadm进行监控;
2.1.3SUN平台双机软件suncluster3.0
SC3.0对双机的监控主要采用通过ResourceGroupManager(RGM)管理资源组的方式来监控系统运转是否正常;RGM作为一个daemon运行在群集中的每一个节点,它们之间互相通信,作为一个整体对群集进行管理;主要实现如下功能:
1、当一个节点出现异常情况时,RGM将自动把该节点管理的资源组移动到该群集中的另外一个节点;
2、当一个资源组中的某一资源出现异常情况时,该资源的监控程序就会通知RGM重起该资源组或者把资源组倒换到另外一个节点;
3、群集的管理者可以通过输入相应的命令,对资源组进行管理;
在一个资源组中,可以包含多个资源(Resource),比如逻辑主机、oracle、hlr应用;这些资源有着自己的资源类型(ResourceTypes);资源组、每一种资源类型和每一个资源都有着自己的属性设置;资源组主要有如下属性:
1、Failback(Boolean):
该资源组的管理方式;当为TRUE时,相当于IBM中资源组的cascading的方式,当为FALSE时,相当于IBM中资源组的rotating的方式,缺省值为FALSE;
2、RG_mode(enum):
资源组的运行模式,有两种设置:
Scalable和Failover;缺省值为Failover;
3、RG_name(string):
资源组的名字;
4、RG_state(enum):
资源组在某一节点的状态(Online:
资源组处于激活状态,Offline:
资源组处于离线状态,Pending_online:
资源组正在激活过程中,Unmanaged:
资源组不处于SC的管理状态,Pending_offline:
资源组正在离线过程中,Error_stop_failed:
资源组正在离线过程中,某个资源的stop方法调用失败后资源组的状态);
资源类型主要有如下属性:
1、Monitor_start(string):
启动该类资源monitor的脚本;
2、Monitor_stop(string):
停止该类资源monitor的脚本;
3、BOOT(string):
节点启动时对于该类资源调用的脚本;
4、START(string):
该类资源online时调用的脚本;
5、STOP(string):
该类资源offline时调用的脚本;
6、RT_basedir(string):
当设置以上脚本为相对路径时,需要设置该属性;
7、Resource_type(string):
资源类型的名字;
资源主要有如下属性:
1、Retry_interval(integer):
这是时间间隔的设置,单位为秒,在该时间段内,如果资源的重起次数超过Retry_count,则发生倒换
2、Retry_count(integer):
在时间间隔Retry_interval内,资源最多可以重起的次数
3、Thorough_probe_interval(integer):
monitor循环检测间隔(秒)
4、Probe_timeout(integer):
monitor检测超时时间(秒)
5、method_timeout(integer):
各种method运行稳定的时间(秒),包括Start_timeout、Stop_timeout等;
6、RESOURCE_DEPENDENCIES:
资源间的依赖关系;例如A资源的RESOURCE_DEPENDENCIES设置为B资源,则说明在ONLINEA资源时首先要求ONLINEB资源;在OFFLINEB资源时首先要求OFFLINEA资源;
7、ON_OFF_SWITCH:
资源激活的开关(ENABLED、DISABLED)
8、MONITORED_SWITCH:
资源monitor的开关(ENABLED、DISABLED)
对于SC3.0,需要深刻理解资源和资源组的关系:
当资源组的RG_state为ONLINE时:
是否启动资源所关联的dataservice取决于资源的ON_OFF_SWITCH属性,当为ENABLED时,启动dataservice,当为DISABLED时,不启动;
当资源组的为OFFLINE时:
不管资源的ON_OFF_SWITCH属性取值情况,都不会启动相应的dataservice;
因此停止dataservice有两种办法:
1、设置资源的ON_OFF_SWITCH属性为DISABLED(我们的stop.sh采取这种办法)
2、设置资源组RG_state为OFFLINE
在cluster3.0中,cluster配置过程主要为:
1、定义cluster的名字
2、定义cluster的组成节点
3、定义节点的私网口
4、定义节点的公网口
5、定义quorumdevice
6、在cluster注册磁盘组
7、配置资源组,主要关联逻辑主机、磁盘组、oracle、HLR应用;
SC3.0通过对资源组的管理来实现对应用的管理,系统在启动时,就会激活资源组,主机在激活资源组的过程中,首先激活服务ip,然后挂接阵列,调用资源oracle、HLR的start方法,启动oracle和HLR应用;应用启动完毕,系统周期性的调用资源的监控脚本对应用的运行情况进行监控,当监控脚本发现异常时,cluster根据资源的配置参数(Retry_count、Retry_interval)进行重起或者倒换;
2.2双机应用的配置比较
2.2.1IBMHACMP
主要是指对ApplicationServer、ApplicationMonitor和资源组的配置;其中ApplicationServer的配置如下:
ServerName:
hlr_AS
StartScript:
/opt/HWhlr/bin/systemstart.sh
StopScript:
/opt/HWhlr/bin/systemstop.sh
其中启动脚本和停止脚本systemstart.sh和systemstop.sh是HACMP用来启停oracle和HLR应用进程的脚本,给维护人员提供的启停orachle和HLR应用进程的脚本为:
HLR_BASE/bin/start.sh和HLR_BASE/bin/start.sh,维护人员在cluster正常的情况下,使用这两个脚本对应用进行维护;
ApplicationMonitor的配置如下:
Applicationservername:
hlr_AS
StabilizationInterval:
100s
RestartCount:
1
RestartInterval:
700s
ActiononApplicationFailure:
fallover(倒换)
NotifyMethod:
none
MonitorMethod:
HLR_BASE/bin/monitor.sh
MonitorInterval:
10s
HungMonitorSignal:
15(SIG_TERM)
RestartMethod:
/opt/HWhlr/bin/systemstart.sh
CleanupMethod:
/opt/HWhlr/bin/systemstop.sh
HLRMaxFailedCount:
20
HLRRestartInterval:
1800s
在hlr_AS被激活以后,HACMP通过hlr_AS的ApplicationMonitor对oracle和HLR应用进程进行监控,监控间隔为10秒,在RestartInterval(700s)内,监控脚本HLR_BASE/bin/monitor.sh第一次以以非0值退出时,HACMP将调用/opt/HWhlr/bin/systemstop.sh停止HLR和oracle,然后调用/opt/HWhlr/bin/systemstart.sh启动oracle和HLR,经过StabilizationInterval(00s)后,每隔10秒周期调用HLR_BASE/bin/monitor.sh对oracle和HLR进行监控;在RestartInterval(700s)内,监控脚本HLR_BASE/bin/monitor.sh第二次以以非0值退出时,系统发生主备机倒换;
注意:
ORACLE发生异常的情况不多,而hdb发生异常的情况较多,两者不可以用同样的方法来处理异常,因此HLR对APP_MON进行了扩展,增加两个概念:
hlrfailedcount---hlr发生异常的次数.
hlrrestartinterval---hlr异常计数器清0的时间间隔
当monitor.sh检测到hlr异常退出时,并不立即以非0退出,而是使hlrfailedcount加一,然后重起hlr应用,以0值退出,直到hlrfailedcount达到一定的次数(hlrmaxfailedcount)后,才使monitor.sh以非0值退出,hlrfailedcount的作用与restartcount类似,hlrrestartinterval的作用与restartinterval类似
资源组的配置如下:
ResourceGroupName:
hlr_rg
NodeRelationship:
rotating
ParticipatingNodeNames:
hwhlr_ph1hwhlr_ph2
ServiceIPlabel:
hwhlr10
VolumeGroups:
datavg
ApplicationServers:
hlr_AS
2.2.2SUNcluster2.2
主要是对逻辑主机的配置:
逻辑主机名为hwhlr10,可以master逻辑主机的节点为hwhlr-ph1、hwhlr-ph2,关联的磁盘组为datadg,节点的公网口都为hme0,绑定的第一个逻辑ip为hwhlr10(129.9.101.193)第二个逻辑ip为hwhlr9(129.10.101.193);采用Haoracle对oracle进行监控;
2.2.3SUNcluster3.0
主要是对资源组和资源的配置:
基本配置如下:
资源组名称(ResourceGroupName):
hlr_rg
成员节点(ParticipatingNodeNames):
hwhlr-ph1hwhlr-ph2
该资源组包含的资源及类型:
1、服务IP(ServiceIPLabel)
Resname:
hwhlr10
Resresourcetype:
SUNW.LogicalHostname
2、卷组(VolumeGroup用于管理datadg):
Resname:
hlrvg
Resresourcetype:
SUNW.HAStoragePlus
3、oracle应用:
Resname:
oracle
Resresourcetype:
HW.hlr
RESOURCE_DEPENDENCIES:
hlrvg(要ONLINE资源oracle必须保证datadg可用)
4、hlr应用:
Resname:
hlr
Resresourcetype:
HW.hlr
5、应用的启动脚本(StartScript):
/op/HWhlr/bin/systemstart.sh
6、应用的停止脚本(StopScript):
/op/HWhlr/bin/systemstop.sh
7、应用的监控脚本(MonitorScript):
${HLR_BASE}/bin/monitor.sh
hlr的monitor,配置如下:
被监控资源(ResourceName):
hlr
监控脚本(MonitorMethod):
${HLR_BASE}/bin/monitor.sh
监控间隔(MonitorInterval):
10s
监控超时时间(ProbeTime):
10s
监控脚本挂起时发送信号(HungMonitorSignal):
SIGKILL
启动超时时间(Start_timeout):
300s
停止超时时间(Stop_timeout):
30s
重启次数(Retry_count):
0
重启次数清零间隔(Retry_interval):
无意义
检测异常后动作(ActiononApplicationFailure):
fallover
对于hlr应用,第一层监控通过pmfadm命令的监控作用去监控,当某个hlr的进程退出时,pmfadm会立即重起该进程,如果在30分钟内重起次数大于50,则pmfadm不在重起该进程;第二层监控通过cluster的监控作用去监控;在监控脚本monitor.sh中,如果发现hlr进程的某个tag不见了,monitor.sh就返回1,cluster就发起倒换;
Oracle的monitor,配置如下:
被监控资源(ResourceName):
oracle
监控脚本(MonitorMethod):
${HLR_BASE}/bin/monitor.sh
监控间隔(Thorough_Probe_Interval):
20s
监控超时时间(Probe_timeout):
60s
监控脚本挂起时发送信号(HungMonitorSignal):
SIGKILL
启动超时时间(Start_timeout):
1800s
停止超时时间(Stop_timeout):
30s
重启次数(Retry_count):
0
重启次数清零间隔(Retry_interval):
无意义
检测异常后动作(ActiononApplicationFailure):
fallover
对于oracle,不再利用系统提供的dataservice对oracle进行管理,通过HLR提供的监控程序和脚本对oracle进行管理,当监控程序发现oracle异常时,和IBM平台不同,不再重新启动oracle,而是立即发起倒换;
2.3双机应用的维护比较
SC2.2
SC3.0
IBM(HACMP)
应用注册
对于oracle,作为一个标准的dataservice注册到SC,hareg-s-roracle;对于hlr应用,hareg-rhlr-mSTART_NET="${HLR_BASE}/bin/startnet.hlr.sh"
-mSTOP_NET="${HLR_BASE}/bin/stopnet.hlr.sh"-mFM_START="${HLR_BASE}/bin/fmstart.hlr.sh"-mFM_STOP="${HLR_BASE}/bin/fmstop.hlr.sh"-mABORT_NET="${HLR_BASE}/bin/abort.hlr.sh-hhwhlr10
SC3.0是通过对资源组的维护来管理我们的应用;把应用作为一个资源加入到资源组中时,需要确定该资源的资源类型;资源类型是一个RTR(resourcetyperegistration)的配置文件,缺省位于/usr/cluster/lib/rgm/rtreg目录,在主备机都存在;在我们方案中,该RTR文件为HW.hlr,在该文件中对该类资源所有的方法和所有的属性都提供了缺省设置;具体到应用,首先注册资源组hlr_rg:
scrgadm-a-ghlr_rg;对于oracle,作为一个资源oracle注册到SC的资源组hlr_rg中,类型为自定义的HW.hlr;
参见前文中:
Applicationserver和ApplicationMonitor的配置
Cluster启动
启动cluster,
主机scadminstartclusterhwhlr-ph1hwhlr;
备机scadminstartnode;
对于oracle,由于作为一个标准的dataservice注册到SC,所以orac