CN107995326B - 一种容器网络的管理方法及装置 - Google Patents

一种容器网络的管理方法及装置 Download PDF

Info

Publication number
CN107995326B
CN107995326B CN201711329012.9A CN201711329012A CN107995326B CN 107995326 B CN107995326 B CN 107995326B CN 201711329012 A CN201711329012 A CN 201711329012A CN 107995326 B CN107995326 B CN 107995326B
Authority
CN
China
Prior art keywords
network
container
network card
mode
network mode
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
CN201711329012.9A
Other languages
English (en)
Other versions
CN107995326A (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.)
Beijing Sohu New Media Information Technology Co Ltd
Original Assignee
Beijing Sohu New Media Information Technology 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 Beijing Sohu New Media Information Technology Co Ltd filed Critical Beijing Sohu New Media Information Technology Co Ltd
Priority to CN201711329012.9A priority Critical patent/CN107995326B/zh
Publication of CN107995326A publication Critical patent/CN107995326A/zh
Application granted granted Critical
Publication of CN107995326B publication Critical patent/CN107995326B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5061Pools of addresses

Landscapes

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

Abstract

本发明公开了一种容器网络的管理方法,包括读取容器的网络模式,当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式,将容器的IP配置为可用IP,为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。在本发明中当容器的网络要求较高时,为这类容器分配一个集群外部可访问的局域网IP,该IP会与容器所在主机的IP处在同一网段,满足了需要大量端口且对网络性能要求较高的容器的需求。

Description

