在集群之中,有些服务器之间的时间需要同步,但并不是所有机器可以直接连外网,这时可以用Chrony工具解决。 解决方法是将其中一台设为时间服务器,然后其它服务器和这台时间服务器同步即可。具体步骤如下:

一. 配置时间服务器

Chrony时间服务器上:

[root@openstack-controller ~]# systemctl stop firewalld
[root@openstack-controller ~]# systemctl disalbe firewalld
[root@openstack-controller ~]# yum -y install chrony
[root@openstack-controller ~]# vim /etc/chrony.conf
[root@openstack-controller ~]# grep "^server" /etc/chrony.conf
server .centos.pool.ntp.org iburst #公网时间服务器,按需需修改
server .centos.pool.ntp.org iburst
server .centos.pool.ntp.org iburst
server .centos.pool.ntp.org iburst
server openstack-controller iburst # 添加本机(openstack-controller为本机主机名,需要客户端可解析,也可以使用ip)
[root@openstack-controller ~]# grep -n "^allow" /etc/chrony.conf #允许其他节点可以连接
:allow 192.168.1.0/
[root@openstack-controller ~]# timedatectl set-timezone Asia/Shanghai #设置时区
[root@openstack-controller ~]# systemctl enable chronyd.service #启动 NTP 服务并将其配置为随系统启动
[root@openstack-controller ~]# systemctl start chronyd.service

其它节点:

[root@openstack-compute ~]# systemctl stop firewalld
[root@openstack-compute ~]# systemctl disable firewalld
[root@openstack-compute ~]# yum -y install chrony
[root@openstack-compute ~]# grep -n "^server" /etc/chrony.conf #编辑/etc/chrony.conf 文件并注释所有内容。添加本地Chrony时间服务器
:server openstack-controller iburst
[root@openstack-compute ~]# timedatectl set-timezone Asia/Shanghai #设置时区
[root@openstack-compute ~]# systemctl enable chronyd.service #启动 NTP 服务并将其配置为随系统启动
[root@openstack-compute ~]# systemctl start chronyd.service

二、验证操作:

Chrony时间服务器上执行这个命令:

[root@openstack-controller ~]# chronyc sources
Number of sources =
MS Name/IP address Stratum Poll Reach LastRx Last sample # Name/IP address 列的内容显示NTP服务器的主机名或者IP地址
===============================================================================
^- ---.HINET-IP.> +1752us[-1466us] +/- 63ms
^- time5.aliyun.com -925us[-4142us] +/- 16ms
^- ntp7.flashdance.cx +15ms[ +15ms] +/- 194ms
^? dns1.synet.edu.cn - +0ns[ +0ns] +/- 0ns
^* openstack-controller +14us[-7821ns] +/- 18ms

其他节点执行相同命令:

[root@openstack-compute ~]# chronyc sources
Number of sources =
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* openstack-controller -744us[-6012us] +/- 33ms

注意:chrony和ntpd类似firewalld和iptables,不能共存,同时只能存在一个服务运行。

其他一些时间同步命令:

查看日期时间及NTP状态:# timedatectl
查看和配置时区:# timedatectl list-timezones;# timedatectl set-timezone Asia/Shanghai
修改日期时间:# timedatectl set-time "2015-01-21 11:50:00"(可以只修改其中一个)
开启NTP:# timedatectl set-ntp true/flase
查看chrony服务所有conf配置文件分布# rpm -ql chrony |grep conf
检查chrony服务配置文件所在# rpm -qc chrony
查看chrony安装情况# rpm -qi chrony
检查ntp安装情况# yum search ntp |grep ^ntp.x86_64或# yum search ntp(列出所有ntp相关包)

