CN110808857B - 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质 - Google Patents

实现Kubernetes集群的网络互通方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN110808857B
CN110808857B CN201911054959.2A CN201911054959A CN110808857B CN 110808857 B CN110808857 B CN 110808857B CN 201911054959 A CN201911054959 A CN 201911054959A CN 110808857 B CN110808857 B CN 110808857B
Authority
CN
China
Prior art keywords
node
network
target node
target
belongs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911054959.2A
Other languages
English (en)
Other versions
CN110808857A (zh
Inventor
吴陈智
王薇
陈勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Qianhai Huanrong Lianyi Information Technology Service Co Ltd
Original Assignee
Shenzhen Qianhai Huanrong Lianyi Information Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Qianhai Huanrong Lianyi Information Technology Service Co Ltd filed Critical Shenzhen Qianhai Huanrong Lianyi Information Technology Service Co Ltd
Priority to CN201911054959.2A priority Critical patent/CN110808857B/zh
Publication of CN110808857A publication Critical patent/CN110808857A/zh
Application granted granted Critical
Publication of CN110808857B publication Critical patent/CN110808857B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例公开了一种实现Kubernetes集群的网络互通方法、装置、计算机设备以及存储介质,所述方法包括:实时监控Kubernetes集群的节点信息;若接收到用户针对Kubernetes集群的节点操作指令,根据节点操作指令确定用户操作Kubernetes集群中的目标节点,并判断用户操作目标节点的节点操作类型,节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;根据判断出的节点操作类型执行预先设置的节点操作策略以实现Kubernetes集群的网络互通。本发明能够实现Kubernetes集群的内外网络互通,不但对于私有云、公有云本身可以实现网络互通,而且在混合私有云与公有云的情况也可以实现网络互通。

Description

实现Kubernetes集群的网络互通方法、装置、设备以及存储 介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种实现Kubernetes集群的网络互通方法、装置、计算机设备以及存储介质。
背景技术
在目前大量公司使用混合云的情况下,无法通过监测Kubernetes集群节点信息的变化以实现集群的网络互通,因此,如何在私有云与公有云中设置节点操作策略以实现集群内外网络互通是当下业务发展需求最紧迫的问题。本方案针对这一情况提出了一种实现Kubernetes集群的网络互通的解决方案。
发明内容
有鉴于此,本发明实施例提供一种实现Kubernetes集群的网络互通方法、装置、计算机设备以及存储介质,通过设置节点操作策略能够提高Kubernetes集群中节点增删改操作的效率,实现自动化节点配置操作。
一方面,本发明实施例提供了一种实现Kubernetes集群的网络互通方法,该方法包括:
实时监控Kubernetes集群的节点信息;
若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
另一方面,本发明实施例提供了一种实现Kubernetes集群的网络互通装置,所述装置包括:
实时监控单元,用于实时监控Kubernetes集群的节点信息;
确定判断单元,用于若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
执行单元,用于根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
又一方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的实现Kubernetes集群的网络互通方法。
再一方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上计算机程序,所述一个或者一个以上计算机程序可被一个或者一个以上的处理器执行,以实现如上所述的实现Kubernetes集群的网络互通方法。
本发明实施例提供一种实现Kubernetes集群的网络互通方法、装置、计算机设备以及存储介质,其中方法包括:实时监控Kubernetes集群的节点信息;若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。本发明通过设置节点操作策略能够提高Kubernetes集群中节点增删改操作的效率,实现自动化节点配置操作。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种实现Kubernetes集群的网络互通方法的应用场景示意图;
图2是本发明实施例提供的一种实现Kubernetes集群的网络互通方法的示意流程图;
图3是本发明实施例提供的一种实现Kubernetes集群的网络互通方法的另一示意流程图;
图4是本发明实施例提供的一种实现Kubernetes集群的网络互通方法的另一示意流程图;
图5是本发明实施例提供的一种实现Kubernetes集群的网络互通方法的另一示意流程图;
图6是本发明实施例提供的一种实现Kubernetes集群的网络互通装置的示意性框图;
图7是本发明实施例提供的一种实现Kubernetes集群的网络互通装置的另一示意性框图;
图8是本发明实施例提供的一种实现Kubernetes集群的网络互通装置的另一示意性框图;
图9是本发明实施例提供的一种实现Kubernetes集群的网络互通装置的另一示意性框图;
图10是本发明实施例提供的一种计算机设备的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的一种实现Kubernetes集群的网络互通方法的应用场景示意图,图2为本发明实施例提供的一种实现Kubernetes集群的网络互通方法的流程示意图。本发明实施例提供的实现Kubernetes集群的网络互通方法,可应用在如图1的应用环境中,其中,客户端(计算机设备)通过网络与服务器进行通信。客户端发送Kubernetes集群的节点操作指令到服务端,服务端获取Kubernetes集群的节点操作指令后,根据节点操作指令确定Kubernetes集群中的目标节点,并判断目标节点的节点操作类型,从而根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。其中,客户端(计算机设备)可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
请参阅图2,图2为本发明实施例提供的一种实现Kubernetes集群的网络互通方法的示意流程图。如图2所示,该方法包括以下步骤S101~S103。
S101,实时监控Kubernetes集群的节点信息。
在本发明实施例中,Kubernetes集群的节点指的是Kubernetes集群中发生数据传入和输出的点,Kubernetes指的是一个可移植的、可扩展的、用于管理容器化工作负载和服务的平台,Kubernetes集群支持声明式配置和自动化配置。本实施例可以使用node-exporter、prometheus、grafana对Kubernetes集群的节点信息进行实时监控,其中,node-exporter指的是prometheus官方提供的数据采集组件,prometheus是一个开源监控***,它前身是SoundCloud的警告工具包,grafana是一款采用go语言编写的开源应用,具体的是监控Kubernetes集群中的节点信息是否发生增删改的操作,再针对具体的操作类型做出对应的响应策略,使用node-exporter、prometheus、grafana对Kubernetes集群的节点信息进行实时监控的具体过程为:node-exporter组件负责收集节点上的metrics监控数据,并将数据推送给prometheus,prometheus负责存储这些数据,grafana将这些数据通过网页以图形的形式展现给用户。
S102,若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作。
在本发明实施例中,所述节点操作指令包括用户所操作的目标节点的节点名称、以及所述目标节点的节点操作类型,其中,节点操作类型具体包括节点增加操作、节点删除操作以及节点修改操作。例如:通过node-exporter、prometheus、grafana对Kubernetes集群的节点信息进行实时监控之后,通过grafana将节点信息通过网页以图形的形式展现给用户,若用户此时需要对节点进行操作,可以直接通过grafana提供的网页向Kubernetes集群的节点发出节点操作指令以使Kubernetes集群执行用户所发出的节点操作指令。在一具体实施方式中,所述节点操作指令可以为节点增加操作,即在Kubernetes集群中增加节点,所述节点操作指令可以为节点删除操作,即在Kubernetes集群中对删除节点,所述节点操作指令还可以为节点修改操作,即在Kubernetes集群中对节点进行修改。
S103,根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
在本发明实施例中,根据不同的节点操作类型预先设置不同的节点操作策略,例如,对于节点增加操作,会根据节点所归属的不同的网络进行策略配置,在私有云网络中,通过控制中心新增交换机与节点的IBGP((Internal Border Gateway Protocol,内部BGP协议)配置以及新增节点calico配置,其中,Calico是一个用于容器、虚拟机和基于本机主机的工作负载的开源网络和网络安全解决方案,在公有云网络中,通过控制中心新增对应的节点路由;对于节点删除操作,会根据节点所归属的不同的网络进行策略配置,在私有云网络中,通过控制中心删除所属交换机与节点的IBGP配置,在公有云网络中,通过控制中心删除节点所属的节点路由;对于节点修改操作,会根据节点所归属的不同的网络进行策略配置,在私有云网络中,通过控制中心删除所属交换机与节点的IBGP配置,并且通过控制中心新增交换机与节点的IBGP配置以及新增节点calico配置,在公有云网络中,通过控制中心删除节点所属的节点路由,并且通过控制中心新增对应的节点路由。本实施例通过在私有云网络与公有云网络中针对不同的节点变化分别进行不同的策略配置以实现Kubernetes集群的内外网络互通,本实施例不但对于私有云、公有云本身可以实现网络互通,而且在混合私有云与公有云的情况也可以实现网络互通。
在一实施例中,请参阅图3,所述步骤S103包括步骤S201~S204:
S201,若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关。
具体的,若所述目标节点的操作类型为节点增加操作,说明是要在Kubernetes集群中增加节点,则通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
S202,根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
具体的,在本实施例中,私有云网络指的是交换机,公有云网络指的是路由表,所述根据所述节点IP和节点网关判断所述目标节点所属的网络,例如:所获取的目标节点的节点IP和节点网关分别为“IP:172.17.90.22”,“网关:172.17.90.1”,若控制中心存在IP为172.17.90.1表示交换机的IP,则该目标节点所属的网络为私有云网络,相反的,控制中心调用API访问公有云主机查询接口获取主机IP列表,并进一步调用API访问公有云VPC接口,查询该节点所属路由表,则该目标节点所属的网络为公有云网络。
S203,若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置,例如:目标节点的IP为172.10.1.10,Hostname为k8s-node-10,所属交换机的ASN为63401,所属交换机的IP为172.10.1.1,则进行如下IBGP配置:BGP设置为63401,新增calico配置。通过控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置,能够实现所述Kubernetes集群的网络互通。
S204,若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由,例如:目标节点IP为172.10.1.10,子网段为10.10.1.2/24,则在所属路由表新增节点路由10.10.1.2/24指向172.10.1.10。通过控制所述目标节点在目标节点的路由表中新增节点路由,能够实现所述Kubernetes集群的网络互通。
在一实施例中,请参阅图4,所述步骤S103包括步骤S301~S304:
S301,若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关。
具体的,若所述目标节点的操作类型为节点删除操作,说明是要在Kubernetes集群中删除节点,则通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
S302,根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
具体的,在本实施例中,私有云网络指的是交换机,公有云网络指的是路由表,所述根据所述节点IP和节点网关判断所述目标节点所属的网络,例如:所获取的目标节点的节点IP和节点网关分别为“IP:172.17.90.22”,“网关:172.17.90.1”,若控制中心存在IP为172.17.90.1表示交换机的IP,则该目标节点所属的网络为私有云网络,相反的,控制中心调用API访问公有云主机查询接口获取主机IP列表,并进一步调用API访问公有云VPC接口,查询该节点所属路由表,则该目标节点所属的网络为公有云网络。
S303,若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,例如:节点的IP为172.10.1.10,Hostname为k8s-node-10,所属交换机的ASN为63401,所属交换机的IP为172.10.1.1,则进下如下命令:undopeer172.10.1.10as-number63401,即删除所述目标节点所属的节点交换机和节点的IBGP配置。本实施例通过在私有云网络中删除所述目标节点所属的节点交换机和节点的IBGP配置,能够实现所述Kubernetes集群的网络互通。
S304,若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,例如:节点的IP为172.10.1.10,子网段为10.10.1.2/24,则在所属路由表删除路由10.10.1.2/24指向172.10.1.10,即删除所述目标节点的节点路由。本实施例通过在公有云网络中删除所述目标节点的节点路由,能够实现所述Kubernetes集群的网络互通。
在一实施例中,请参阅图5,所述步骤S103包括步骤S401~S404:
S401,若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关。
具体的,若所述目标节点的操作类型为节点修改操作,说明是要在Kubernetes集群中修改节点,则通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
S402,根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
具体的,在本实施例中,私有云网络指的是交换机,公有云网络指的是路由表,所述根据所述节点IP和节点网关判断所述目标节点所属的网络,例如:所获取的目标节点的节点IP和节点网关分别为“IP:172.17.90.22”,“网关:172.17.90.1”,若控制中心存在IP为172.17.90.1表示交换机的IP,则该目标节点所属的网络为私有云网络,相反的,控制中心调用API访问公有云主机查询接口获取主机IP列表,并进一步调用API访问公有云VPC接口,查询该节点所属路由表,则该目标节点所属的网络为公有云网络。
S403,若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置,例如:节点的IP为172.10.1.10,Hostname为k8s-node-10,所属交换机的ASN为63401,所属交换机的IP为172.10.1.1,则进下如下命令:undopeer172.10.1.10as-number63401,即删除所述目标节点所属的节点交换机和节点的IBGP配置,目标节点的IP为172.10.1.10,Hostname为k8s-node-10,所属交换机的ASN为63401,所属交换机的IP为172.10.1.1,则进行如下IBGP配置:BGP设置为63401,新增calico配置。本实施例通过在私有云网络中删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置,能够实现所述Kubernetes集群的网络互通。
S404,若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
具体的,若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由,例如:节点的IP为172.10.1.10,子网段为10.10.1.2/24,则在所属路由表删除路由10.10.1.2/24指向172.10.1.10,即删除所述目标节点的节点路由;目标节点IP为172.10.1.10,子网段为10.10.1.2/24,则在所属路由表新增节点路由10.10.1.2/24指向172.10.1.10。本实施例通过在公有云网络中删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由,能够实现所述Kubernetes集群的网络互通。
由以上可见,本发明实施例通过实时监控Kubernetes集群的节点信息;若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。本发明能够实现Kubernetes集群的内外网络互通,不但对于私有云、公有云本身可以实现网络互通,而且在混合私有云与公有云的情况也可以实现网络互通。
请参阅图6,对应上述一种实现Kubernetes集群的网络互通方法,本发明实施例还提出一种实现Kubernetes集群的网络互通装置,该装置100包括:实时监控单元101、确定判断单元102、执行单元103。
其中,实时监控单元101,用于实时监控Kubernetes集群的节点信息。
确定判断单元102,用于若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作。
执行单元103,用于根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
请参阅图7,所述执行单元103,包括:
第一获取单元103a,用于若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关。
第一判断单元103b,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
第一控制单元103c,用于若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通。
第二控制单元103d,用于若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通。
请参阅图8,所述所述执行单元103,包括:
第二获取单元103e,用于若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关。
第二判断单元103f,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
第一删除单元103g,用于若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通。
第二删除单元103h,用于若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通。
请参阅图9,所述执行单元103,包括:
第三获取单元103i,用于若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关。
第三判断单元103j,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络。
第一执行子单元103k,用于若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通。
第二执行子单元103n,用于若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
由以上可见,本发明实施例通过实时监控Kubernetes集群的节点信息;若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。本发明能够实现Kubernetes集群的内外网络互通,不但对于私有云、公有云本身可以实现网络互通,而且在混合私有云与公有云的情况也可以实现网络互通。
上述实现Kubernetes集群的网络互通装置与上述实现Kubernetes集群的网络互通方法一一对应,其具体的原理和过程与上述实施例所述方法相同,不再赘述。
上述实现Kubernetes集群的网络互通装置可以实现为一种计算机程序的形式,计算机程序可以在如图10所示的计算机设备上运行。
图10为本发明一种计算机设备的结构组成示意图。该设备可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑以及台式电脑等电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。参照图10,该计算机设备500包括通过***总线501连接的处理器502、非易失性存储介质503、内存储器504和网络接口505。其中,该计算机设备500的非易失性存储介质503可存储操作***5031和计算机程序5032,该计算机程序5032被执行时,可使得处理器502执行一种实现Kubernetes集群的网络互通方法。该计算机设备500的处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序被处理器执行时,可使得处理器502执行一种实现Kubernetes集群的网络互通方法。计算机设备500的网络接口505用于进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502执行所述计算机程序时实现如下操作:
实时监控Kubernetes集群的节点信息;
若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述获取所述目标节点的节点IP和节点网关,包括:
通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
本领域技术人员可以理解,图10中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图10所示实施例一致,在此不再赘述。
本发明提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者一个以上计算机程序,所述一个或者一个以上计算机程序可被一个或者一个以上的处理器执行,以实现以下步骤:
实时监控Kubernetes集群的节点信息;
若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
在一个实施例中,所述获取所述目标节点的节点IP和节点网关,包括:
通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
本发明前述的存储介质包括:磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等各种可以存储程序代码的介质。
本发明所有实施例中的单元可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application Specific IntegratedCircuit,专用集成电路)来实现。
本发明实施例实现Kubernetes集群的网络互通方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例实现Kubernetes集群的网络互通装置中的单元可以根据实际需要进行合并、划分和删减。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (5)

1.一种实现Kubernetes集群的网络互通方法,其特征在于,所述方法包括:
实时监控Kubernetes集群的节点信息;
若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通;
其中,所述根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通,包括:
若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通;
若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通;
若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关;
根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通;
若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
2.如权利要求1所述的方法,其特征在于,所述获取所述目标节点的节点IP和节点网关,包括:
通过调用预设API访问公有云VPC接口以获取所述目标节点的节点IP和节点网关。
3.一种实现Kubernetes集群的网络互通装置,其特征在于,所述装置包括:
实时监控单元,用于实时监控Kubernetes集群的节点信息;
确定判断单元,用于若接收到用户针对Kubernetes集群的节点操作指令,根据所述节点操作指令确定用户操作所述Kubernetes集群中的目标节点,并判断用户操作所述目标节点的节点操作类型,所述节点操作类型包括节点增加操作、节点删除操作以及节点修改操作;
执行单元,用于根据判断出的节点操作类型执行预先设置的节点操作策略以实现所述Kubernetes集群的网络互通;
其中,所述执行单元,包括:
第一获取单元,用于若用户操作所述目标节点的操作类型为节点增加操作,获取所述目标节点的节点IP和节点网关;
第一判断单元,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
第一控制单元,用于若所述目标节点所属的网络为私有云网络,控制所述目标节点新增节点交换机、节点的IBGP配置以及节点的calico配置以实现所述Kubernetes集群的网络互通;
第二控制单元,用于若所述目标节点所属的网络为公有云网络,控制所述目标节点在目标节点的路由表中新增节点路由以实现所述Kubernetes集群的网络互通;
第二获取单元,用于若用户操作所述目标节点的操作类型为节点删除操作,获取所述目标节点的节点IP和节点网关;
第二判断单元,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
第一删除单元,用于若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置以实现所述Kubernetes集群的网络互通;
第二删除单元,用于若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由以实现所述Kubernetes集群的网络互通;
第三获取单元,用于若用户操作所述目标节点的操作类型为节点修改操作,获取所述目标节点的节点IP和节点网关;
第三判断单元,用于根据所述节点IP和节点网关判断所述目标节点所属的网络,所述网络包括私有云网络和公有云网络;
第一执行子单元,用于若所述目标节点所属的网络为私有云网络,删除所述目标节点所属的节点交换机和节点的IBGP配置,并控制在所述目标节点的位置中增加新节点交换机、新节点的IBGP配置以及新节点的calico配置以实现所述Kubernetes集群的网络互通;
第二执行子单元,用于若所述目标节点所属的网络为公有云网络,删除所述目标节点的节点路由,并控制在所述目标节点的节点路由位置中增加新节点路由以实现所述Kubernetes集群的网络互通。
4.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-2任一项所述的实现Kubernetes集群的网络互通方法。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者一个以上计算机程序,所述一个或者一个以上计算机程序可被一个或者一个以上的处理器执行,以实现如权利要求1-2任一项所述的实现Kubernetes 集群的网络互通方法。
CN201911054959.2A 2019-10-31 2019-10-31 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质 Active CN110808857B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911054959.2A CN110808857B (zh) 2019-10-31 2019-10-31 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911054959.2A CN110808857B (zh) 2019-10-31 2019-10-31 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN110808857A CN110808857A (zh) 2020-02-18
CN110808857B true CN110808857B (zh) 2022-06-07

Family

ID=69489921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911054959.2A Active CN110808857B (zh) 2019-10-31 2019-10-31 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN110808857B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113364727B (zh) * 2020-03-05 2023-04-18 北京金山云网络技术有限公司 容器集群***、容器控制台和服务器
CN112199164A (zh) * 2020-10-19 2021-01-08 国网新疆电力有限公司信息通信公司 一种保证容器镜像一致性的方法
CN113037655A (zh) * 2021-03-02 2021-06-25 浪潮云信息技术股份公司 一种实现多cpu架构容器和虚机网络互通的方法
CN113572831B (zh) * 2021-07-21 2024-03-15 重庆星环人工智能科技研究院有限公司 Kubernetes集群间的通信方法、计算机设备及介质
CN114143316B (zh) * 2021-11-30 2024-03-19 招商局金融科技有限公司 多租户网络通信方法、装置、容器节点及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101378348B1 (ko) * 2013-06-10 2014-03-27 남도정보통신(주) 프라이빗 클라우드 인프라 기반 하둡 클러스터의 기본 프로토타입
CN106533839A (zh) * 2016-11-30 2017-03-22 郑州云海信息技术有限公司 一种混合云的应用节点监控方法及装置
CN107734035A (zh) * 2017-10-17 2018-02-23 华南理工大学 一种云计算环境下的虚拟集群自动伸缩方法
CN109067828A (zh) * 2018-06-22 2018-12-21 杭州才云科技有限公司 基于Kubernetes和OpenStack容器云平台多集群构建方法、介质、设备
CN109104305A (zh) * 2018-07-26 2018-12-28 广东浪潮大数据研究有限公司 一种节点增加方法及相关装置
CN109936629A (zh) * 2019-02-27 2019-06-25 山东浪潮云信息技术有限公司 一种混合云网络互连方法及***
CN109981351A (zh) * 2019-03-06 2019-07-05 浪潮通用软件有限公司 一种私有云部署方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101378348B1 (ko) * 2013-06-10 2014-03-27 남도정보통신(주) 프라이빗 클라우드 인프라 기반 하둡 클러스터의 기본 프로토타입
CN106533839A (zh) * 2016-11-30 2017-03-22 郑州云海信息技术有限公司 一种混合云的应用节点监控方法及装置
CN107734035A (zh) * 2017-10-17 2018-02-23 华南理工大学 一种云计算环境下的虚拟集群自动伸缩方法
CN109067828A (zh) * 2018-06-22 2018-12-21 杭州才云科技有限公司 基于Kubernetes和OpenStack容器云平台多集群构建方法、介质、设备
CN109104305A (zh) * 2018-07-26 2018-12-28 广东浪潮大数据研究有限公司 一种节点增加方法及相关装置
CN109936629A (zh) * 2019-02-27 2019-06-25 山东浪潮云信息技术有限公司 一种混合云网络互连方法及***
CN109981351A (zh) * 2019-03-06 2019-07-05 浪潮通用软件有限公司 一种私有云部署方法

Also Published As

Publication number Publication date
CN110808857A (zh) 2020-02-18

Similar Documents

Publication Publication Date Title
CN110808857B (zh) 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质
US20220377045A1 (en) Network virtualization of containers in computing systems
US11258667B2 (en) Network management method and related device
US10257115B2 (en) Cloud-based service resource provisioning based on network characteristics
US20140355441A1 (en) Method and apparatus of delivering assured services over unreliable internet infrastructure by using virtual overlay network architecture over a public cloud backbone
US10333725B2 (en) Overlay network with optimized packet flooding
US20210112119A1 (en) High Availability and High Utilization Cloud Data Center Architecture for Supporting Telecommunications Services
US11177974B2 (en) Consistent provision of member node group information on virtual overlay network
CN109964507A (zh) 网络功能的管理方法、管理单元及***
CN107086937B (zh) 一种监控方法及设备
US11095532B2 (en) Configuration and/or deployment of a service based on location information and network performance indicators of network devices that are to be used to support the service
CN112714146B (zh) 一种资源调度方法、装置、设备及计算机可读存储介质
US10231269B2 (en) Dynamic generation of geographically bound manet IDs
CN114401502B (zh) 配置方法、装置、电子设备及存储介质
CN115225634B (zh) 虚拟网络下的数据转发方法、装置及计算机程序产品
CN112994915A (zh) 一种sd-wan业务编排方法、***、设备和存储介质
CN107404410B (zh) 一种云环境下构建虚拟网络功能平台的方法及装置
CN114979128A (zh) 跨区域通信方法、装置及电子设备
CN105812434A (zh) 用户手持设备虚拟化后的业务链控制方法及装置
US20200127923A1 (en) System and method of performing load balancing over an overlay network
CN106161551B (zh) 一种控制虚拟机连接数的方法及装置
CN115277408B (zh) 代理配置信息的更新方法、装置、设备及存储介质
TWI723314B (zh) 通信裝置、訊務控制方法、控制裝置
CN115314448A (zh) 用于接入云网络的方法和装置、电子设备、计算机介质
CN114338774A (zh) 物联网设备的管理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant