集群容器IP分配的方法和装置制造方法及图纸

技术编号:17214456 阅读:26 留言:0更新日期:2018-02-08 00:52
本发明专利技术公开了一种集群容器IP分配的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:接收用户发来的集群更新请求;判断集群更新请求的请求类型;当请求类型为释放容器时,根据预定义的规则释放容器,并将已释放的容器的IP地址在网络服务映射表中添加预留标记;当请求类型为新增容器时,根据预定义的规则为新增的容器分配IP地址;当请求类型既包括释放容器又包括新增容器时,先释放容器,并将已释放的容器的IP地址在网络服务映射表中添加预留标记,然后新增容器,并将网络服务映射表中添加预留标记的该应用的IP地址分配给新增的容器。该实施方式解决了应用集群更新时多个副本控制器之间容器的IP地址传递的问题。

Method and device for IP distribution in cluster container

The invention discloses a method and device for the distribution of IP in a cluster container, which relates to the field of computer technology. One embodiment of the method includes: receiving user cluster update request; request type judgment cluster update request; when the request type for the release of the container, according to predefined rules and will release the container, the container has released the IP address in the network service mapping table in the atuthor marker; when the type of request for the new container, according to predefined rules for container allocation IP new address; when the request type includes release containers including new container, the first release of container, and the container has been released the IP address in the network service mapping table atuthor marker, and then add the container, and the container service mapping network table atuthor labeled the application IP address assigned to the new. This implementation solves the problem of transferring the IP address of the container between multiple replica controllers when the application cluster updates are updated.

【技术实现步骤摘要】
集群容器IP分配的方法和装置
本专利技术涉及计算机
,尤其涉及一种集群容器IP分配的方法和装置。
技术介绍
随着容器集群管理技术的成熟和完善,越来越多的无状态类型的应用会部署到容器中运行。容器是与系统其他部分隔离开的一系列进程,从一个模版镜像运行,并由该镜像提供支持进程所需的全部文件。由于无状态类型的应用一般只需要进行一些计算任务,本地不存储数据,故而,部署有这种类型的应用的容器很容易大量复制运行。这就是所谓的容器技术。在一个大规模的集群中,一般都会运行成百上千个这种业务容器,每个容器具有不同的网络IP(InternetProtocol)地址。一般地,会通过一个或者多个副本控制器来管理以相同的模版生产的一批容器集合的生命周期。当集群中容器的运行情况发生变化时,例如:当通过副本控制器减少容器个数时,所有被释放的容器的IP地址都会释放,那么被释放的IP地址就可能会被其他的应用申请到;当容器出现故障时,副本控制器检测到该故障,即会触发创建一个新的容器来替换之前的故障容器,新的容器会被分配一个新的IP地址;同样,当通过副本控制器增加容器个数时,新增加的容器也会被分配新的IP地址;另外,当多个版本的应用进行灰度升级时,需要手动详细记录更新前版本的副本控制器释放的IP地址以及更新后版本的副本控制器增加的IP地址。当集群中容器的运行情况发生了变化时,集群的负载均衡系统或者监控系统需要实时更新容器信息,以便可以更好地对集群的运行情况进行监控或调整,反之,若未及时更新负载均衡系统或者监控系统的容器信息,则会使负载均衡系统或者监控系统起不到应有的作用,导致数据更新或解析错误等故障。例如:集群中运行的所有容器的IP地址信息一般会保存在配置文件中,如果一个业务容器的IP地址发生了变化,一个原来是A业务的某个容器的IP地址,变化后可能被B业务的某个容器使用了,这样会导致A业务的流量从负载均衡系统转到B业务的该容器上面;同理,业务A的监控系统也会监控到不属于自己业务的容器。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:由于新的容器使用全新的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地址不可用,则判断所述网络服务映射表中是否保存有添加预留标记的所述应用的IP地址;若所述网络服务映射表中保存有所述添加预留标记的所述应用的IP地址,则将所述添加预留标记的所述应用的IP地址分配给所述新增的容器;否则,为所述新增的容器随机分配IP地址。可选地,将所述添加预留标记的所述应用的IP地址分配给所述新增的容器的步骤之后,还包括:将所述网络服务映射表中所述IP地址对应的副本控制器字段修改为所述新增的容器的副本控制器标识,并删除预留标记和预留时间。可选地,为所述新增的容器随机分配IP地址的步骤之后,还包括:在所述网络服务映射表中添加所述随机分配的IP地址、副本控制器与应用的关联关系。根据本专利技术实施例的另一方面,提供了一种集群容器IP分配的装置。一种集群容器IP分配的装置,所述装置包括请求接收模块、类型判断模块和IP分配模块,所述IP分配模块包括释放单元、新增单元和更新单元,其中,所述请求接收模块,用于接收用户发来的集群更新请求;所述类型判断模块,用于判断所述集群更新请求的请求类型,所述请求类型包括释放容器和新增容器;所述释放单元,用于当所述请求类型为释放容器时,根据预定义的规则释放容器,并将已释放的容器的IP地址在网络服务映射表中添加预留标记,所述网络服务映射表用于记录IP地址、副本控制器与应用的关联关系;所述新增单元,用于当所述请求类型为新增容器时,根据预定义的规则为新增的容器分配IP地址;所述更新单元,用于当所述请求类型既包括释放容器又包括新增容器时,先释放容器,并将已释放的容器的IP地址在所述网络服务映射表中添加预留标记,然后新增容器,并将所述网络服务映射表中添加预留标记的所述应用的IP地址分配给新增的容器。可选地,所述集群更新请求包括不少于一个副本控制器的容器个数;并且,所述类型判断模块还用于:获取所述集群更新请求中包括的副本控制器监控的运行中的容器个数;分别将获取的所述容器个数与所述集群更新请求中包括的对应副本控制器的容器个数进行比较;若所述获取的所述容器个数大于所述集群更新请求中包括的对应副本控制器的容器个数时,所述请求类型为释放容器;否则,所述请求类型为新增容器。可选地,所述释放单元还用于:判断副本控制器的注解文件中是否保存有指定本文档来自技高网
...
集群容器IP分配的方法和装置

