基于SDN的Kubernetes网络管理系统与方法技术方案

技术编号:17783880 阅读:73 留言:0更新日期:2018-04-22 15:05
本申请提供了一种基于SDN的Kubernetes网络管理系统与方法,用以解决现有技术中原生Kubernetes网络管理难以支持多样化应用场景的问题。本申请实现了容器化网络及Kubernetes系统的SDN化,因此实现了网络服务的自动化,能够精确定位故障及分析故障,从而降低了运营商对资深技术人员的依赖和人员管理成本,极大提升了运维管理的工作效率,同时对于SDN技术落地提供了有效的支撑,为容器化服务及Kubernetes系统提供强有力的网络层面支持。

【技术实现步骤摘要】
基于SDN的Kubernetes网络管理系统与方法
本申请涉及信息
,尤其涉及一种基于SDN的Kubernetes网络管理系统与方法。
技术介绍
Kubernetes,也称为K8S,是一个用于自动部署的开源平台,提供了应用程序容器集群的扩展和操作,实现了以容器为中心的基础设置,因此提供了一个可跨越公共云或私有云的便携式平台。Kubernetes支持的容器网络接口为CNI的可插拔框架。SDN(SoftwareDefinedNetwork)即软件定义网络,是一种新型网络架构,是网络虚拟化的一种实现方式,其通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。目前,公知的SDN系统中缺失针对容器化及Kubernetes的网络支持,同时各大主流厂商针对SDN系统都设置了技术壁垒,使之无法大规模且广泛的进行应用,例如思科的ACI采用的是oplex协议,其属于思科的私有协议,且APIC的南向接口过于封闭,需要思科专用设备支持,无法兼容第三方设备;又如Bigswitch使用基于openflow工业标准,但其使用特定的lldp机制导致刀片服务器无法使用,同时目前也未支持容器化及Kubernetes网络架构;华为则采用的是ODL标准,目前也暂无支持容器化及Kubernetes网络技术,同时由于ODL系统架构过于复杂,对于实际使用者来说维护升级成本太大,且不容易做二次定向开发;第三方技术如calico,对于多数据中心网络的支持存在瑕疵,且非常小众化,国内用户接触甚少,无法支持大规模应用及推广。申请内容本申请的一个目的是提供一种基于SDN的Kubernetes网络管理系统与方法,用以解决现有技术中原生Kubernetes网络管理难以支持多样化应用场景的问题。为实现上述目的,本申请提供了一种基于SDN的Kubernetes网络管理系统,其中,该系统包括:控制装置,用于提供管理、控制和虚拟网络的分析功能,其中,该装置包括配置模块、控制模块和分析模块,所述配置模块用于提供应用接口服务,所述控制模块用于提供所述系统的集中控制和管理,并与虚拟路由装置协调工作,所述分析模块用于响应Kubernetes应用的网络信息查询请求;虚拟路由装置,用于提供虚拟覆盖网络,其中,该装置包括虚拟路由代理模块和虚拟路由转发模块,所述虚拟路由代理模块用于提供虚拟路由的控制,所述虚拟路由转发模块用于提供数据包转发服务。进一步地,所述配置模块用于提供北向接口、南向接口和东西向接口,所述北向接口用于与Kubernetes应用进行连接,所述南向接口用于与虚拟路由装置或者物理路由设备进行连接,所述东西向接口用于与其他对等控制装置进行连接。进一步地,所述虚拟路由转发模块用于从控制模块接收其所有的路由状态信息。进一步地,所述虚拟路由转发模块用于通过隧道技术将数据包从虚拟机转发到其他虚拟机,所述隧道技术包括MPLSoverGRE/UDP隧道和/或VXLAN隧道。进一步地,所述虚拟路由装置用于分发虚拟机和Kubernetes节点间的映射。进一步地,所述虚拟路由装置使用mplsdUDP封装来实现虚拟机间的链接。此外,本申请还提供了一种基于SDN的Kubernetes网络管理方法,其中,该方法包括:所述控制装置中的分析模块监听Kubernetes应用中的北向接口API消息;在接收到Kubernetes应用中的北向接口API消息时,所述分析模块解析所述消息获取对虚拟网络的操作请求;所述分析模块将解析得到的虚拟网络操作请求提交给所述控制装置中的控制模块;所述控制模块通过所述虚拟路由装置将虚拟网络映射到物理网络,并在相应物理网络设备上执行网络请求。进一步地,该方法还包括:将物理网络设备上执行网络请求的结果返回给Kubernetes应用。进一步地,所述分析模块解析所述消息获取对虚拟网络的操作请求,包括:所述分析模块从北向接口API消息中获取要查询的操作请求,并通过数据库查询获取对虚拟网络的操作请求。进一步地,所述控制模块通过所述虚拟路由装置将虚拟网络映射到物理网络,包括:所述控制模块将虚拟网络操作请求提交给所述虚拟路由装置;所述虚拟路由装置获取所述虚拟网络操作请求中的虚拟网络,并通过查询虚拟网络与物理网络间的映射将虚拟网络操作请求转换为物理网络操作请求;所述虚拟路由装置将所述物理网络操作请求通过虚拟路由转发模块转发到对应的物理网络设备上执行。与现有技术相比,本申请实现了容器化网络及kubernetes系统的SDN化,因此实现了网络服务的自动化,能够精确定位故障及分析故障,从而降低了运营商对资深技术人员的依赖和人员管理成本,极大提升了运维管理的工作效率,同时对于SDN技术落地提供了有效的支撑,为容器化服务及Kubernetes系统提供强有力的网络层面支持。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1为本申请实施例中网络管理系统的功能结构图;图2为本申请实施例中网络管理方法的流程图;图3为本申请实施例提供的一种优选的与Kubernetes系统的交互示意图;图4为本申请实施例的monster系统的逻辑架构示意图;图5为本申请实施例的配置模块的逻辑示意图;图6为本申请实施例的控制模块的逻辑示意图;图7为本申请实施例的分析模块的逻辑示意图;图8为本申请实施例的虚拟路由装置的逻辑示意图。附图标记说明:1、基于SDN的Kubernetes网络管理系统,2、控制装置,21、配置模块,22、控制模块,23、分析模块,3、虚拟路由装置,31、虚拟路由代理模块,32、虚拟路由转发模块。具体实施方式下面结合附图对本申请作进一步详细描述。在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。本申请实施例提供了一种基于SDN的Kubernetes网络管理系统,如图1所示,该系统具体包括用于提供管理、控制和虚拟网络的分析功能的控制装置和用于提供虚拟覆盖网络的虚拟路由装置。其中的控制装置包括配置模块、控制模块和分析模块,所述配置模块用于提供应用接口服务,所述控制模块用于本文档来自技高网...
基于SDN的Kubernetes网络管理系统与方法

