注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

曾国藩的博客

 
 
 

日志

 
 

10gR2 RAC(五)配置时间同步和hangcheck-timer模块  

2013-06-18 11:43:48|  分类: SQL/Oracle/Mysql |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
http://blog.csdn.net/huangzhaoyang2009/article/details/6906938
10gR2 RAC(五)配置时间同步和hangcheck-timer模块
2011-03-04 17:52

4、配置时间同步

在安装Oracle集群件和Oracle数据库软件时,Oracle安装程序将首先在本地节点上安装软件,然后再将软件远程复制到远程节点。如果两个RAC节点的日期和时间未同步,可能会收到类似于以下内容的错误:

"/bin/tar: ./inventory/Components21/oracle.ordim.server/10.2.0.1.0: time stamp 2010-12-04 06:24:04 is 25 s in the future"

 

所有节点的时间必须同步,这通常是通过配置NTP服务实现的。如果用户的网络中已经有一个时间服务器,那么可以所有节点都指向它,否则可以从集群中挑选一个节点作为时间服务器,让其他节点与它同步。

(1)网络中有时间服务器(本环境采取这种方式)

vi /etc/ntp.conf

 

server 192.168.1.7 prefer

driftfile /var/lib/ntp/drift

broadcastdelay 0.008

(2)网络中没有时间服务器

可以选择集群中某个节点作为时间服务器,NTP服务只需要很少的系统资源。假设选择zhh1作为时间服务器,zhh2向它同步:

编辑zhh1的ntp配置文件

server 127.127.1.0          #注意不是127.0.0.1 

fudge  127.127.1.0 stratum 11 

driftfile /var/lib/ntp/drift broadcastdelay 0.008

然后编辑zhh2的ntp配置文件

server 192.168.5.235 prefer 

driftfile /var/lib/ntp/drift 

broadcastdelay 0.008

(3)启动ntp服务,并设置开机启动

[root@zhh1 ~]# /etc/init.d/ntpd start

[root@zhh1 ~]# chkconfig ntpd on

 

5、配置hangcheck-timer模块

9.2以前使用一个名为watchdogd的用户空间监视后台程序来监视集群的状态情况,并在出现故障时重新启动RAC节点。从 Oracle<?xml:namespace prefix = st1 />9.2.0.2开始,此监视后台程序已被名为hangcheck-timer的模块所代替,该模块可以更好地解决可用性和可靠性问题。 hang-check计时器被加载到Linux内核中并检查系统是否挂起。它将设置一个计时器,并在特定的时间量之后检查该计时器。有一个用于检查挂起情 况的可配置阈值,如果超过该阈值,计算机将重新启动。尽管Oracle CRS并不需要hangcheck-timer模块,但Oracle强烈建议使用它。

hangcheck-timer模块使用了一个基于内核的计时器,该计时器周期性地检查系统任务调度程序,以捕获延迟,从而确定系统的运行状况。如 果系统挂起或暂停,则计时器重置该节点。hangcheck-timer模块使用时间戳计数器(TSC) CPU寄存器,该寄存器在每个时钟信号处递增。由于此寄存器由硬件自动更新,因此TCS提供了更精确的时间度量。

两个参数,即hangcheck_tick(定义系统检查频率,默认60s,oracle建议30s)和hangcheck_margin(定义在 重置RAC节点前的最大挂起延时,默认180s,oracle建议180s)来确定节点是否出现故障。hangcheck-timer模块会根据 hangcheck_tick的设置,定时检查内核。只要响应时间小于hangcheck_tick+hangcheck_margin,都会认为内核运 行正常。否则,就意味着运行异常,模块会自动重启系统。

 

注意:crs的参数MissCount必须大于hangcheck_tick+hangcheck_margin的和(需考证)

miscount的值用crsctl get css misscount查询,10gR2 linux平台,默认60s

 

设置hangcheck内核模块参数:

vi /etc/modprobe.conf

options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180

设置hangcheck内核模块开机加载

vi /etc/rc.d/rc.local

/sbin/modprobe hangcheck-timer

 

要立即加载模块,执行:

modprobe -v hangcheck-timer

检查加载情况:

[root@zhh1 ~]# lsmod | grep hangcheck_timer

hangcheck_timer        5593 0

  评论这张
 
阅读(636)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018