一种容器网络的管理方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种容器网络的管理方法及装置。
背景技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现化。容器是完全使用沙箱机制,相互之间不会有任何访问接口。Kubernetes是容器集群管理系统,是一个开源的容器编排管理平台。其主要功能如下:使用docker容器对应用和应用运行的环境变量进行包装实例化、运行并调度。以集群的方式编排、管理跨机器的容器为docker容器配置网络,解决容器之间方位的问题Kubernetes的自我修复机制使容器总是运行在用户期望的状态。
kubernetes配合docker容器技术可以很好的做到,应用的隔离和编排,但容器之间并没有接口使他们可以互相访问和传递数据,所以kubernetes定义了CNI协议,任何应用在实现了CNI协议以后可以供kubernetes调用进行容器网络的配置和搭建。传统的CNI(Conteinre Network Interface,容器网络接口)插件如flannel的做法是建立一层overlay网络,通过用UDP(User Datagram Protocol,用户数据报协议)封装IP包的方式,传输容器的IP数据包,这样带来的问题是主机在封包、拆包和转发时性能损耗严重,无法满足对网络吞吐量高的应用的需求。虽然docker支持通过使用host网络模式,以与宿主机共用IP的方式免去封包拆包的过程,避免这部分损耗,但当host网络模式的容器太多时又会消耗大量主机的端口资源,如果单个容器需要占用主机很多端口时,这个问题会变得更加严重。
因此,如何满足需要大量端口且对网络性能要求较高的容器的需求成为了本领域技术人员急需解决的问题。
发明内容
有鉴于此,本发明提供了一种容器网络的管理方法,当容器的网络要求较高时,为这类容器分配一个集群外部可访问的局域网IP,该IP会与容器所在主机的IP处在同一网段,满足了需要大量端口且对网络性能要求较高的容器的需求。
本发明提供了一种容器网络的管理方法,包括:
读取容器的网络模式;
当所述网络模式为第一网络模式时,从IP池中读取可用IP,所述第一网络模式为吞吐量要求高于预设阈值的网络模式;
将所述容器的IP配置为所述可用IP;
为所述容器建立网卡对,所述网卡对的一端与主机网卡相连,另一端与容器网卡相连,所述主机网卡为所述容器所在的主机与外网直连的网卡,所述容器网卡为所述容器的网卡。
优选地,所述从IP池中读取可用IP包括:
从所述IP池读取待确认IP;
向所述待确认IP发送互联网控制消息协议请求;
当预设时间内未收到所述待确认IP发送的互联网控制消息协议回应时,将所述待确认IP作为所述可用IP,否则,重新执行上述步骤读取新的待确认IP。
优选地,将所述容器的IP配置为所述可用IP时,还将所述可用IP加入已占用IP列表;为所述容器建立网卡对之后,还包括:
当所述容器被终止时,销毁所述容器的网卡对,将所述可用IP从所述已占用IP列表中删除。
优选地,还包括:
当所述网络模式为第二网络模式时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
优选地,还包括:
当所述IP池中无可用IP时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
一种容器网络的管理装置,包括网络模式读取模块、IP读取模块、IP配置模块及网卡对建立模块,其中:
所述网络模式读取模块用于读取容器的网络模式;
当所述网络模式为第一网络模式时,所述IP读取模块用于从IP池中读取可用IP,所述第一网络模式为吞吐量要求高于预设阈值的网络模式;
所述IP配置模块用于将所述容器的IP配置为所述可用IP;
所述网卡对建立模块用于为所述容器建立网卡对,所述网卡对的一端与主机网卡相连,另一端与容器网卡相连,所述主机网卡为所述容器所在的主机与外网直连的网卡,所述容器网卡为所述容器的网卡。
优选地,所述IP读取模块包括IP读取单元、请求发送单元及请求接收单元,其中:
所述IP读取单元用于从所述IP池读取待确认IP;
所述请求发送单元用于向所述待确认IP发送互联网控制消息协议请求;
所述请求接收单元用于接收所述带确认IP发送的互联网控制消息协议回应,当预设时间内未收到所述待确认IP发送的互联网控制消息协议回应时,将所述待确认IP作为所述可用IP,否则,重新执行上述步骤读取新的待确认IP。
优选地,所述IP配置模块将所述容器的IP配置为所述可用IP时,还用于还将所述可用IP加入已占用IP列表;还包括IP回收模块,当所述容器被终止时,所述IP回收模块用于销毁所述容器的网卡对,还用于将所述可用IP从所述已占用IP列表中删除。
优选地,还包括调用模块,其中:
当所述网络模式为第二网络模式时,所述调用模块用于调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
优选地,还包括调用模块,
当所述IP池中无可用IP时,所述调用模块用于调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
综上所述,本发明公开了一种容器网络的管理方法,包括读取容器的网络模式,当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式,将容器的IP配置为可用IP,为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。在本发明中当容器的网络要求较高时,为这类容器分配一个集群外部可访问的局域网IP,该IP会与容器所在主机的IP处在同一网段,满足了需要大量端口且对网络性能要求较高的容器的需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明公开的一种容器网络的管理方法的实施例1的流程图;
图2为本发明公开的一种容器网络的管理方法的实施例2的流程图;
图3为本发明公开的一种容器网络的管理方法的实施例3的流程图;
图4为本发明公开的一种容器网络的管理装置的实施例1的结构示意图;
图5为本发明公开的一种容器网络的管理装置的实施例2的结构示意图;
图6为本发明公开的一种容器网络的管理装置的实施例3的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明公开的一种容器网络的管理方法的实施例1的流程图,包括:
S101、读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
S102、当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取可用IP的信息,当发现有可用IP时,进而继续向etcd发送请求,在etcd中注册这个IP。etcd是一个分布式一致性k-v存储系统。
S103、将容器的IP配置为可用IP;
S104、为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
综上所述,本发明公开了一种容器网络的管理方法,包括读取容器的网络模式,当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式,将容器的IP配置为可用IP,为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。在本发明中当容器的网络要求较高时,为这类容器分配一个集群外部可访问的局域网IP,该IP会与容器所在主机的IP处在同一网段,满足了需要大量端口且对网络性能要求较高的容器的需求。
如图2所示,为本发明公开的一种容器网络的管理方法的实施例2的流程图,包括:
S201、读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
S202、当网络模式为第一网络模式时,从IP池读取待确认IP,第一网络模式为吞吐量要求高于预设阈值的网络模式;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取待确认IP的信息;
S203、向待确认IP发送互联网控制消息协议请求;
读取到这个待确认IP之后为了确保IP不发生冲突,会先向这个IP地址ICMP(互联网控制消息协议)请求。
S204、当预设时间内未收到待确认IP发送的互联网控制消息协议回应时,将待确认IP作为可用IP,否则,重新执行上述步骤读取新的待确认IP;
如果预设时间内没有收到ICMP回应,说明该待确认IP确实没有其他容器在使用,此待确认IP为可用IP,预设时间可为5秒。如果有回应说明此待确认IP已被占用,读取的待确认IP有误,重新向etcd发送请求IP的请求,还可上报之前错误获取IP的信息。
S205、将容器的IP配置为可用IP;
S206、为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
与实施例1相比,本实施例在配置IP之前对IP是否可用进行了再次确认,避免了IP冲突进而造成程序运行错误的问题。
如图3所示,为本发明公开的一种容器网络的管理方法的实施例3的流程图,包括:
S301、读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
S302、当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取可用IP的信息,当发现有可用IP时,进而继续向etcd发送请求,在etcd中注册这个IP。etcd是一个分布式一致性k-v存储系统。
S303、将容器的IP配置为可用IP,将可用IP加入已占用IP列表;
将已使用的可用IP加入已占用IP可以避免IP的重复使用造成的冲突。
S304、为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
S305、当容器被终止时,销毁容器的网卡对,将可用IP从已占用IP列表中删除;
与实施例1相比,本实施例还增加了资源即IP回收的功能,当容器终止后,将已建立的网卡对销毁,对原容器占用的资源及IP进行回收,避免了资源的浪费。
为进一步优化上述实施例1-3,当所述网络模式为第二网络模式时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
容器的网络模式除了第一网络模式外,还可为第二网络模式,即常规模式,此模式对网络要求较低,因此调用flannel插件的接口,为容器分配集群内可访问的IP并配置容器相关网络设置,也就是交给flannel去搭建overlay的网络环境或host的网络模式。采用flannel插件的接口为容器配置网络为现有技术,在此不再赘述。
通过对不同网络模式的容器进行不同方式的管理,既可满足网络要求较高的容器的需求,也不会因为为所有容器配置独立的IP而造成资源浪费。当然的,采用此种方式为容器配置网络时,当容器被终止时,会识别容器属于哪种网络模式,当属于host网络模式或overlay模式时,后续工作将交给flannel的组件完成网络的回收工作。
为进一步优化上述实施例1-3,当所述IP池中无可用IP时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
因为IP池中的IP有限,因此,当IP池中没有可用IP时,会向调用接口的上层用户反馈这一结果,并改用host模式或overlay的网络模式为容器配置网络。避免了因IP池中无可用IP而造成容器网络配置失败。
如图4所示,为本发明公开的一种容器网络的管理装置的实施例1的结构示意图,包括网络模式读取模块101、IP读取模块102、IP配置模块103及网卡对建立模块104,其中:
网络模式读取模块101用于读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
当网络模式为第一网络模式时,IP读取模块102用于从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取可用IP的信息,当发现有可用IP时,进而继续向etcd发送请求,在etcd中注册这个IP。etcd是一个分布式一致性k-v存储系统。
IP配置模块103用于将容器的IP配置为可用IP;
网卡对建立模块104用于为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
综上所述,本发明公开了一种容器网络的管理装置,其工作原理为读取容器的网络模式,当网络模式为第一网络模式时,从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式,将容器的IP配置为可用IP,为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。在本发明中当容器的网络要求较高时,为这类容器分配一个集群外部可访问的局域网IP,该IP会与容器所在主机的IP处在同一网段,满足了需要大量端口且对网络性能要求较高的容器的需求。
如图5所示,为本发明公开的一种容器网络的管理装置的实施例2的结构示意图,网络模式读取模块201、IP读取模块202、IP配置模块203及网卡对建立模块204,IP读取模块202包括IP读取单元205、请求发送单元206及请求接收单元207,其中:
网络模式读取模块201用于读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
IP读取单元205用于从IP池读取待确认IP;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取待确认IP的信息;
请求发送单元206用于向待确认IP发送互联网控制消息协议请求;
读取到这个待确认IP之后为了确保IP不发生冲突,会先向这个IP地址ICMP(互联网控制消息协议)请求。
请求接收单元207用于接收带确认IP发送的互联网控制消息协议回应,当预设时间内未收到待确认IP发送的互联网控制消息协议回应时,将待确认IP作为可用IP,否则,重新执行上述步骤读取新的待确认IP;
如果预设时间内没有收到ICMP回应,说明该待确认IP确实没有其他容器在使用,此待确认IP为可用IP,预设时间可为5秒。如果有回应说明此待确认IP已被占用,读取的待确认IP有误,重新向etcd发送请求IP的请求,还可上报之前错误获取IP的信息。
IP配置模块203用于将容器的IP配置为可用IP;
网卡对建立模块204用于为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
与实施例1相比,本实施例在配置IP之前对IP是否可用进行了再次确认,避免了IP冲突进而造成程序运行错误的问题。
如图6所示,为本发明公开的一种容器网络的管理装置的实施例3的结构示意图,包括网络模式读取模块301、IP读取模块302、IP配置模块303、网卡对建立模块304及IP回收模块305,其中:
网络模式读取模块301用于读取容器的网络模式;
当kubernetes收到用户创建容器的请求之后,通过调用接口,读取用户为容器所选的网络模式。
当网络模式为第一网络模式时,IP读取模块302用于从IP池中读取可用IP,第一网络模式为吞吐量要求高于预设阈值的网络模式;
第一网络模式为吞吐量要求高于预设阈值的网络模式,当用户所选择的为容器配置的网络模式为第一网络模式时,即说明容器的网络要求较高,需要为容器分配一个独立的IP,此时,向etcd发送请求从IP池中读取可用IP的信息,当发现有可用IP时,进而继续向etcd发送请求,在etcd中注册这个IP。etcd是一个分布式一致性k-v存储系统。
IP配置模块303将容器的IP配置为可用IP时,还用于还将可用IP加入已占用IP列表;
将已使用的可用IP加入已占用IP可以避免IP的重复使用造成的冲突。
网卡对建立模块304用于为容器建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡;
在容器所在的主机上进行操作,建立网卡对,网卡对的一端与主机网卡相连,另一端与容器网卡相连,主机网卡为容器所在的主机与外网直连的网卡,容器网卡为容器的网卡。
当容器被终止时,IP回收模块305用于销毁容器的网卡对,还用于将可用IP从已占用IP列表中删除;
与实施例1相比,本实施例还增加了资源即IP回收的功能,当容器终止后,将已建立的网卡对销毁,对原容器占用的资源及IP进行回收,避免了资源的浪费。
为进一步优化上述实施例1-3,本装置还包括调用模块,当网络模式为第二网络模式时,调用模块用于调用使用flannel插件的接口为容器配置网络,第二网络模式为吞吐量要求低于预设阈值的网络模式。
容器的网络模式除了第一网络模式外,还可为第二网络模式,即常规模式,此模式对网络要求较低,因此调用flannel插件的接口,为容器分配集群内可访问的IP并配置容器相关网络设置,也就是交给flannel去搭建overlay的网络环境或host的网络模式。采用flannel插件的接口为容器配置网络为现有技术,在此不再赘述。
通过对不同网络模式的容器进行不同方式的管理,既可满足网络要求较高的容器的需求,也不会因为为所有容器配置独立的IP而造成资源浪费。当然的,采用此种方式为容器配置网络时,当容器被终止时,会识别容器属于哪种网络模式,当属于host网络模式或overlay模式时,后续工作将交给flannel的组件完成网络的回收工作。
为进一步优化上述实施例1-3,本装置还包括调用模块,当IP池中无可用IP时,调用模块用于调用使用flannel插件的接口为容器配置网络,第二网络模式为吞吐量要求低于预设阈值的网络模式。
因为IP池中的IP有限,因此,当IP池中没有可用IP时,会向调用接口的上层用户反馈这一结果,并改用host模式或overlay的网络模式为容器配置网络。避免了因IP池中无可用IP而造成容器网络配置失败。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (8)