【技术保护点】
一种基于SDN的Kubernetes网络管理系统,其中,该系统包括:控制装置,用于提供管理、控制和虚拟网络的分析功能,其中,该装置包括配置模块、控制模块和分析模块,所述配置模块用于提供应用接口服务,所述控制模块用于提供所述系统的集中控制和管理,并与虚拟路由装置协调工作,所述分析模块用于响应Kubernetes应用的网络信息查询请求;虚拟路由装置,用于提供虚拟覆盖网络,其中,该装置包括虚拟路由代理模块和虚拟路由转发模块,所述虚拟路由代理模块用于提供虚拟路由的控制,所述虚拟路由转发模块用于提供数据包转发服务。

【技术特征摘要】
1.一种基于SDN的Kubernetes网络管理系统,其中,该系统包括:控制装置,用于提供管理、控制和虚拟网络的分析功能,其中,该装置包括配置模块、控制模块和分析模块,所述配置模块用于提供应用接口服务,所述控制模块用于提供所述系统的集中控制和管理,并与虚拟路由装置协调工作,所述分析模块用于响应Kubernetes应用的网络信息查询请求;虚拟路由装置,用于提供虚拟覆盖网络,其中,该装置包括虚拟路由代理模块和虚拟路由转发模块,所述虚拟路由代理模块用于提供虚拟路由的控制,所述虚拟路由转发模块用于提供数据包转发服务。2.根据权利要求1所述的网络管理系统,其中,所述配置模块用于提供北向接口、南向接口和东西向接口,所述北向接口用于与Kubernetes应用进行连接,所述南向接口用于与虚拟路由装置或者物理路由设备进行连接,所述东西向接口用于与其他对等控制装置进行连接。3.根据权利要求1所述的网络管理系统,其中,所述虚拟路由转发模块用于从控制模块接收其所有的路由状态信息。4.根据权利要求1所述的网络管理系统,其中,所述虚拟路由转发模块用于通过隧道技术将数据包从虚拟机转发到其他虚拟机,所述隧道技术包括MPLSoverGRE/UDP隧道和/或VXLAN隧道。5.根据权利要求1所述的网络管理系统,其中,所述虚拟路由装置用于分发虚拟机和Kubernetes节点间的映射。6.根据权利要求1所述的网络管理...

【专利技术属性】
技术研发人员:钱誉
申请(专利权)人:上海数讯信息技术有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1