zoukankan      html  css  js  c++  java
  • 如何搭建NTP服务

    最近,在搭建Oracle RAC过程中,需要用到DNS和NTP,其中,DNS用于域名、IP管理,NTP用于时间同步。其实,很久以前搭建过这两种服务,但技术,本质上,符合“用进废退”的客观规律。用得越频,自然就越娴熟。少用甚而不用,慢慢就淡忘了。以至于哪天要用起来的时候,会茫茫然不知而从。虽说网上的相关资料汗牛充栋,但难保良莠不齐。在搜索辨别的过程中,自然会花费不少时间。现在记录一下,一来整理思路,二则以备不时之需。毕竟,自己写的,再次看的时候,会更容易上手。

    实验环境:

    node1.being.com  192.168.1.130  -->>NTP服务器

    node2.being.com  192.168.1.131  -->>客户端

    一、在node1上编辑NTP配置文件

         1.  [root@node1 ~]# vim /etc/ntp.conf      

    restrict default kod nomodify notrap nopeer noquery   --拒绝IPv4的用户
    restrict -6 default kod nomodify notrap nopeer noquery --拒绝IPv6的用户
     
    restrict 127.0.0.1  --这两个是默认值,放行本机来源
    restrict -6 ::1
    restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap   --允许192.168.1.0这个网段的主机通过本机进行网络校时
    #restrict default  nomodify notrap --注意:为了方便,可设置为default,即允许所有IP通过本机进行网络校时
    server 0.rhel.pool.ntp.org --设置主机来源,即node1通过0.rhel.pool.ntp.org进行网络校对 server 1.rhel.pool.ntp.org server 2.rhel.pool.ntp.org

         其中,nomodify:客户端不能使用ntpc与ntpq这两个程序来修改服务器的时间参数,但客户端仍可通过这部主机来进行网络校时

                 notrap: 不提供trap这个远程事件登陆的功能

                 noquery: 客户端不能够使用ntpc、ntpd等命令来查询时间服务器,等于不提供NTP的网络校时。注意:如果需要提供NTP服务的话,则这个参数切记不要。

          如果IP后面没有任何参数,则表示“该IP或网段不受任何限制”

        2.  重启服务

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

    二、在node2上进行验证

          [root@node2 oracle]# ntpdate -d 192.168.1.130   --注意,通常需要5分钟才会和ntp服务器顺利连接上

          24 Mar 21:18:02 ntpdate[1382]: no server suitable for synchronization found

          用 ntpdate -d 192.168.1.130 进行查看,发现Server dropped: strata too high且stratum 16,而正常情况下,stratum最多可达15个阶层。

          这表示NTP Server还没有和它自身或者它的上一层Server同步上。

    三、在node1的/etc/ntp.conf添加以下参数

    server 127.127.1.0
    fudge  127.127.1.0 stratum 10

          以上定义是让NTP Server和其自身保持同步,如果在/etc/ntp.conf中定义的server都不可用时,将使用local时间作为ntp服务提供给ntp客户端。

          重启ntp服务,用以下命令进行验证

          [root@node1 ~]# ntpq -p   -->> 显示local即ok

          remote refid st t when poll reach delay offset jitter
          ==============================================================================
         *LOCAL(0) .LOCL. 10 l 44 64 377 0.000 0.000 0.000

    四、在客户端进行配置

          这时,有两种方法实现时间同步。

          1. 用ntpdate并采用crontab

             [root@node1 ~]# vim /etc/crontab 

             0 1 *  *  *  root (/usr/sbin/ntpdate 192.168.1.130 && /sbin/hwclock -w) &> /dev/null

           2. 采用ntp服务

             [root@node2 ~]# vim /etc/ntp.conf               

    restrict default kod nomodify notrap nopeer noquery
    restrict -6 default kod nomodify notrap nopeer noquery
    
    restrict 127.0.0.1
    restrict -6 ::1
    restrict 192.168.1.130    -->>这一项非必须的,在客户端,只指定server即可。
    
    server 192.168.1.130
    server 0.rhel.pool.ntp.org
    server 1.rhel.pool.ntp.org
    server 2.rhel.pool.ntp.org

             重启服务,此时大功告成,主要障碍还是在第二步客户端用ntpdate同步服务端的时候,报no server suitable的错误。

    他山之石,可以攻玉。老实说,这个问题的解决主要参考了以下两位作者的博客以及《鸟哥的Linux私房菜-服务器架构篇》。在此一并谢过!

    http://hi.baidu.com/d_life/item/3d5a081935834708e65c3697

    http://blog.csdn.net/suer0101/article/details/7868813

  • 相关阅读:
    POJ 1015 Jury Compromise【DP】
    POJ 1661 Help Jimmy【DP】
    HDU 1074 Doing Homework【状态压缩DP】
    HDU 1024 Max Sum Plus Plus【DP,最大m子段和】
    占坑补题。。最近占的坑有点多。。。
    Codeforces 659F Polycarp and Hay【BFS】
    Codeforces 659E New Reform【DFS】
    Codeforces 659D Bicycle Race【计算几何】
    廖大python实战项目第四天
    廖大python实战项目第三天
  • 原文地址:https://www.cnblogs.com/ivictor/p/3622081.html
Copyright © 2011-2022 走看看