互联网服务hacmp故障排除

HACMP学习之测试和故障排除

HACMP的测试:1、网卡故障:网络 接口故障:用命令 :# ps –ef | grep cluster,确认所有节点上的HACMP已启动。用命令:# errclear 0,清空系统 错误日志。用命令:# tail –f /tmp/hacmp.out,监控HACMP的运行 状态。用命令:# ifconfig en0 down,宕掉Service网卡。用命令:# netstat –in,查...显示全部
HACMP的测试:
1、网卡故障:
网络 接口故障:
用命令 :# ps –ef | grep cluster,确认所有节点上的HACMP已启动。
用命令:# errclear 0,清空系统 错误日志。
用命令:# tail –f /tmp/hacmp.out,监控HACMP的运行 状态。
用命令:# ifconfig en0 down,宕掉Service网卡。
用命令:# netstat –in,查看Standby网卡是否接管了宕掉的Service网卡的IP地址 和MAC地址。
用命令:# ifconfig en1 down,宕掉接管了Service网卡IP地址和MAC地址后的Standby网卡。
用命令:# netstat –in,查看Service网卡是否将IP地址和MAC地址接管回来。
网卡连接电缆故障:
用命令:# ps –ef | grep cluster,确认所有节点上的HACMP已启动。
用命令:# errclear 0,清空系统错误日志。
用命令:# tail –f /tmp/hacmp.out,监控HACMP的运行状态。
断开与Service网卡连接的网线。
用命令:# netstat –in,查看Standby网卡是否接管了Service网卡的IP地址和MAC地址。
重新连接上与原Service网卡连接的网线。
用命令:# netstat –in,查看此时原Service网卡的IP地址和MAC地址是否为原Standby网卡的IP地址和Service地址。
断开与原Standby网卡连接的网线。
用命令:# netstat –in,查看Service网卡的IP地址和MAC地址是否恢复为原来的Service网卡的IP地址和MAC地址。
重新连接上与Standby网卡连接的网线。
用命令:# netstat –in,查看Standby网卡的IP地址和MAC地址是否恢复为原来的Standby网卡的IP地址和MAC地址。
节点故障:
模拟*作系统崩溃:
用命令:# ps –ef | grep cluster,确认所有节点上的HACMP已启动。
用命令:# errclear 0,清空系统错误日志。
用命令:# tail –f /tmp/hacmp.out,监控HACMP的运行状态。
用命令:# cat /etc/hosts > /dev/kmem,模拟*作系统崩溃状态。
用命令:# netstat –in、# lsvg –o、# ps –ef APP_PID,查看备份节点是否接管了故障节点的Service地址、共享卷组和应用 程序 。
重新启动故障节点,并启动HACMP。
用命令:# netstat –in、# lsvg –o、# ps –ef APP_PID,查看该节点是否将原属于他的Service地址、共享卷组和应用程序接管回来了。
模拟CPU故障:
用命令:# ps –ef | grep cluster,确认所有节点上的HACMP已启动。
用命令:# errclear 0,清空系统错误日志。
用命令:# tail –f /tmp/hacmp.out,监控HACMP的运行状态。
直接断开某个节点的电源,模拟CPU故障。
用命令:# netstat –in、# lsvg –o、# ps –ef APP_PID,查看备份节点是否接管了故障节点的Service地址、共享卷组和应用程序。
重新启动故障节点,并启动HACMP。
用命令:# netstat –in、# lsvg –o、# ps –ef APP_PID,查看该节点是否将原属于他的Service地址、共享卷组和应用程序接管回来了。
HACMP常见故障解决 :
1、导致集群中节点失效的无反映开关(Deadman Switch)
问题现象:
集群中的节点经历着极端的性能问题,如:大量的I/O传输、过多的错误记录、内存不足等,导致集群管理 器(clstrmgr)没有得到足够的CPU处理时间 ,而引起无反映开关在分配的时间被重置。某个应用程序运行权限高过集群管理器时,会导致此问题。
解决方法:
术语“Deadman Switch”指的是在特定集群条件下,未能及时重置该开关,引起系统宕机和转储的内核扩展部分。无反映开关在超过了特定的时间限制后会宕掉处于挂起状态的节点。此过程导致集群中的其它节点接管处于挂起状态节点的资源。要解决此问题需要解决与之相关的几个性能问题:
1、调整系统I/O pacing
2、增加信息同步(syncd)的频率
3、增加通信子系统使用的内存量
4、更改错误探测速率
1、调整系统使用I/O的步调:
使用I/O pacing调整系统,使得在大量写*作时,系统资源的分配更合理。为HACMP集群激活I/O Pacing是必要的,尤其是在集群中可能会有大量磁盘数据 块写*作的时侯。
按下述步骤修改I/O Pacing设置 :
# smitty hacmp
Cluster Configuration
Advanced Performance Tuning Parameters
Change/Show I/O Pacing
修改HIGH water mark for pending write I/Os per file域,推荐 值为33,可用值在0-32767之间 。
修改LOW watermark for pending write I/Os per file域,推荐值为24,可用值在0-32767之间。
不同的系统,以上两个值也不同。修改上两个值只能稍微减少写次数,通常能够解决上述问题。
2、增大syncd的运行频率:
增加syncd的运行频率,使缺省60秒运行一次变为30秒、20秒或10秒运行一次。这样可以强迫增加I/O刷新速率,并减少由于沉重的I/O流量触发无反映开关的可能性。
按下述步骤修改syncd运行频率设置:
# smitty hacmp
Cluster Configuration
Advanced Performance Tuning Parameters
Change/Show syncd frequency
修改syncd frequency in seconds域,推荐值为10秒,可用值在0-32767之间。
3、增加通信子系统可用的内存量:
如果运行命令:# netstat –m,发现请求mbuf被拒绝,或运行命令# errpt发现LOW_MBUFS 错误,则应增加网络参数“thewall”的值。Thewall的缺省值为25%的系统实内存。可以将其增加为50%的系统实内存。
按下述步骤修改thewall值的设置:
# vi /etc/rc.net
在此文件 的末尾加入:
no -o thewall= xxxxx
xxxxx是指你希望设置的供通信子系统使用的实内存值。如:,
no -o thewall=10240
4、修改错误探测速率:
如果激活I/O Pacing或增加Syncd运行频率不能解决无反映开关不能重置的问题时,则修改错误探测速率,将其值该为Slow。这样可以延长一个挂起节点调用无反映开关之前,以及接管节点探测到节点故障并获得挂起节点资源之前所需的时间。
注意:
在完成上述步骤之前,I/O Pacing必须先激活。这是因为修改此设置会调整I/O数据的传输量。
八、HACMP 4.4.1及后续版本的改进:
1、首先现要将三个网络地址(Boot、Service、Standby)配置好,并在/etc/hosts文件中,将三个网络地址对应的卡标识编辑好。
2、然后按照:Cluster Topology -> Configure Networks -> Configure IP-Based Network -> Discover Current Network Configuration -> Local Network Configuration的顺序生成本节点上的逻辑接口配置清单。
3、再按照:Cluster Topology -> Configure Networks -> Configure IP-Based Network -> Add a Network的顺序定义IP网络。
4、该菜单中的各域内容如下:
Network Name:用户 指定的网络名字。
Network Attribute:指明该网络的类型:Public(TCPIP、Token-Ring、FDDI、SLIP),
Private(ATM)。
Network Type:指明该网络的网络类型(TCPIP、Token-Ring)。
Subnets:按F4从列表中选取Boot和Standby卡对应的子网。
5、网络配置完毕后,按照:Cluster Topology -> Configure Adapters -> Configure IP-based Adapters -> Discover Current Network Configuration的顺序收集当前的网络配置信息。
6、IP网络配置完毕后,按照:Cluster Topology -> Configure Networks -> Configure Non IP-Based Networks -> Add a Network的顺序配置非IP网络(心跳网络)。与IP网络不同的是需要指定一个网络名和网络类型(RS232)。
7、再根据:Cluster Topology -> Configure Adapters -> Configure IP-based Adapters -> Add an Adapter的顺序开始配置网卡。
8、选择一个欲增加网卡的子网,如果先前没有定义网络,则可以使用Add an Adapter on a new Network菜单创建网络。
9、该菜单中的各域内容如下:
Adapter IP Label:按F4从子网列表中选择欲配置的网卡。
Network Type:此域自动 生成。
Network Name:此域自动生成。
Adapter Function:表明此网卡的用途:Boot、Service、Standby。
Adapter Identifier:此卡的IP地址或设备 名。
Adapter Hardware Address:此卡的硬件地址,通常仅用于Service卡。
Node Name:该卡所在的节点名。
Netmask:该卡的子网掩码。
10、重复以上步骤,知道所有节点上的所有卡均配置完毕。
11、基于IP网络的网卡配置完毕后,再配置基于非IP网络的网卡。按照:Cluster
Topology -> Configure Adapters -> Configure Non IP-based Adapters -> Add an
Adapter > Choose Network for new Adapter的顺序配置基于非IP网络的网卡(心跳
线)。与基于IP网络的网卡不同之处在于基于非IP网络的网卡需要指定设备名
(Device Name)。收起
参与37

查看其它 36 个回答hx_yinhu的回答

hx_yinhuhx_yinhu系统运维工程师南京莫顿科技发展有限公司
很详细啊,学习了
互联网服务 · 2012-08-24
浏览1538

回答者

hx_yinhu
系统运维工程师南京莫顿科技发展有限公司

hx_yinhu 最近回答过的问题

回答状态

  • 发布时间:2012-08-24
  • 关注会员:0 人
  • 回答浏览:1538
  • X社区推广