时间同步的方式:找一个机器,作为时间服务器,所有的机器与这台集群时间进行定时的同步,比如,每隔十分钟,同步一次时间。

image.png

1. 时间服务器配置(必须root用户)

  • 检查ntp是否安装

    1. [root@hadoop102 桌面]# rpm -qa|grep ntp
    2. ntp-4.2.6p5-10.el6.centos.x86_64
    3. fontpackages-filesystem-1.41-1.1.el6.noarch
    4. ntpdate-4.2.6p5-10.el6.centos.x86_64
  • 修改ntp配置文件

    1. [root@hadoop102 桌面]# vi /etc/ntp.conf
  • 修改内容如下

    • 修改1(授权192.168.1.0-192.168.1.255网段上的所有机器可以从这台机器上查询和同步时间)

      1. #restrict 192.168.11.0 mask 255.255.255.0 nomodify notrap为
      2. restrict 192.168.11.0 mask 255.255.255.0 nomodify notrap
    • 修改2(集群在局域网中,不使用其他互联网上的时间)

      1. server 0.centos.pool.ntp.org iburst
      2. server 1.centos.pool.ntp.org iburst
      3. server 2.centos.pool.ntp.org iburst
      4. server 3.centos.pool.ntp.org iburst
      5. #server 0.centos.pool.ntp.org iburst
      6. #server 1.centos.pool.ntp.org iburst
      7. #server 2.centos.pool.ntp.org iburst
      8. #server 3.centos.pool.ntp.org iburst
    • 添加3(当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步)

      1. server 127.127.1.0
      2. fudge 127.127.1.0 stratum 10 #10代表精度等级,1-15级
  • 修改/etc/sysconfig/ntpd文件

    1. [root@hadoop102 桌面]# vim /etc/sysconfig/ntpd
    • 增加内容如下(让硬件时间与系统时间一起同步)
      1. SYNC_HWCLOCK=yes
  • 重新启动ntpd服务

    1. [root@hadoop102 桌面]# service ntpd status
    2. ntpd 已停
    3. [root@hadoop102 桌面]# service ntpd start
    4. 正在启动 ntpd [确定]
  • 设置ntpd服务开机启动

    1. [root@hadoop102 桌面]# chkconfig ntpd on

    2. 其他机器配置(必须root用户)

  • 在其他机器配置10分钟与时间服务器同步一次

    1. */10 * * * * /usr/sbin/ntpdate hadoop102