一种主备切换的通信方法及装置、电子设备、存储介质与流程

文档序号:33468118发布日期:2023-03-15 07:22阅读:67来源:国知局
一种主备切换的通信方法及装置、电子设备、存储介质与流程

1.本技术涉及通信技术领域,尤其涉及一种主备切换的通信方法及装置、电子设备、存储介质。


背景技术:

2.现如今人们的日常生活越来越离不开网络,但由于提供通信服务的设备容易发生故障,一旦出现故障,会导致网络不能正常地为用户提供通信服务,因此会对通信服务的各个设备进行备份,以备在某个设备出现故障时,可以及时执行主备切换方案,切换至备用设备。
3.在现有的技术中,当网络设备发生故障时,可以通过人工的方式将网络数据从故障的网络设备切换到另一台完好的备用设备上,以实现通信服务的正常使用。
4.但是,由于是采用人工的方式执行主备切换,从而网络设备恢复时间较慢,进而还会影响用户的网络通信速率。


技术实现要素:

5.基于上述现有技术的不足,本技术提供了一种主备切换的通信方法及装置、电子设备、存储介质,以解决现有技术通过人工的方式执行主备切换,造成网络设备恢复时间较慢的问题。
6.为了实现上述目的,本技术提供了以下技术方案:
7.本技术第一方面提供了一种主备切换的通信方法,包括:
8.当检测到目标设备发生异常时,从所述目标设备的配置集群中获取目标节点;其中,所述目标节点指代已发生主备切换的节点;
9.判断所述目标节点是否为主节点;
10.若判断出所述目标节点为所述主节点,则在所述目标设备的路由表中添加目标地址;
11.当所述目标设备重新运行后,从所述目标设备的日志文件中获取所述目标设备的当前信道序列号;
12.基于对端通信方的当前信道序列号,对所述目标设备的当前信道序列号进行重置,得到所述目标设备的重置信道序列号;其中,所述对端通信方已预先与所述目标设备建立通信关系;
13.根据所述目标设备的重置信道序列号以及所述目标地址,建立所述目标设备与所述对端通信方之间的通信。
14.可选地,在上述的主备切换的通信方法中,所述当检测到目标设备发生异常时,从所述目标设备的配置集群中获取目标节点之前,还包括:
15.获取目标集群以及目标地址;
16.将所述目标地址配置在所述目标集群中;
17.将配置好的所述目标集群作为配置集群;
18.将所述配置集群配置在目标设备上。
19.可选地,在上述的主备切换的通信方法中,所述判断所述目标节点是否为主节点之后,还包括:
20.若判断出所述目标节点为非主节点,则停止运行所述目标设备;
21.将目标地址从所述目标设备的路由表中删除。
22.可选地,在上述的主备切换的通信方法中,所述从所述目标设备的配置集群中获取目标节点,包括:
23.利用所述配置集群中的选举规则,从所述目标设备的配置集群中获取目标节点。
24.本技术第二方面提供了一种主备切换的通信装置,包括:
25.第一获取单元,用于当检测到目标设备发生异常时,从所述目标设备的配置集群中获取目标节点;其中,所述目标节点指代已发生主备切换的节点;
26.判断单元,用于判断所述目标节点是否为主节点;
27.添加单元,用于若判断出所述目标节点为所述主节点,则在所述目标设备的路由表中添加目标地址;
28.第二获取单元,用于当所述目标设备重新运行后,从所述目标设备的日志文件中获取所述目标设备的当前信道序列号;
29.重置单元,用于基于对端通信方的当前信道序列号,对所述目标设备的当前信道序列号进行重置,得到所述目标设备的重置信道序列号;其中,所述对端通信方已预先与所述目标设备建立通信关系;
30.建立单元,用于根据所述目标设备的重置信道序列号以及所述目标地址,建立所述目标设备与所述对端通信方之间的通信。
31.可选地,在上述的主备切换的通信装置中,还包括:
32.第三获取单元,用于获取目标集群以及目标地址;
33.第一配置单元,用于将所述目标地址配置在所述目标集群中;
34.作为单元,用于将配置好的所述目标集群作为配置集群;
35.第二配置单元,用于将所述配置集群配置在目标设备上。
36.可选地,在上述的主备切换的通信装置中,还包括:
37.停止单元,用于若判断出所述目标节点为非主节点,则停止运行所述目标设备;
38.删除单元,用于将目标地址从所述目标设备的路由表中删除。
39.可选地,在上述的主备切换的通信装置中,所述第一获取单元,包括:
40.第四获取单元,用于利用所述配置集群中的选举规则,从所述目标设备的配置集群中获取目标节点。
41.本技术第三方面提供了一种电子设备,包括:
42.存储器和处理器;
43.其中,所述存储器用于存储程序;
44.所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的一种主备切换的通信方法。
45.本技术第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机
程序被执行时,用于实现如上述任意一项所述的一种主备切换的通信方法。
46.本技术提供的一种主备切换的通信方法,通过预先配置好的集群,来实现设备出现异常后的自动主备切换。当检测到目标设备发生异常时,从目标设备的配置集群中获取目标节点,其中,目标节点指代已发生主备切换的节点,其次判断目标节点是否为主节点,若判断出目标节点为主节点,则在目标设备的路由表中添加目标地址,然后当目标设备重新运行后,从目标设备的日志文件中获取目标设备的当前信道序列号,再基于对端通信方的当前信道序列号,对目标设备的当前信道序列号进行重置,得到目标设备的重置信道序列号。其中,对端通信方已预先与目标设备建立通信关系,最后根据目标设备的重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信。从而不再通过人工的方式来实现主备切换,而是通过预先配置的集群来实现异常后的主备切换,进而有效地减短了异常的恢复时间,并且还有效地提高了网络通信的效率。
附图说明
47.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
48.图1为本技术实施例提供的一种主备切换的通信方法的流程图;
49.图2为本技术实施例提供的一种集群的配置方法的流程图;
50.图3为本技术实施例提供的另一种主备切换的通信方法的流程图;
51.图4为本技术另一实施例提供的一种主备切换的通信装置的结构示意图;
52.图5为本技术另一实施例提供的一种电子设备的结构示意图。
具体实施方式
53.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
54.在本技术中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
55.本技术实施例提供了一种主备切换的通信方法,如图1所示,具体包括以下步骤:
56.s101、当检测到目标设备发生异常时,从目标设备的配置集群中获取目标节点。
57.其中,目标节点指代已发生主备切换的节点。需要说明的是,当检查目标设备发生故障或者从故障恢复到正常运行时,目标设备的配置集群中的节点也会随着发生变化(如
主节点宕机或者有新节点的加入等),此时就会触发配置集群的切换脚本自主为目标设备进行主备节点的切换,使得可以使用其他设备代替目标设备进行通信的工作,从而解决了人工干预的影响,使得故障恢复时间短,因此在本技术实施例中,需要从目标设备的配置集群中获取已进行主备切换的节点,以便后续获知是目标设备是发生主从切换还是从主切换。
58.具体的,目标设备指代webspheremq,其中,webspheremq是面向消息传递的中间件产品,通过webspheremq可以屏蔽不同的通信协议之间的差别,可以最大程度地简化网络编程的复杂性。通过mq的配置,可以使得通信双方的程序以松耦合的方式独自运行,并且也不用关心对方所在的位置和状态,只需通过消息驱动或消息触发的方式来相互联系。
59.配置集群指代keepalived集群,其中,keepalived集群是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。keepalived的作用是检测服务器的状态,如果有一台web服务器宕机或工作出现故障,keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当异常服务器工作正常后keepalived自动将异常服务器加入到服务器群中。
60.可选地,在本技术另一实施例中,在步骤s101之前,还需要预先将目标设备配置上集群,所以如图2所示,本技术另一实施例提供一种集群的配置方法包括以下步骤:
61.s201、获取目标集群以及目标地址。
62.具体的,目标集群指代keepalived集群,目标地址指代vip地址。
63.s202、将目标地址配置在目标集群中。
64.需要说明的是,为了能在目标集群中实现目标设备的高可用性,因此在本技术实施例中,需要将vip配置到目标集群的virtual_ipaddress中,即将vip配置到目标集群的配置文件中,同时还需要将主备切换时所使用的切换脚本,配置到notify_master和notify_backup,即目标集群的配置文件中,以便后续当目标设备发生异常时,通过执行目标集群中的切换脚本来实现目标设备的自动主备切换。
65.s203、将配置好的目标集群作为配置集群。
66.s204、将配置集群配置在目标设备上。
67.具体的,将webspheremq主备上配置keepalived集群,同时还需要将配置集群的配置文件存储在目标设备的路由表上,以实现webspheremq主备真正地配置上keepalived集群。
68.可选地,在本技术另一实施例中,步骤s101中的从目标设备的配置集群中获取目标节点的一种具体实施方式,包括:
69.利用配置集群中的选举规则,从目标设备的配置集群中获取目标节点。
70.具体的,在具有一个主节点和多个备用节点的keepalived集群中,主要通过节点“优先级”以及权重值来选取主备切换的节点,其中具有较大“优先级”的节点将成为集群中的主节点,而其他节点都是备份节点。可选地,当主节点发生常见故障后,可以在备份节点间进行“间接选举”,然后根据备节点的优先级和权重的计算,选择新的主节点对接集群的服务方案。
71.s102、判断目标节点是否为主节点。
72.需要说明的是,目标节点会携带自身是否为主节点的标记,因此可以基于目标节
点的标记,判断目标节点是否为主节点。若判断出目标节点为主节点,说明目标设备的配置集群中是将从节点切换为主节点,来保障目标设备的高可用性,因此需要执行步骤s103,
73.s103、在目标设备的路由表中添加目标地址。
74.需要说明的是,当目标设备出现异常时,需要通过新的网口地址才能访问其他设备实现正常通信,因此需要预先在目标设备的路由表中添加目标地址,以实现目标设备访问第三方。
75.具体的,目标地址指代vip(virtualipaddress)地址,其中,vip是虚拟ip地址,是一个不与特定计算机或一个计算机中的网络接口卡(nic)相连的ip地址,主要是用来进行不同主机之间的切换,虚拟ip比较常见的一个用例就是在系统高可用性(highavailabilityha)方面的应用,为了提高系统对外服务的高可用性,就会采用主备模式进行高可用性的配置。当提供服务的主机宕机后,服务会切换到备机继续对外提供服务。而这一切用户是感觉不到的,在这种情况下系统对客户端提供服务的ip地址就会是一个虚拟ip,当主机宕机后,虚拟ip便会漂移到备机上继续使用。
76.s104、当目标设备重新运行后,从目标设备的日志文件中获取目标设备的当前信道序列号。
77.需要说明的是,目标设备需重新启动后才能实现其他设备代替目标设备进行通信,但由于重新启动目标设备时,目标设备的信道列号会发生紊乱,导致目标设备无法正常进行通信工作,因此在本技术实施例中,需要预先从目标设备的日志文件中获取目标设备的当前信道序列号,以便后续直接对目标设备的当前信道序列号进行修改,便于有效地提高通信的处理效率。
78.s105、基于对端通信方的当前信道序列号,对目标设备的当前信道序列号进行重置,得到目标设备的重置信道序列号。
79.其中,对端通信方已预先与目标设备建立通信关系。需要说明的是,每个webspheremq设备在进行配置的时候,均会预先与另一台webspheremq设备建立通信关系,是为了防止当其中一个webspheremq设备出现异常情况是,另一台webspheremq设备可以代替异常情况的webspheremq设备进行通信工作,并且两者的信道序列号均得一致才能有效通信,因此在本技术实施例中,才需要执行步骤s105,用来得到与对端通信方的当前信道序列号一致的目标设备的重置信道序列号。
80.s106、根据目标设备的重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信。
81.需要说明的是,信道序列号可以使得信息在通道中得到高效而又可靠的传输,因此在本技术实施例中,可以先基于重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信管道,然后目标设备可以通过目标地址,来实现与对端通信方之间的通信,从而可以有效地提升系统的可靠性和可用性,并且还大大缩短故障恢复的时间,进而还有效地提高了网络通信的效率,使得用户侧的通信影响大幅下降。
82.本技术提供的一种主备切换的通信方法,通过预先配置好的集群,来实现设备出现异常后的自动主备切换。当检测到目标设备发生异常时,从目标设备的配置集群中获取目标节点,其中,目标节点指代已发生主备切换的节点,其次判断目标节点是否为主节点,若判断出目标节点为主节点,则在目标设备的路由表中添加目标地址,然后当目标设备重
新运行后,从目标设备的日志文件中获取目标设备的当前信道序列号,再基于对端通信方的当前信道序列号,对目标设备的当前信道序列号进行重置,得到目标设备的重置信道序列号。其中,对端通信方已预先与目标设备建立通信关系,最后根据目标设备的重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信。从而不再通过人工的方式来实现主备切换,而是通过预先配置的集群来实现异常后的主备切换,进而有效地减短了异常的恢复时间,并且还有效地提高了网络通信的效率。
83.本技术另一实施例提供了另一种主备切换的通信方法,如图3所示,包括以下步骤:
84.s301、当检测到目标设备发生异常时,从目标设备的配置集群中获取目标节点。
85.其中,目标节点指代已发生主备切换的节点。
86.需要说明的是,步骤s301的具体实施方式,可相应地参考上述方法实施例中的步骤s101,此处不再赘述。
87.s302、判断目标节点是否为主节点。
88.需要说明的是,步骤s302的具体实施方式,可相应地参考上述方法实施例中的步骤s102,此处不再赘述。
89.还需要说明的是,若判断出目标节点为主节点,则执行步骤s305。若判断出目标节点为非主节点,则执行步骤s303。
90.s303、停止运行目标设备。
91.需要说明的是,当判断出目标节点为非主节点时,说明该目标节点为从节点,而从节点仅作为备份形式存在,是不提供任何通信的访问,因此需要停止执行目标设备,避免造成不必要的资源浪费。
92.s304、将目标地址从目标设备的路由表中删除。
93.需要说明的是,在对目标设备进行配置时,也在路由表中的配置文件上添加了目标地址,而从节点是不提供任何通信的访问的节点,因此目标地址也无法发挥访问网口的作用,所以就需要将目标地址从目标设备的路由表中删除。
94.s305、在目标设备的路由表中添加目标地址。
95.需要说明的是,步骤s305的具体实施方式,可相应地参考上述方法实施例中的步骤s103,此处不再赘述。
96.s306、当目标设备重新运行后,从目标设备的日志文件中获取目标设备的当前信道序列号。
97.需要说明的是,步骤s306的具体实施方式,可相应地参考上述方法实施例中的步骤s104,此处不再赘述。
98.s307、基于对端通信方的当前信道序列号,对目标设备的当前信道序列号进行重置,得到目标设备的重置信道序列号。
99.其中,对端通信方已预先与目标设备建立通信关系。
100.需要说明的是,步骤s307的具体实施方式,可相应地参考上述方法实施例中的步骤s105,此处不再赘述。
101.s308、根据目标设备的重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信。
102.需要说明的是,步骤s308的具体实施方式,可相应地参考上述方法实施例中的步骤s106,此处不再赘述。
103.本技术另一实施例提供了一种主备切换的通信装置,如图4所示,包括:
104.第一获取单元401,用于当检测到目标设备发生异常时,从目标设备的配置集群中获取目标节点。
105.其中,目标节点指代已发生主备切换的节点。
106.判断单元402,用于判断目标节点是否为主节点。
107.添加单元403,用于若判断出目标节点为主节点,则在目标设备的路由表中添加目标地址。
108.第二获取单元404,用于当目标设备重新运行后,从目标设备的日志文件中获取目标设备的当前信道序列号。
109.重置单元405,用于基于对端通信方的当前信道序列号,对目标设备的当前信道序列号进行重置,得到目标设备的重置信道序列号。
110.其中,对端通信方已预先与目标设备建立通信关系。
111.建立单元406,用于根据目标设备的重置信道序列号以及目标地址,建立目标设备与对端通信方之间的通信。
112.需要说明的是,本技术实施例中的上述单元的具体工作过程可相应地参考上述方法实施例中的步骤s101~步骤s106,此处不再赘述。
113.可选地,本技术另一实施例提供的一种主备切换的通信装置中,还包括:
114.第三获取单元,用于获取目标集群以及目标地址。
115.第一配置单元,用于将目标地址配置在目标集群中。
116.作为单元,用于将配置好的目标集群作为配置集群。
117.第二配置单元,用于将配置集群配置在目标设备上。
118.需要说明的是,本技术上述实施例提供的各个单元的具体工作过程可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
119.可选地,本技术另一实施例提供的一种主备切换的通信装置中,还包括:
120.停止单元,用于若判断出目标节点为非主节点,则停止运行目标设备。
121.删除单元,用于将目标地址从目标设备的路由表中删除。
122.需要说明的是,本技术上述实施例提供的各个单元的具体工作过程可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
123.可选地,本技术另一实施例提供的一种主备切换的通信装置中,第一获取单元401,包括:
124.第四获取单元,用于利用配置集群中的选举规则,从目标设备的配置集群中获取目标节点。
125.需要说明的是,本技术上述实施例提供的各个单元的具体工作过程可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
126.本技术另一实施例提供了一种电子设备,如图5所示,包括:
127.存储器501和处理器502。
128.其中,存储器501用于存储程序。
129.处理器502用于执行程序,程序被执行时,具体用于实现如上述任意一个实施例提供的一种主备切换的通信方法。
130.本技术另一实施例提供了一种计算机存储介质,用于存储计算机程序,计算机程序被执行时,用于实现如上述任意一个实施例提供的一种主备切换的通信方法。
131.计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
132.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
133.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1