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地址在网络服务映射表中添加预留标记,所述网络服务映射表用于记录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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。