您的位置:首页 > 大数据

CM+CDH构建企业大数据平台系列(十二)

2018-03-26 11:04 344 查看

完整视频+图文资料获取及技术答疑请加:大讲台大数据研习社⑦ :695520445

                            搭建时间服务器并配置集群自动时钟同步

一、搭建时间服务器

   (一)为什么要搭建时间服务器          因为Hadoop 对集群中各个机器的时间同步要求比较高, 要求各个机器的系统时间不能相差太多, 不然会造成很多问题。比如,最常见的连接超时问题。所以需要配置集群中各个机器和互联网的时间服务器进行时间同步, 但是在实际生产环境中, 集群中大部分服务器是不能连接外网的, 这时候可以在内网搭建一个自己的时间服务器( NTP 服务器),然后让集群的各个机器与这个时间服务器定时的进行时间同步。   (二)如何搭建时间服务器          以主机名为node-cm01.djt.com的机器为例。         1、首先查看一下该机器的时间             输入命令date即可。             从结果可以看到当前时间为EST(东部标准时间,即纽约时间),我们处在中国,所以可以把时间改为CST(中部标准时间,即上海时间)。         2、如何修改时间标准?             只需要在所有节点执行命令:cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime即可。实际上就是把Shanghai时间的文件复制到localtime中。              注意:上面操作在3个节点都要执行,保证系统当前时间标准为上海时间。             OK,接下来进行时钟同步的配置。         3、配置 NTP 服务器             我们选择第一台机器(node-cm01.djt.com)为 NTP 服务器,其他机器和这台机器进行定时的时间同步。           (1) 检查 NTP 服务是否已经安装             输入命令:rpm -qa | grep ntp即可。             如果没有安装就输入命令yum install -y ntp进行安装。             实际上就是安装两个软件,其中 ntpdate-4.2.6p5-1.el6.centos.x86_64 是用来和某台服务器进行同步的             ntp-4.2.6p5-1.el6.centos.x86_64 是用来提供时间同步服务的。           (2)修改配置文件 ntp.conf             输入命令:vi /etc/ntp.conf,然后进行如下修改:             1) 启用 restrict,限定该机器网段 ,具体操作如下:             将restrict 192.168.74.136 mask 255.255.255.0 nomodify notrap行的注释去掉,并且将网段改为自己本机的网段,我们这里是 74 网段。当然也可以直接输入本机的IP地址。             2) 注释掉 server 域名配置             #server 0.centos.pool.ntp.org iburst             #server 1.centos.pool.ntp.org iburst             #server 2.centos.pool.ntp.org iburst             #server 3.centos.pool.ntp.org iburst             以上4个server是时间服务器的域名,这里不需要连接互联网,所以将他们注释掉。             3) 在该文件中添加下边两行,让本机和本地硬件时间同步。             server 127.127.1.0             fudge 127.127.1.0 stratum 10             默认的配置文件里这两个是被注释掉的。NTP服务器会根据这里的配置,把自己的时间作为NTP服务器的时间,即和自己同步。考虑到有的局域网里不可以访问外网,所有这里需要配置该配置项。           (3) 启动NTP服务             输入命令chkconfig ntpd on即可             这样每次机器启动时,NTP服务都会自动启动。         4、配置其他机器的定时时间同步             实际上配置其他机器的时间服务器时钟同步并不难,只需要在对应机器输入命令:crontab -e即可,然后在会话中输入0-59/10 * * * * /usr/sbin/ntpdate node-cm01.djt.com             下面对这行内容的含义进行简要的解释:             (1)其中0-59/10 * * * * 表示每隔10分钟进行一次时钟同步,空格隔开的五段是crontab语法格式中时间段,一共5段,其中*号表示任意时间,每一段时间的具体含义如下:

             (2)其中/usr/sbin/ntpdate node-cm01.djt.com表示执行的命令,即本机和主机名为node-cm01.djt.com的机器进行定时的时钟同步。             (3)在其他节点进行同样的操作,然后过10分钟之后再次查看3台机器的时间,如果3台机器的时间一致就表示实现了时间的定时同步。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息