通常,在节点重启的情况下,css 守护进程的日志 (ocssd.log) 表明没有收到来自一个或多个远程节点的网络心跳(例如,消息“crs-1610:network communication with node xxxxxx (3) 在 90% 的超时间隔内丢失。在 2.656 秒内从集群中删除此节点”出现在 ocssd.log 中),并且该节点随后重新启动(以避免脑裂或因为它被另一个节点)。
此处的脚本使用 ssh 执行网络连接检查。此检查是对 ping 或 traceroute 的补充,因为 ssh 使用 tcp 协议,而 ping 使用 icmp,linux/unix 中的 traceroute 使用 udp(windows 上的 traceroute 使用 icmp)。
网络通信既涉及实际的物理连接,也涉及 ip、udp 和 tcp 等操作系统层。
crs(10g和11.1)使用tcp进行通信,所以使用ssh来测试连接以及tcp和ip层是比ping或traceroute更好的测试。 
因为11.2上的crs使用udp通信,所以使用ssh来测试tcp并不是最优的测试,但是这个测试会补充traceroute测试。
该脚本每 5 秒测试一次私有互连,因此该脚本将给服务器带来微不足道的负载。
	
		- 
			#!/bin/ksh
 
- 
			
 
- 
			export today=`date " %y%m%d"`
 
- 
			while [ $today -lt 20121231 ] # 格式需要为 yearmonthdate
 
- 
			do
 
- 
			export today=`date " %y%m%d" `
 
- 
			export logfile=/tmp/interconnect_test_${today}.log
 
- 
			ssh drrac1-priv "hostname; date" >> $logfile 2>&1
 
- 
			ssh drrac2-priv "hostname; date" >> $logfile 2>&1
 
- 
			ssh drrac3-priv "hostname; date" >> $logfile 2>&1
 
- 
			
 
- 
			echo "" >> $logfile
 
- 
			echo "" >> $logfile
 
- 
			
 
- 
			sleep 5
 
- 
			done
		
 
对3节点的rac 每隔5秒执行一次                                   
              
              阅读(744) | 评论(0) | 转发(0) |