【技术保护点】
一种集群容器IP分配的方法,其特征在于,包括:接收用户发来的集群更新请求;判断所述集群更新请求的请求类型,所述请求类型包括释放容器和新增容器;当所述请求类型为释放容器时,根据预定义的规则释放容器,并将已释放的容器的IP地址在网络服务映射表中添加预留标记,所述网络服务映射表用于记录IP地址、副本控制器与应用的关联关系;当所述请求类型为新增容器时,根据预定义的规则为新增的容器分配IP地址;当所述请求类型既包括释放容器又包括新增容器时,先释放容器,并将已释放的容器的IP地址在所述网络服务映射表中添加预留标记,然后新增容器,并将所述网络服务映射表中添加预留标记的所述应用的IP地址分配给新增的容器。

【技术特征摘要】
1.一种集群容器IP分配的方法,其特征在于,包括:接收用户发来的集群更新请求;判断所述集群更新请求的请求类型,所述请求类型包括释放容器和新增容器;当所述请求类型为释放容器时,根据预定义的规则释放容器,并将已释放的容器的IP地址在网络服务映射表中添加预留标记,所述网络服务映射表用于记录IP地址、副本控制器与应用的关联关系;当所述请求类型为新增容器时,根据预定义的规则为新增的容器分配IP地址;当所述请求类型既包括释放容器又包括新增容器时,先释放容器,并将已释放的容器的IP地址在所述网络服务映射表中添加预留标记,然后新增容器,并将所述网络服务映射表中添加预留标记的所述应用的IP地址分配给新增的容器。2.根据权利要求1所述的方法,其特征在于,所述集群更新请求包括不少于一个副本控制器的容器个数;并且,判断所述集群更新请求的请求类型的步骤包括:获取所述集群更新请求中包括的副本控制器监控的运行中的容器个数;分别将获取的所述容器个数与所述集群更新请求中包括的对应副本控制器的容器个数进行比较;若所述获取的所述容器个数大于所述集群更新请求中包括的对应副本控制器的容器个数时,所述请求类型为释放容器;否则,所述请求类型为新增容器。3.根据权利要求1所述的方法,其特征在于,根据预定义的规则释放容器的步骤包括:判断副本控制器的注解文件中是否保存有指定的需要释放的容器的IP地址;若保存有所述指定的需要释放的容器的IP地址,则根据所述IP地址来释放容器;否则,随机释放容器。4.根据权利要求1所述的方法,其特征在于,并将所述释放的容器的IP地址在网络服务映射表中添加预留标记的步骤之后,还包括:设置预留时间,以及将所述网络服务映射表中的副本控制器字段修改为应用标识。5.根据权利要求1所述的方法,其特征在于,根据预定义的规则为新增的容器分配IP地址的步骤包括:判断副本控制器的注解文件中是否保存有指定的需要新增的容器的IP地址;若所述注解文件中保存有所述指定的需要新增的容器的IP地址,则调用网络服务系统对所述IP地址进行校验,当所述IP地址可用时,将所述IP地址分配给所述新增的容器;否则,若所述注解文件中未保存指定的需要新增的容器的IP地址或所述IP地址不可用,则判断所述网络服务映射表中是否保存有添加预留标记的所述应用的IP地址;若所述网络服务映射表中保存有所述添加预留标记的所述应用的IP地址,则将所述添加预留标记的所述应用的IP地址分配给所述新增的容器;否则,为所述新增的容器随机分配IP地址。6.根据权利要求5所述的方法,其特征在于,将所述添加预留标记的所述应用的IP地址分配给所述新增的容器的步骤之后,还包括:将所述网络服务映射表中所述IP地址对应的副本控制器字段修改为所述新增的容器的副本控制器标识,并删除预留标记和预留时间。7.根据权利要求5所述的方法,其特征在于,为所述新增的容器随机分配IP地址的步骤之后,还包括:在所述网络服务映射表中添加所述随机分配的IP地址、副本控制器与应用的关联关系。8.一种集群容器IP分配的装置,其特征在于,所述装置包括请求接收模块、类型判断模块和IP分配模块,所述IP分配模块包括释放单元、新增单元和更新单元,其中,所述请求接收模块,用于接收用户发来的集群更新请求;所述类型判断模块,用于判断所述集群更新请求的请求类型,所述请...

【专利技术属性】
技术研发人员:梁小平刘海锋鲍永成
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

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

1