1.一种容器网络的管理方法,其特征在于,包括:
读取容器的网络模式;所述容器的网络模式包括第一网络模式和第二网络模式;
当所述网络模式为第一网络模式时,从IP池中读取可用IP,所述第一网络模式为吞吐量要求高于预设阈值的网络模式;
将所述容器的IP配置为所述可用IP;
为所述容器建立网卡对,所述网卡对的一端与主机网卡相连,另一端与容器网卡相连,所述主机网卡为所述容器所在的主机与外网直连的网卡,所述容器网卡为所述容器的网卡;
当所述网络模式为第二网络模式时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
2.如权利要求1所述的管理方法,其特征在于,所述从IP池中读取可用IP包括:
从所述IP池读取待确认IP;
向所述待确认IP发送互联网控制消息协议请求;
当预设时间内未收到所述待确认IP发送的互联网控制消息协议回应时,将所述待确认IP作为所述可用IP,否则,重新读取新的待确认IP。
3.如权利要求1所述的管理方法,其特征在于,将所述容器的IP配置为所述可用IP时,还将所述可用IP加入已占用IP列表;为所述容器建立网卡对之后,还包括:
当所述容器被终止时,销毁所述容器的网卡对,将所述可用IP从所述已占用IP列表中删除。
4.如权利要求1-3任意一项所述的管理方法,其特征在于,还包括:
当所述IP池中无可用IP时,调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
5.一种容器网络的管理装置,其特征在于,包括网络模式读取模块、IP读取模块、IP配置模块、网卡对建立模块和调用模块,其中:
所述网络模式读取模块用于读取容器的网络模式;所述容器的网络模式包括第一网络模式和第二网络模式;
当所述网络模式为第一网络模式时,所述IP读取模块用于从IP池中读取可用IP,所述第一网络模式为吞吐量要求高于预设阈值的网络模式;
所述IP配置模块用于将所述容器的IP配置为所述可用IP;
所述网卡对建立模块用于为所述容器建立网卡对,所述网卡对的一端与主机网卡相连,另一端与容器网卡相连,所述主机网卡为所述容器所在的主机与外网直连的网卡,所述容器网卡为所述容器的网卡;
当所述网络模式为第二网络模式时,所述调用模块用于调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
6.如权利要求5所述的管理装置,其特征在于,所述IP读取模块包括IP读取单元、请求发送单元及请求接收单元,其中:
所述IP读取单元用于从所述IP池读取待确认IP;
所述请求发送单元用于向所述待确认IP发送互联网控制消息协议请求;
所述请求接收单元用于接收所述待确认IP发送的互联网控制消息协议回应,当预设时间内未收到所述待确认IP发送的互联网控制消息协议回应时,将所述待确认IP作为所述可用IP,否则,重新读取新的待确认IP。
7.如权利要求5所述的管理装置,其特征在于,所述IP配置模块将所述容器的IP配置为所述可用IP时,还用于还将所述可用IP加入已占用IP列表;还包括IP回收模块,当所述容器被终止时,所述IP回收模块用于销毁所述容器的网卡对,还用于将所述可用IP从所述已占用IP列表中删除。
8.如权利要求5-7任意一项所述的管理装置,其特征在于,还包括调用模块,
当所述IP池中无可用IP时,所述调用模块用于调用使用flannel插件的接口为所述容器配置网络,所述第二网络模式为吞吐量要求低于所述预设阈值的网络模式。
CN201711329012.9A 2017-12-13 2017-12-13 一种容器网络的管理方法及装置 Active CN107995326B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711329012.9A CN107995326B (zh) 2017-12-13 2017-12-13 一种容器网络的管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711329012.9A CN107995326B (zh) 2017-12-13 2017-12-13 一种容器网络的管理方法及装置

