一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种高可用NAT网关设计方法与流程

2022-09-03 22:23:06 来源:中国专利 TAG:

一种高可用nat网关设计方法
技术领域
1.本发明属于私有云技术领域,尤其是涉及一种高可用nat网关设计方法。


背景技术:

2.vpc(virtual private cloud)是用户基于云服务提供商申请的一个自定义的,私密的,隔离的网络环镜。用户云上的业务均基于vpc,在vpc内进行业务的处理。如果用户想与外网交互,有一种方式是通过nat网关实现。用户通过nat网关功能实现访问因特网的功能,从而提供业务。当前方案nat网关的功能是在硬件防火墙上实现的,硬件防火墙有规格的瓶颈,通过开源的软实现来解除对硬件设备的依赖。从而提高网络架构的灵活性,但是开源的nat有一个缺陷,无法实现高可用,只是单机版,如果运行nat的虚机宕机了,则当前vpc的业务无法访问外网,影响用户的业务。


技术实现要素:

3.有鉴于此,本发明旨在提出一种高可用nat网关设计方法,以至少解决背景技术中的至少一个问题。
4.为达到上述目的,本发明的技术方案是这样实现的:
5.第一方面本方案公开了一种高可用nat网关设计方法,包括以下步骤:
6.s1、创建nat集群,并通过选举模块选出leader;
7.s2、给leader服务器下发配置,leader服务器存储集群所有ip地址;
8.s3、每个网关服务都有代理agent,控制面将配置下发到leader服务器,leader的代理agent定时推送配置给集群其他的服务器;
9.s4、进行周期监控判断虚机的状态,若虚机的状态正常则持续监控,否则执行步骤s5;
10.s5、当主leader发生异常,宕机时,控制面触发选举机制,从集群内随机ping其他的服务器,如果ping通,选举此服务器为leader,将之前leader的功能切割到新的leader服务器上,清除旧leader的配置;
11.s6、通过新的leader对外提供服务,然后执行步骤s2。
12.进一步的,在步骤s1中,创建nat产品,并创建nat服务的集群,其中nat服务运行在不同的服务器上。
13.进一步的,在步骤s1中,通过选举模块选出leader,并对每个nat服务进行角色划分。
14.进一步的,在步骤s2中,在leader服务上进行nat配置的下发,并将此配置push到其他的备用服务上。
15.进一步的,在步骤s4中,控制面的监控模块不断的监控虚机的状态,包括链路的连通性,若周期内状态正常,则进行下一个周期的监测。
16.进一步的,在步骤s4中,如果发现leader虚机异常,则立即进行选举工作,将业务
切换到新的leader上进行提供服务,由于配置都是同步的,不需要对配置的进行补发。
17.第二方面本方案公开了一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,所述处理器用于执行第一方面所述的一种高可用nat网关设计方法。
18.第三方面本方案公开了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,以使所述至少一个处理器执行第一方面所述的一种高可用nat网关设计方法。
19.第四方面本方案公开了一种计算机可读取存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的一种高可用nat网关设计方法。
20.相对于现有技术,本发明所述的一种高可用nat网关设计方法具有以下有益效果:
21.本发明所述的一种高可用nat网关设计方法,增加网关功能的高可用,保证业务连续,可以动态扩充网关的服务的数量,配置实现自动化同步,虚机宕机之后不需要配置的补发,快速提供业务。
附图说明
22.构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
23.图1为本发明实施例所述的一种高可用nat网关设计方案示意图;
24.图2为本发明实施例所述的执行步骤示意图。
具体实施方式
25.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
26.下面将参考附图并结合实施例来详细说明本发明。
27.vpc(virtual private cloud)是用户基于云服务提供商申请的一个自定义的,私密的,隔离的网络环镜。用户云上的业务均基于vpc,在vpc内进行业务的处理。如果用户想与外网交互,有一种方式是通过nat网关实现。用户通过nat网关功能实现访问因特网的功能,从而提供业务。当前方案nat网关的功能是在硬件防火墙上实现的,硬件防火墙有规格的瓶颈,通过开源的软实现来解除对硬件设备的依赖。从而提高网络架构的灵活性。但是开源的nat有一个缺陷,无法实现高可用,只是单机版。如果运行nat的虚机宕机了,则当前vpc的业务无法访问外网,影响用户的业务。
28.为了解决单台nat宕机影响业务的问题,提出了一种主备方案。即创建n(n》=2)台虚机,这n台虚机运行到不同的服务器上,并同时运行nat的功能。这n台虚机只有一台对外提供服务,其余作为备份。由控制面进行对leader选举。虚机之间通过预装agent实现配置的自动同步。控制面下发配置到leader虚机上。并将slave虚机的ip地址告知leader虚机。leader不断通知slave虚机同步配置,保证n台虚机之间配置的一致性。由控制面不断监控底层虚机的状态,如果虚机出现宕机或者异常,则重新选举leader,并将有问题的虚机移除,新的leader虚机开始提供服务。待虚机修复完成之后,加入到此集群中,并作为slave虚
机使用。从而实现nat功能的高可用。
29.其中有两个核心点,第一:如何进行选举,这里采用快速定位的方式,即第一个ping通且返回,即作为lea的人。第二:如何进行监控虚机的状态,控制面有个监控模块,通过不断的获取虚机里面预置的服务,获取虚机的状态,出现异常则进行重新选举。
30.流程图如2所示,步骤如下:
31.1、创建nat产品,并创建nat服务的集群,nat服务运行在不同的服务器上。
32.2、通过选举模块选出leader,并对每个nat服务进行角色划分。
33.3、在leader服务上进行nat配置的下发,并将此配置push到其他的备用服务上。
34.4、控制面的监控模块不断的监控虚机的状态,包括链路的连通性。若周期内状态正常,则进行下一个周期的监测
35.5、如果发现leader虚机异常,则立即进行选举工作,将业务切换到新的leader上进行提供服务,由于配置都是同步的,不需要对配置的进行补发。
36.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
37.在本技术所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
38.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
39.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献