本技术涉及云服务,特别涉及一种云内外通信方法,还涉及一种云内外通信装置、电子设备以及计算机可读存储介质。
背景技术:
1、在当前云计算、云服务大热的时代,公司业务和个人业务都在推行上云服务,云服务提供了虚拟机化服务,业务运行离不开网络转发,数据的快速转发奠定了云服务性能的基础。当云服务内部虚拟机需要访问云外时,出于安全考虑,根据隔离机制(云内和云外不能直接互通),需要通过一个特定的网络节点进行特殊处理之后才能访问云外,同理,云外访问云内也需要经过网络节点。
2、相关技术中,云内虚拟机与互联网通信一般采用路由方式。然而,路由方式需要人工在物理路由设备中添加路由表项以打通云内外网络,是依赖手工配置的静态路由来打通链路,对于云专线场景,即直接使用云内ip地址访问其他云数据中心的场景中,就需要按照地址规划,在物理路由上配置相应的静态路由表项。显然,该种实现方式一方面要求运维人员要熟练掌握不同厂家设备的配置方法,另一方面,随着需要打通的云内外网络越多,重复性的人工操作也是线性叠加的,配置效率不高且容易出错。
3、因此,如何实现更为准确高效的路由配置,进而实现更为快速高效的云内外通信是本领域技术人员亟待解决的问题。
技术实现思路
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、在本技术的一个实施例中,通过bgp技术实现了云内网络节点中路由发布组件与交换机之间邻居关系的创建,使得路由发布组件与交换机之间基于邻居关系实现各类数据信息(各类路由数据、各类边界网关协议配置数据等)的实时同步,有效地提高了路由发布效率,从而有助于实现更为快速高效的云内外通信。此外,只需集成bgp插件即实现了多种调用接口服务,设备布局更为简单高效。
42、本技术所提供的云内外通信装置、电子设备以及计算机可读存储介质,同样具有上述技术效果,本技术在此不再赘述。
1.一种云内外通信方法,其特征在于,应用于云内网络节点,云内控制节点与交换机均连接于所述云内网络节点,所述交换机还连接有云内计算节点;其中,所述云内控制节点中设置有事件监控组件,所述云内网络节点中设置有事件响应组件、路由组件、路由发布组件;所述方法包括:
2.根据权利要求1所述的云内外通信方法,其特征在于,所述通过所述事件响应组件基于所述路由数据生成路由变更信息,并将所述路由变更信息发布至所述路由组件,包括:
3.根据权利要求2所述的云内外通信方法,其特征在于,所述通过所述路由发布组件利用所述路由组件中的路由变更信息对所述交换机中的路由表项进行更新,包括:
4.根据权利要求1至3任意一项所述的云内外通信方法,其特征在于,所述云内控制节点还设置有边界网关协议插件,所述边界网关协议插件用于为所述云内控制节点提供调用接口服务;
5.根据权利要求4所述的云内外通信方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的云内外通信方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的云内外通信方法,其特征在于,所述方法还包括:
8.一种云内外通信装置,其特征在于,应用于云内网络节点,云内控制节点与交换机均连接于所述云内网络节点,所述交换机还连接有云内计算节点;其中,所述云内控制节点中设置有事件监控组件,所述云内网络节点中设置有事件响应组件、路由组件、路由发布组件;所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的云内外通信方法的步骤。
