linux安装oracle rac机器的时间同步问题

在安装oracle rac所有节点的时间要同步

Linux自带了ntp服务 — /etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个timeserver的角色,让其他机器和他同步时间
配置文件就是/etc/ntp.conf。

现在让两台机器做时间同步
weblogic30 — 10.138.130.30和weblogic29 — 10.138.130.29做时间同步。
在时间同步前两台机器的时间是不一至的

[root@weblogic29 ~]# date
Wed Nov  7 10:48:42 CST 2012

[root@weblogic30 ~]# date
Wed Nov  7 10:51:53 CST 2012

weblogic29做time server,weblogic29本身不和其他机器时间同步,就是取本地时间。
所以,先把weblogic29机器的时间调准了:

[root@weblogic29 ~]date --set "01/23/2011 10:49"

也可以就用当前weblogic29机时所显示的时间

[root@weblogic29 ~]clock -w
[root@weblogic29 ~]hwclock --systohc

后两个命令是把设置的时间写到硬件时间中去(也就是CMOS里面的时间)。

然后将weblogic29配置成一个time server,修改/etc/ntp.conf,

[root@weblogic29 ~]vi /etc/ntp.conf

其他的配置不怎么需要改,只需要关注restrict的配置:

加入:

restrict 10.138.130.0 mask 255.255.255.0 -- 让10.138.130网段上的机器能和本机做时间同步

这样就可以了,记得下面的:

server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10

这两行需要,这是让本机的ntpd和本地硬件时间同步。

当然,我们也可以添加server xxx.xxx.xxx.xxx,让他和其他的time server时间同步。

[root@weblogic29 ~]/etc/init.d/ntpd restart

[root@weblogic29 ~]chkconfig ntpd on

修改iptables配置,将tcp和udp 123端口开放,这是ntp需要的端口,
在/etc/services中可以查到这个端口。

3
这样weblogic29就成为一台time server了,现在我们配置weblogic30这台机器,也是修改/etc/ntp.conf ,

[root@weblogic30 ~]vi /etc/ntp.conf

restrict default ignore这行保留为注释状态,因为不需要做time server

注释掉server 127.127.1.0, fudge 127.127.1.0 stratum 10这两行,因为这台机器不需要和本地硬件时钟同步了。

加入server 10.138.130.29这行,和weblogic29机器同步。

这样就OK了。看看时间,已经和weblogic29同步了。往后默认配置好像是5分钟和time server同步一次。ntpdate命令是显式的和某台机器做时间同步,以前将ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做这个时间

4.将ntpdate放到crontab中定期步也是可以的

[root@weblogic30 ~]#vi ntpupdate.sh
/usr/sbin/ntpdate 10.138.130.29
[root@weblogic30 ~]#chmod 755 ntpupdate.sh

crontab可以定时去执行你要做的动作
直接用crontab命令编辑
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
一般使用crontab -e来编辑一个计划动作,编辑模式同vi编辑器相同
crontab内的基本编辑格式如下
*  *  *  *  *  command
分  时  日  月 周  命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab文件的一些例子:
30 21 * * * /etc/init.d/smb restart
上面的例子表示每晚的21:30重启smb 。
45 4 1,10,22 * * /etc/init.d/smb restart
上面的例子表示每月1、10、22日的4 : 45重启smb 。
10 1 * * 6,0 /etc/init.d/smb restart
上面的例子表示每周六、周日的1 : 10重启smb 。
0,30 18-23 * * * /etc/init.d/smb restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启smb 。
0 23 * * 6 /etc/init.d/smb restart
上面的例子表示每星期六的11 : 00 pm重启smb 。
* */1 * * * /etc/init.d/smb restart
每一小时重启smb
* 23-7/1 * * * /etc/init.d/smb restart
晚上11点到早上7点之间,每隔一小时重启smb
0 11 4 * mon-wed /etc/init.d/smb restart
每月的4号与每周一到周三的11点重启smb
0 4 1 jan * /etc/init.d/smb restart
一月一号的4点重启smb
现在让weblogic30每分钟与weblogic29做一次时间同步

[root@weblogic30 ~]#crontab -e
*/1 * * * * /root/ntpupdate.sh

[root@weblogic30 ~]#/etc/init.d/crond restart

在同步后两台机器时间显示如下:

[root@weblogic30 ~]# date
Wed Nov  7 11:13:04 CST 2012

[root@weblogic29 ~]# date
Wed Nov  7 11:13:06 CST 2012

Leave a Reply

Your email address will not be published.

Proudly powered by WordPress | Indrajeet by Sus Hill.