Publications (2)

Publication Number Publication Date
CN107995326A CN107995326A (zh) 2018-05-04
CN107995326B true CN107995326B (zh) 2021-04-20

Family

ID=62037802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711329012.9A Active CN107995326B (zh) 2017-12-13 2017-12-13 一种容器网络的管理方法及装置

Country Status (1)

Country Link
CN (1) CN107995326B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400054B (zh) * 2018-12-27 2024-03-08 浙江大学 网络插件调用方法及装置,计算机存储介质和电子设备
CN110362386B (zh) * 2019-07-25 2021-12-03 广州虎牙科技有限公司 网卡处理方法、装置、电子设备和存储介质
CN110750332A (zh) * 2019-10-23 2020-02-04 广西梯度科技有限公司 一种在Kubernetes中Pod设置静态IP的方法
CN114629844B (zh) * 2022-02-28 2024-04-05 浙江大华技术股份有限公司 一种报文转发的方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491123A (zh) * 2015-12-04 2016-04-13 北京航空航天大学 容器间通信方法及装置
CN105763670A (zh) * 2016-04-08 2016-07-13 北京搜狐新媒体信息技术有限公司 一种为容器分配ip地址的方法及装置
CN106686088A (zh) * 2016-12-30 2017-05-17 广东浪潮大数据研究有限公司 一种支持Docker环境多网络模式的管理方法
CN106878484A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种配置Docker集群容器外部IP的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103312661B (zh) * 2012-03-07 2016-02-17 腾讯科技(深圳)有限公司 一种服务访问方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491123A (zh) * 2015-12-04 2016-04-13 北京航空航天大学 容器间通信方法及装置
CN105763670A (zh) * 2016-04-08 2016-07-13 北京搜狐新媒体信息技术有限公司 一种为容器分配ip地址的方法及装置
CN106686088A (zh) * 2016-12-30 2017-05-17 广东浪潮大数据研究有限公司 一种支持Docker环境多网络模式的管理方法
CN106878484A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种配置Docker集群容器外部IP的方法