集群中使用chronyc同步时间的更多相关文章

  1. apache tomcat搭建负载均衡(实现集群中的session同步)

    原理:tomcat 做个WEB服务器有它的局限性,处理能力低,效率低.承受并发小(1000左右).但目前有不少网站或者页面是JSP的.并采用了tomcat做为WEB,因此只能在此基础上调优. 目前采取 ...

  2. 集群中几种session同步解决方案的比较

    1. 客户端cookie加密 .比较好的方法是自己采用cookie机制来实现一个session,在应用中使用此session实现. 问题:session中数据不能太多,最好只有个用户id. Sessi ...

  3. 集群中几种session同步解决方案的比较[转]

    集群中session安全和同步是个最大的问题,下面是我收集到的几种session同步的方案,希望能通过分析其各自的优劣找出其适应的场景. 1. 客户端cookie加密 这是我以前采用的方式,简单,高效 ...

  4. CentOS7 使用chrony搭建集群中的时间同步服务

    一.集群环境: 系统:CentOS7-minimal 集群中的两台主机ip:10.132.226.103/24  10.132.226.104/24 二.CentOS7中时间相关命令timedatec ...

  5. MySql集群FAQ----mysql主从配置与集群区别、集群中需要多少台计算机呢?为什么? 等

    抽取一部分显示在这里,如下, What's the difference in using Clustervs using replication? 在复制系统中,一个MySQL主服务器会更新一个或多 ...

  6. 分布式集群中,设定时间同步服务器,以及ntpd与ntpdate的区别

    什么时候配置时间同步? 当分布式集群配置好了以后,马上配置的是SSH无密钥配置,然后就是配置时间同步. 时间同步在集群中特别重要. 一:时间同步 1.时间同步 集群中必须有一个统一的时间 如果是内网, ...

  7. 030 分布式集群中,设定时间同步服务器,以及ntpd与ntpdate的区别

    什么时候配置时间同步? 当分布式集群配置好了以后,马上配置的是SSH无密钥配置,然后就是配置时间同步. 时间同步在集群中特别重要. 一:时间同步 1.时间同步 集群中必须有一个统一的时间 如果是内网, ...

  8. 这次一定要教会你搭建Redis集群和MySQL主从同步(非Docker)

    前言 一直都想自己动手搭建一个Redis集群和MySQL的主从同步,当然不是依靠Docker的一键部署(虽然现在企业开发用的最多的是这种方式),所以本文就算是一个教程类文章吧,但在动手搭建之前,会先聊 ...

  9. redis(二)集群 redis-cluster & redis主从同步

    参考文档: http://geek.csdn.net/news/detail/200023 redis主从复制:https://blog.csdn.net/imxiangzi/article/deta ...

随机推荐

  1. git与github建立仓库连接步骤

    一.先对git 进行用户设置 首先你得在网上下载git软件并且安装,一路默认安装就好了,然后就可以开始本地仓库的建立了.打开你安装好的git, 在开始菜单里面找到git文件夹里面的git bash端 ...

  2. 使用cmake编译luabind

    编写了一下cmakelists.txt文件 根目录 cmake_minimum_required(VERSION 2.8)project (Test) add_definitions( "/ ...

  3. elastic 部分更新 retry_on_conflict 和 数据库写锁 详细比对

    1 数据库的  update 在修改这条数据的的过程中(这个过程指的是 数据库执行update 到 事务提交的过程中 )为这条数据加上 写锁,阻止 别的事务 对锁定数据的修改,请求后一个修改事务的线程 ...

  4. Linux中硬盘物理扇区与文件系统文件对应关系(转)

    1               概述 系统读写文件过程中,如下面内核打印信息,报告读写某个扇区错误.那么我们如何能够通过sector找到读写哪个文件错误? kernel: end_request: I ...

  5. struts配置result类型为json后导致页面不能访问的错误

    错误提示为: Caused by: There is no result type defined for type 'json' mapped with name 'success'.  Did y ...

  6. HTMLParser 笔记

    # 关于html.parse.HTMLParser的使用 from html.parser import HTMLParser class MyHtmlParser(HTMLParser): # 使用 ...

  7. Hystrix 详细说明

    在 Hystrix 入门中,使用 Hystrix 时创建命令并给予执行,实际上 Hystrix 有一套较为复杂的执行逻辑,简单来说明以下运作流程: 在命令开始执行时,会做一些准备工作,例如为命令创建响 ...

  8. Lucene 4.0 正式版发布,亮点特性中文解读[转]

    http://blog.csdn.net/accesine960/article/details/8066877 2012年10月12日,Lucene 4.0正式发布了(点击这里下载最新版),这个版本 ...

  9. PyQt—QTableWidget中的checkBox状态判断

    一.QTableWidget实现checkBox效果 利用QTableWidgetItem对象的CheckState属性,既能显示QCheckBox,又能读取状态 table = QtGui.QTab ...

  10. Python 模块EasyGui详细介绍

    转载:无知小德 Python 模块EasyGui详细介绍 EasyGui 官网: http://easygui.sourceforge.net 官方的教学文档:http://easygui-docs- ...