一种时间同步方法、装置及系统与流程

文档序号:13937329阅读:208来源:国知局
一种时间同步方法、装置及系统与流程

本发明属于云计算技术领域,尤其涉及一种时间同步方法、装置及系统。



背景技术:

openstack作为一个云计算管理平台项目,能够有效管理计算、存储与网络资源,大大提高了硬件资源利用率,极大地提高了业务系统的可维护性及扩展性;openstack集群由许多物理主机组成,时间同步是必不可少的,尤其是在融合架构,通常计算节点也是ceph节点,而ceph集群对时间同步的要求更加严格,整个存储系统中的所有节点的时间误差不能大于0.05sec,鉴于存储集群的时间同步需求也必须配置openstack集群的时间同步。

目前解决集群内主机时间同步的方案为:集群内的所有主机通过均指向同一外网时间同步器进行同步。

但是,上述方案不具备高可靠性,当外部时间同步器挂掉的话就容易导致集群内主机时间不一致,且openstack集群内的机器不是所有机器都可以访问外网的。

因此,迫切需要提供一种时间同步方案来解决上述技术问题。



技术实现要素:

本发明提供一种时间同步方法、装置及系统,以解决上述问题。

本发明实施例提供一种时间同步方法,包括以下步骤:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;

多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

本发明实施例还提供一种时间同步装置,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;

多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;

多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

本发明实施例还提供了一种时间同步系统,其特征在于,包括外部时间服务器、多个控制节点、多个计算节点;其中,所述多个控制节点分别与所述外部时间服务器相连,所述多个计算节点分别与所述多个控制节点相连。

本发明实施例提供以下技术方案:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

通过以下方案:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;多个计算节点以对应级别控制节点中的时间为基准,进行时间同步,实现了外部时间服务器挂掉以及任意两个控制节点挂掉后,集群内主机仍能保持时间同步,保证了系统的高可靠性。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1所示为本发明实施例1的时间同步架构示意图;

图2所示为本发明实施例2的时间同步方法流程图;

图3所示为本发明实施例3的时间同步装置结构图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

本申请实施例针对具有多控制节点、多计算节点的openstack集群,提出了基于chrony的同步外部的具有高可靠性的同步方案;其中,chrony是两个用来维持计算机系统时钟准确性的程序,这两个程序命名为chronyd和chronyc。

chronyd是一个在系统后台运行的守护进程,它根据网络上其它时间服务器时间来测量本机时间的偏移量从而调整系统时钟;对于孤立系统,用户可以手动周期性的输入正确时间(通过chronyc)。在这两种情况下,chronyd决定计算机快慢的比例,并加以纠正。chronyd实现了ntp协议并且可以作为服务器或客户端。chronyc是用来监控chronyd性能和配置其参数的用户界面,它可以控制本机及其他计算机上运行的chronyd进程。

本申请实施例利用每台计算节点上的chrony服务,chrony服务可以添加多个server至配置文件中,即可以指向多个控制节点内的时间服务器。现提出指向时间服务器的方法为:将控制节点进行分层,以三个控制节点为例:三个控制节点具有不同优先级,控制节点1具有集群内的最高优先级,控制节点2次之,控制节点3再次之,且三个控制节点均指向外部时间服务器;多个计算节点指向三个控制节点。

本申请实施例保证openstack集群内的主机可以保持同步,且具有高可靠性:外部时间服务器挂掉以及任意两个控制节点挂掉后,集群内主机仍能保持时间同步。

下面结合图1进行详细说明,如图1所示,包括外部时间服务器;控制节点1、控制节点2、控制节点3;计算节点1、计算节点2…计算节点n;其中,所述控制节点1、所述控制节点2、所述控制节点3分别与外部时间服务器相连;所述计算节点1、计算节点2…计算节点n分别与所述控制节点1、所述控制节点2、所述控制节点3相连。

进一步地,所述多个控制节点具有不同优先级。

进一步地,将所述多个控制节点划分为第一级别控制节点、第二级别控制节点、第三级别控制节点;

其中,所述第二级别控制节点、所述第三级别控制节点分别与所述第一级别控制节点相连;所述第三级别控制节点与所述第二级别控制节点相连且所述第一级别控制节点的优先级大于所述第二级别控制节点的优先级;所述第二级别控制节点的优先级大于所述第三级别控制节点的优先级。

具体实施过程如下:

1)将外部时间同步器添加至/etc/hosts中,如添加”100.2.30.200external_ntp”;

2)更改三个控制节点的chrony容器的配置文件chrony.conf文件,将外部时间同步器添加至外部时间服务器第一行,指定层级为0,如”server0.external_ntpiburst”;

3)继续更改三个控制节点的chrony.conf文件,添加控制节点1(control01)至控制节点1的时间服务器,指定层级为1,即添加“server1.control01iburst”;

4)修改控制节点2和控制节点3的chrony.conf文件,添加控制节点2(control02)至两节点的时间服务器,指定层级为2,及添加“server2.control02iburst”;

5)修改控制节点3的chrony.conf文件,添加自己(control03)至控制节点3的时间服务器,指定层级为3:“server3.control03iburst”;

6)修改所有计算节点的chrony的配置文件,将三个控制节点做为时间服务器依次添加至chrony.conf。即添加以下几行:

“server0.control01iburst”

“server1.control02iburst”

“server2.control03iburst”

7)修改各节点chrony配置文件,将stratumweight置为1,使得多个时间服务器间具有层级关系。

控制节点指向外部时间同步器,三个控制节点按照顺序依次被指向,即控制节点2,3指向控制节点1,控制节点3指向控制节点2;计算节点指向三个控制节点,这样的组织架构具有一定的可靠性。

当外部时间服务器挂掉之后,控制节点1当做根时间服务器,控制节点1挂了之后,控制节点2当做根时间服务器,依次类推。

若仅仅中间的控制节点如控制节点2挂了,其他节点不受影响,仍然同外部时间服务器同步。

本申请实施例基于openstack的chrony模块,将各个时间服务器进行分层级,控制节点指向外部时间服务器,且依据层级设定依次被指向;计算节点指向三个控制节点。这种方式有助于集群的时间同步具有高可靠性,当任意两个控制节点和任意个数的计算节点挂掉后集群时间同步不受干扰,仍将处于时间同步状态;本申请实施例结构简单清晰,提高了集群的时间同步可靠性,且与外部时间同步。

图2所示为本发明实施例2的时间同步方法流程图,包括以下步骤:

步骤201:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;

进一步地,所述多个控制节点具有不同优先级。

进一步地,将所述多个控制节点划分为第一级别控制节点、第二级别控制节点、第三级别控制节点;

其中,所述第二级别控制节点、所述第三级别控制节点分别与所述第一级别控制节点相连;所述第三级别控制节点与所述第二级别控制节点相连且所述第一级别控制节点的优先级大于所述第二级别控制节点的优先级;所述第二级别控制节点的优先级大于所述第三级别控制节点的优先级。

步骤202:多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

进一步地,所述多个计算节点分别以第一级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第一级别控制节点发生故障,则所述多个计算节点分别以第二级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第二级别控制节点发生故障,则所述多个计算节点分别以第三级别控制节点中的时间为基准,进行时间同步。

本申请实施例基于openstackchrony的高可靠性集群时间同步,通过时间服务器的划分等级,下一层控制节点指向上一层控制节点,计算节点指向所有的控制节点已保证冗余,从而提高了整个集群时间同步的可靠性。

图3所示为本发明实施例3的时间同步装置结构图,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;

多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;

多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

进一步地,所述多个控制节点具有不同优先级。

进一步地,将所述多个控制节点划分为第一级别控制节点、第二级别控制节点、第三级别控制节点;

其中,所述第二级别控制节点、所述第三级别控制节点分别与所述第一级别控制节点相连;所述第三级别控制节点与所述第二级别控制节点相连且所述第一级别控制节点的优先级大于所述第二级别控制节点的优先级;所述第二级别控制节点的优先级大于所述第三级别控制节点的优先级。

进一步地,所述多个计算节点分别以第一级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第一级别控制节点发生故障,则所述多个计算节点分别以第二级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第二级别控制节点发生故障,则所述多个计算节点分别以第三级别控制节点中的时间为基准,进行时间同步。

本发明实施例还提供了一种时间同步系统结构图,包括外部时间服务器、多个控制节点、多个计算节点;其中,所述多个控制节点分别与所述外部时间服务器相连,所述多个计算节点分别与所述多个控制节点相连。

进一步地,所述多个控制节点分别以所述外部时间服务器中的时间为基准,进行时间同步。

进一步地,所述多个控制节点具有不同优先级。

进一步地,将所述多个控制节点划分为第一级别控制节点、第二级别控制节点、第三级别控制节点;

其中,所述第二级别控制节点、所述第三级别控制节点分别与所述第一级别控制节点相连;所述第三级别控制节点与所述第二级别控制节点相连且所述第一级别控制节点的优先级大于所述第二级别控制节点的优先级;所述第二级别控制节点的优先级大于所述第三级别控制节点的优先级。

进一步地,所述多个计算节点分别以第一级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第一级别控制节点发生故障,则所述多个计算节点分别以第二级别控制节点中的时间为基准,进行时间同步。

进一步地,若所述第二级别控制节点发生故障,则所述多个计算节点分别以第三级别控制节点中的时间为基准,进行时间同步。

本发明实施例提供以下技术方案:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;多个计算节点以对应级别控制节点中的时间为基准,进行时间同步。

通过以下方案:多个控制节点分别以外部时间服务器中的时间为基准,进行时间同步;多个计算节点以对应级别控制节点中的时间为基准,进行时间同步,实现了外部时间服务器挂掉以及任意两个控制节点挂掉后,集群内主机仍能保持时间同步,保证了系统的高可靠性。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1