Also Published As

Publication number Publication date
CN107995326A (zh) 2018-05-04

Similar Documents

Publication Publication Date Title
CN107995326B (zh) 一种容器网络的管理方法及装置
CN109104467B (zh) 开发环境构建方法、装置以及平台系统和存储介质
EP3343364B1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
EP3438827A1 (en) Resource configuration method, mobile terminal and storage medium
US20160294774A1 (en) Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
EP3352431B1 (en) Network load balance processing system, method, and apparatus
CN102771164B (zh) 针对旧版本应用和非旧版本应用提供智能无线模块选择的方法和装置
EP3334089B1 (en) Method and device for onboarding network service descriptor
CN107463339B (zh) 一种nas存储系统
CN106878343B (zh) 一种云计算环境下提供网络安全即服务的系统
US20130268619A1 (en) Server including switch circuitry
CN112491789B (zh) 一种基于OpenStack框架的虚拟防火墙构建方法及存储介质
CN112351115B (zh) 对称型nat设备的端口预测方法及装置
CN114124929A (zh) 跨网络的数据处理方法和装置
CN106874214B (zh) 云硬盘资源的回收方法及相关装置
CN111143034A (zh) 一种控制网络数据转发平面的方法、装置及系统
CN113542421A (zh) 基于5g用户面功能实体的数据转发方法及装置
CN104423944A (zh) 一种软件应用系统
CN113626139B (zh) 一种高可用的虚拟机存储方法及装置
CN110365742B (zh) 多活负载均衡应用创建方法、装置、计算机设备及存储介质
CN111988446A (zh) 一种报文处理方法、装置、电子设备及存储介质
CN110417592A (zh) 一种Qos限速方法、装置、路由设备及存储介质
CN117395100B (zh) 网络功能虚拟化网关实现方法、装置、设备及介质
CN116800605B (zh) 在容器中运行虚拟机的网络实现方法、系统、设备及介质
CN111107663B (zh) 数据的传输方法及装置、存储介质、电子装置

Legal Events

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