CN110912734B - 云管理平台实现容器应用多维度灰度发布方法及装置 - Google Patents
云管理平台实现容器应用多维度灰度发布方法及装置 Download PDFInfo
- Publication number
- CN110912734B CN110912734B CN201911062998.7A CN201911062998A CN110912734B CN 110912734 B CN110912734 B CN 110912734B CN 201911062998 A CN201911062998 A CN 201911062998A CN 110912734 B CN110912734 B CN 110912734B
- Authority
- CN
- China
- Prior art keywords
- container application
- container
- information
- access request
- management platform
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/28—Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种云管理平台实现容器应用多维度灰度发布方法、装置、设备及计算机可读存储介质。其中,方法包括预先注册多个服务,各服务唯一对应一个容器应用。在接收到用户发送的包含用户信息和访问容器应用信息的访问请求信息后,根据该用户访问请求信息确定待访问容器应用,然后根据预先构建的容器应用和转发规则的对应关系,为待访问容器应用匹配相应的目标转发规则;最后将用户访问请求信息转发至符合目标转发规则的目标服务,目标服务将该用户访问请求信息转发给相应容器,从而使用户可访问该容器相关联的软件版本。本申请实现了基于云管理平台的容器应用的多维度灰度发布,可有效提升云管理平台的系统稳定性。
Description
技术领域
本发明涉及云管理平台技术领域,特别是涉及一种云管理平台实现容器应用多维度灰度发布方法、装置、设备及计算机可读存储介质。
背景技术
Kubernetes,也可称为K8s,为一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、内建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力;同时Kubernetes提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节,作为分布式集群系统广泛部署于云数据中心操作系统上,例如浪潮云海系统。
在传统的云管理平台中,用户发送一个请求,会直接发送给K8s,k8s再根据请求的端口信息转发给对应的服务,服务再转发给最终的容器完成整个流程,可以看出整个流程是一个非常线性的过程,无法实现应用的灰度发布。其中,服务为K8s中提供的一套简化的服务代理和发现机制,用于将用户发送的请求转发给对应的容器。灰度发布,也称为金丝雀发布,是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B测试,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么可逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。
而K8s对于容器应用的管理本身并不支持灰度发布,但是在实际环境中有许多需要应用到灰度发布的场景,而且会需要不同的灰度发布策略,如可能需要根据用户IP、根据特定的用户组或根据特定的部门进行灰度发布。
基于此,如何基于云管理平台实现支持容器应用的多维度灰度发布,提升云管理平台的系统稳定性,是本领域技术人员需要解决的技术问题。
发明内容
本公开提供了一种云管理平台实现容器应用多维度灰度发布方法、装置、设备及计算机可读存储介质,基于云管理平台实现支持容器应用的多维度灰度发布,有效提升了云管理平台的系统稳定性。
为解决上述技术问题,本发明实施例提供以下技术方案:
本发明实施例一方面提供了一种云管理平台实现容器应用多维度灰度发布方法,适用于部署K8s的云管理平台,预先注册多个服务,且各服务唯一对应一个容器应用,包括:
根据接收到的用户访问请求信息确定待访问容器应用;所述用户访问请求信息包括用户信息和访问容器应用信息;
根据预先构建的容器应用和转发规则的对应关系,为所述待访问容器应用匹配相应的目标转发规则;
将所述用户访问请求信息转发至符合所述目标转发规则的目标服务,以使用户通过所述目标服务访问相关联的软件版本。
可选的,所述容器应用和转发规则的对应关系的构建过程包括:
当检测到第一容器应用在云管理平台第一次发布,将所述第一容器应用以及对应的第一服务进行注册,并为所述第一容器应用设置的第一转发规则为默认转发规则,且设置所述第一容器应用的软件表现形式为第一版本,以通过所述第一服务将当前用户访问请求信息转发至所述第一版本对应的容器;
当检测到所述第一容器应用在所述云管理平台进行升级,则输出灰度发布设置事项提示信息;
当接收到灰度发布设置指令,所述第一容器应用升级为第二容器应用,则输出为所述第二容器应用设置转发规则信息的指令;
根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过所述第二服务将当前用户访问请求信息转发至第二版本对应的容器。
可选的,所述根据接收到的用户访问请求信息确定待访问容器应用包括:
当接收到所述用户访问请求信息,向发送所述用户访问请求信息的用户发送安全性验证信息;
若用户输入的验证信息和预先存储的验证信息吻合,则根据接收到的用户访问请求信息确定待访问容器应用。
可选的,所述向发送所述用户访问请求信息的用户发送安全性验证信息之后,还包括:
若用户输入的验证信息和预先存储的验证信息不吻合且发送所述用户访问请求信息的用户不为授权用户,则将所述用户访问请求信息对应的用户信息添加至黑名单,并输出报警提示信息。
可选的,所述将所述用户访问请求信息转发至符合所述目标转发规则的目标服务之后,还包括:
判断经所述目标服务转发的容器对应的软件版本是否和所述待访问容器应用的软件版本相同;
若否,则将从接收到所述用户访问请求信息的第一时刻到判定经所述目标服务转发的容器对应的软件版本和所述待访问容器应用的软件版本不相同的第二时刻之间的日志信息打包存储并发送至预设文件目录,同时输出系统出错信息。
本发明实施例另一方面提供了一种云管理平台实现容器应用多维度灰度发布装置,适用于部署K8s的云管理平台,包括:
服务注册模块,用于预先注册多个服务,且各服务唯一对应一个容器应用;
转发规则设置模块,用于预先构建的容器应用和转发规则的对应关系;
待访问容器应用确定模块,用于根据接收到的用户访问请求信息确定待访问容器应用;所述用户访问请求信息包括用户信息和访问容器应用信息;
转发规则匹配模块,用于根据容器应用和转发规则的对应关系,为所述待访问容器应用匹配相应的目标转发规则;
容器应用访问模块,用于将所述用户访问请求信息转发至符合所述目标转发规则的目标服务,以使用户通过所述目标服务访问相关联的软件版本。
可选的,所述转发规则设置模块包括:
初始设置子模块,用于当检测到第一容器应用在云管理平台第一次发布,将所述第一容器应用以及对应的第一服务进行注册,并为所述第一容器应用设置的第一转发规则为默认转发规则,且设置所述第一容器应用的软件表现形式为第一版本,以通过所述第一服务将当前用户访问请求信息转发至所述第一版本对应的容器;
升级提示子模块,用于当检测到所述第一容器应用在所述云管理平台进行升级,则输出灰度发布设置事项提示信息;
灰色发布设置子模块,用于当接收到灰度发布设置指令,所述第一容器应用升级为第二容器应用,则输出为所述第二容器应用设置转发规则信息的指令;
规则设置子模块,用于根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过所述第二服务将当前用户访问请求信息转发至第二版本对应的容器。
可选的,所述待访问容器应用确定模块包括:
安全验证子模块,用于当接收到所述用户访问请求信息,向发送所述用户访问请求信息的用户发送安全性验证信息;
应用确定子模块,用于若用户输入的验证信息和预先存储的验证信息吻合,则根据接收到的用户访问请求信息确定待访问容器应用。
本发明实施例还提供了一种云管理平台实现容器应用多维度灰度发布设备,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述云管理平台实现容器应用多维度灰度发布方法的步骤。
本发明实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有云管理平台实现容器应用多维度灰度发布程序,所述云管理平台实现容器应用多维度灰度发布程序被处理器执行时实现如前任一项所述云管理平台实现容器应用多维度灰度发布方法的步骤。
本申请提供的技术方案的优点在于,将通过云管理平台创建的服务均进行预先注册,用户只需要在页面中进行简单的转发规则设置便可以实现容器应用的灰度发布流程,云管理平台可以有效管理控制容器应用的各个版本,使得多个容器应用版本共存,使在保存容器应用的稳定性的前提下进行新版本的逐步升级。云管理平台在接收到用户发送请求后,根据用户访问请求信息例如请求的端口、请求的IP,请求用户的id等信息筛选符合条件的服务,并通过服务找到对应的容器应用,从而实现了基于云管理平台支持容器应用的多维度灰度发布,有利于提升云管理平台的系统稳定性。
此外,本发明实施例还针对云管理平台实现容器应用多维度灰度发布方法提供了相应的实现装置、设备及计算机可读存储介质,进一步使得所述方法更具有实用性,所述装置、设备及计算机可读存储介质具有相应的优点。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
为了更清楚的说明本发明实施例或相关技术的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种云管理平台实现容器应用多维度灰度发布方法的流程示意图;
图2为本发明实施例提供的另一种云管理平台实现容器应用多维度灰度发布方法的流程示意图;
图3为本发明实施例提供的云管理平台实现容器应用多维度灰度发布装置的一种具体实施方式结构图;
图4为本发明实施例提供的云管理平台实现容器应用多维度灰度发布装置的另一种具体实施方式结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
在介绍了本发明实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。
首先参见图1,图1为本发明实施例提供的一种云管理平台实现容器应用多维度灰度发布方法的流程示意图,适用于部署K8s的云管理平台,该方法作用于云管理平台上,可以实现对云管理平台上管理的容器的服务进行注册与发现以实现容器应用的发布进行多维度的灰度发布管理,如可以使用IP、VDC、特定用户组等方式进行容器应用的灰度发布。本发明实施例可包括以下内容:
S101:预先注册多个服务,且各服务唯一对应一个容器应用。
可以理解的是,服务service为K8s中提供的一套简化的服务代理和发现机制,用于将用户发送的请求转发给对应的容器。将所有通过云管理平台创建的service均在进行预先注册,本发明实施例只会对注册的service进行灰度发布等操作。
S102:根据接收到的用户访问请求信息确定待访问容器应用。
在本申请中,用户访问请求信息可包括用户信息和访问容器应用信息,用户信息是用于判断发送请求的用户是否为平台授权用户,访问容器应用信息用于确定待访问的软件版本,例如可为请求端口、请求IP地址等。也就是说,系统在接收到用户访问请求信息后,根据用户访问请求信息中包含的访问容器应用信息的便可知道用户想要访问的容器应用是什么,举例来说,用户想要访问百度网页,那么在发送用户访问请求信息时,用户访问请求信息中可包括百度网址和用户名。当然,用户访问请求信息还可包含其他信息,例如验证码信息,用户进一步保证访问信息的安全性,本申请对此不做任何限定。
S103:根据预先构建的容器应用和转发规则的对应关系,为待访问容器应用匹配相应的目标转发规则。
可以理解的是,在容器应用发布时,便可同时进行设置访问该容器应用的条件,也即设置服务的转发规则,以便通过该转发规则找到容器应用。举例来说,预先设置访问版本1的转发规则可为ip范围为100.2.0.0/24,访问版本2的转发规则为部门可为A部门,访问版本3的转发规则可为用户角色必须为admin。在收到用户访问请求时,S102确定待访问容器应用为版本1,那么为该版本1匹配的转发规则为ip范围为100.2.0.0/24。
S104:将用户访问请求信息转发至符合目标转发规则的目标服务,以使用户通过目标服务访问相关联的软件版本。
可以理解的是,转发规则和服务具有对应关系,在S103为用户访问请求匹配转发规则后,根据匹配的转发规则可以确定适用于该转发规则的服务,然后将用户访问请求转发至该服务,从而实现通过服务找到关联的软件版本,实现容器应用的访问。此处的软件版本为容器应用的软件表现形式。
在本发明实施例提供的技术方案中,将通过云管理平台创建的服务均进行预先注册,用户只需要在页面中进行简单的转发规则设置便可以实现容器应用的灰度发布流程,云管理平台可以有效管理控制容器应用的各个版本,使得多个容器应用版本共存,使在保存容器应用的稳定性的前提下进行新版本的逐步升级。云管理平台在接收到用户发送请求后,根据用户访问请求信息例如请求的端口、请求的IP,请求用户的id等信息筛选符合条件的服务,并通过服务找到对应的容器应用,从而实现了基于云管理平台支持容器应用的多维度灰度发布,有利于提升云管理平台的系统稳定性。
在一种可选的实施方式中,转发规则的一种构建过程可包括:
当检测到第一容器应用在云管理平台第一次发布,将第一容器应用以及对应的第一服务进行注册,并为第一容器应用设置的第一转发规则为默认转发规则,且设置第一容器应用的软件表现形式为第一版本,以通过第一服务将当前用户访问请求信息转发至第一版本对应的容器;
当检测到第一容器应用在云管理平台进行升级,则输出灰度发布设置事项提示信息;
当接收到灰度发布设置指令,第一容器应用升级为第二容器应用,则输出为第二容器应用设置转发规则信息的指令;
根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过第二服务将当前用户访问请求信息转发至第二版本对应的容器。
也就是说,当容器应用通过云管理平台第一次发布的时候,云管理平台可默认的将该容器应用以及对应的服务信息进行注册,且均为默认无特殊规则以及为版本1。当该容器应用进行升级时,会提示是否进行灰度发布,如果设置为灰度发布,则会要求填写对应的规则信息如设置版本2的可访问IP等信息,并生成一个只执行版本2的服务。这样在系统中会存在两个版本的容器应用,版本1以及版本2以及两个对应的服务,服务1以及服务2。这样当用户访问服务应用时,由于对应的服务已经进行了注册,在接收到用户访问请求信息,首先判断是属于哪个容器应用,确定容器应用后,会根据对应的规则去匹配相应的服务,将用户的请求转发到符合规则的服务以及通过服务关联的版本1或版本2,从而实现容器应用的多维度灰度发布。
基于上述实施例,本申请还提供了另外一个实施例,请参阅图2,具体可包括下述内容:
S201:预先注册多个服务,且各服务唯一对应一个容器应用。
S202:预先构建的容器应用和转发规则的对应关系。
S203:根据接收到的用户访问请求信息确定待访问容器应用。
S204:当接收到用户访问请求信息,向发送用户访问请求信息的用户发送安全性验证信息。
安全性验证信息例如可通过第三方认证机构来进行验证,也可直接利用预先设置的密钥信息进行验证,这均不影响本申请的实现。
S205:判断用户输入的验证信息和预先存储的验证信息是否吻合,若是,则执行S207,若否,则执行S206。
S206:若发送用户访问请求信息的用户不为授权用户,则将用户访问请求信息对应的用户信息添加至黑名单,并输出报警提示信息。
在本申请中,黑名单中的用户可能为窃取信息的用户,为了避免信息被窃取,可将包括用户登录的IP地址信息、登录用户名信息、绑定的手机号等信息均添加至黑名单内。
S207:根据接收到的用户访问请求信息确定待访问容器应用。
S208:将用户访问请求信息转发至符合目标转发规则的目标服务,以使用户通过目标服务访问相关联的软件版本。
S209:判断经目标服务转发的容器对应的软件版本是否和待访问容器应用的软件版本相同;若否,则执行S210。
S210:将从接收到用户访问请求信息的第一时刻到判定经目标服务转发的容器对应的软件版本和待访问容器应用的软件版本不相同的第二时刻之间的日志信息打包存储并发送至预设文件目录,同时输出系统出错信息。
本发明实施例中,预设文件目录可为预先绑定的客户端地址信息,也可为本地存储的文件夹地址信息。通过将日志信息及时打包存储并发送,避免有效信息被覆盖,有利于相关工作人员及时进行故障修复,提升系统的安全性和可靠性。
本发明实施例与上述实施例相同的步骤或方法,可参阅上述实施例的描述,此处,便不再赘述。
由上可知,本发明实施例基于云管理平台实现支持容器应用的多维度灰度发布,且整个过程安全高效,有效提升了云管理平台的系统稳定性和可靠性。
本发明实施例还针对云管理平台实现容器应用多维度灰度发布方法提供了相应的实现装置,进一步使得所述方法更具有实用性。下面对本发明实施例提供的云管理平台实现容器应用多维度灰度发布装置进行介绍,下文描述的云管理平台实现容器应用多维度灰度发布装置与上文描述的云管理平台实现容器应用多维度灰度发布方法可相互对应参照。
参见图3,图3为本发明实施例提供的云管理平台实现容器应用多维度灰度发布装置在一种具体实施方式下的结构图,适用于部署K8s的云管理平台,作用于云管理平台上的装置,该装置可以对云管理平台上管理的容器的服务进行注册与发现以实现容器应用的发布进行多维度的灰度发布管理,如可以使用IP、VDC、特定用户组等方式进行容器应用的灰度发布。因此在云管理平台中设置了云管理平台实现容器应用多维度灰度发布装置,工作流程为用户发送请求,云管理平台中的云管理平台实现容器应用多维度灰度发布装置接受请求,并根据请求中包含的信息,例如端口、请求的IP,请求用户的id等信息,筛选符合条件的service,并通过service找到对应的容器应用。该装置具体可包括:
服务注册模块301,用于预先注册多个服务,且各服务唯一对应一个容器应用。
转发规则设置模块302,用于预先构建的容器应用和转发规则的对应关系。
待访问容器应用确定模块303,用于根据接收到的用户访问请求信息确定待访问容器应用;用户访问请求信息包括用户信息和访问容器应用信息。
转发规则匹配模块304,用于根据容器应用和转发规则的对应关系,为待访问容器应用匹配相应的目标转发规则。
容器应用访问模块305,用于将用户访问请求信息转发至符合目标转发规则的目标服务,以使用户通过目标服务访问相关联的软件版本。
云管理平台会将所有管理的容器应用统一注册在该装置中,并设计对应的服务转发规则。这样所有云管理平台发起的请求都会经由该装置并可以在该装置中按照设计的规则进行分发从而实现了对于服务的管理并实现了容器应用的多维度灰度发布。
作为一种可选的实施方式,所述转发规则设置模块304具体可包括:
初始设置子模块,用于当检测到第一容器应用在云管理平台第一次发布,将第一容器应用以及对应的第一服务进行注册,并为第一容器应用设置的第一转发规则为默认转发规则,且设置第一容器应用的软件表现形式为第一版本,以通过第一服务将当前用户访问请求信息转发至第一版本对应的容器;
升级提示子模块,用于当检测到第一容器应用在云管理平台进行升级,则输出灰度发布设置事项提示信息;
灰色发布设置子模块,用于当接收到灰度发布设置指令,第一容器应用升级为第二容器应用,则输出为第二容器应用设置转发规则信息的指令;
规则设置子模块,用于根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过第二服务将当前用户访问请求信息转发至第二版本对应的容器。
可选的,在本实施例的一些实施方式中,所述待访问容器应用确定模块303可包括:
安全验证子模块,用于当接收到用户访问请求信息,向发送用户访问请求信息的用户发送安全性验证信息;
应用确定子模块,用于若用户输入的验证信息和预先存储的验证信息吻合,则根据接收到的用户访问请求信息确定待访问容器应用。
在本发明实施例的另一些实施方式中,请参阅图4,所述装置例如还可以包括黑名单设置模块306和报警提示模块307,黑名单设置模块306用于若用户输入的验证信息和预先存储的验证信息不吻合且发送所述用户访问请求信息的用户不为授权用户,则将所述用户访问请求信息对应的用户信息添加至黑名单。报警提示模块307用于若用户输入的验证信息和预先存储的验证信息不吻合且发送所述用户访问请求信息的用户不为授权用户,输出报警提示信息。
此外,在本实施例的其他一些实施方式中,所述装置例如还可以包括出错处理模块308,用于若经目标服务转发的容器对应的软件版本和待访问容器应用的软件版本不相同,则将从接收到用户访问请求信息的第一时刻到判定经目标服务转发的容器对应的软件版本和待访问容器应用的软件版本不相同的第二时刻之间的日志信息打包存储并发送至预设文件目录,同时输出系统出错信息。
本发明实施例所述云管理平台实现容器应用多维度灰度发布装置的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例基于云管理平台实现支持容器应用的多维度灰度发布,有效提升了云管理平台的系统稳定性。
本发明实施例还提供了一种云管理平台实现容器应用多维度灰度发布设备,具体可包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序以实现如上任意一实施例所述云管理平台实现容器应用多维度灰度发布方法的步骤。
本发明实施例所述云管理平台实现容器应用多维度灰度发布设备的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例基于云管理平台实现支持容器应用的多维度灰度发布,有效提升了云管理平台的系统稳定性。
本发明实施例还提供了一种计算机可读存储介质,存储有云管理平台实现容器应用多维度灰度发布程序,所述云管理平台实现容器应用多维度灰度发布程序被处理器执行时如上任意一实施例所述云管理平台实现容器应用多维度灰度发布方法的步骤。该存储介质可以为U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例所述计算机可读存储介质的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
由上可知,本发明实施例基于云管理平台实现支持容器应用的多维度灰度发布,有效提升了云管理平台的系统稳定性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的一种云管理平台实现容器应用多维度灰度发布方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本公开进行若干改进和修饰,这些改进和修饰也落入本公开权利要求的保护范围内。
Claims (8)
1.一种云管理平台实现容器应用多维度灰度发布方法,其特征在于,适用于部署K8s的云管理平台,预先注册多个服务,且各服务唯一对应一个容器应用,包括:
根据接收到的用户访问请求信息确定待访问容器应用;所述用户访问请求信息包括用户信息和访问容器应用信息;
根据预先构建的容器应用和转发规则的对应关系,为所述待访问容器应用匹配相应的目标转发规则;
将所述用户访问请求信息转发至符合所述目标转发规则的目标服务,以使用户通过所述目标服务访问相关联的软件版本;
其中,所述容器应用和转发规则的对应关系的构建过程包括:
当检测到第一容器应用在云管理平台第一次发布,将所述第一容器应用以及对应的第一服务进行注册,并为所述第一容器应用设置的第一转发规则为默认转发规则,且设置所述第一容器应用的软件表现形式为第一版本,以通过所述第一服务将当前用户访问请求信息转发至所述第一版本对应的容器;
当检测到所述第一容器应用在所述云管理平台进行升级,则输出灰度发布设置事项提示信息;
当接收到灰度发布设置指令,所述第一容器应用升级为第二容器应用,则输出为所述第二容器应用设置转发规则信息的指令;
根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过所述第二服务将当前用户访问请求信息转发至第二版本对应的容器。
2.根据权利要求1所述的云管理平台实现容器应用多维度灰度发布方法,其特征在于,所述根据接收到的用户访问请求信息确定待访问容器应用包括:
当接收到所述用户访问请求信息,向发送所述用户访问请求信息的用户端发送安全性验证信息;
若用户输入的验证信息和预先存储的验证信息吻合,则根据接收到的用户访问请求信息确定待访问容器应用。
3.根据权利要求2所述的云管理平台实现容器应用多维度灰度发布方法,其特征在于,所述向发送所述用户访问请求信息的用户发送安全性验证信息之后,还包括:
若用户输入的验证信息和预先存储的验证信息不吻合且发送所述用户访问请求信息的用户不为授权用户,则将所述用户访问请求信息对应的用户信息添加至黑名单,并输出报警提示信息。
4.根据权利要求1至3任意一项所述的云管理平台实现容器应用多维度灰度发布方法,其特征在于,所述将所述用户访问请求信息转发至符合所述目标转发规则的目标服务之后,还包括:
判断经所述目标服务转发的容器对应的软件版本是否和所述待访问容器应用的软件版本相同;
若否,则将从接收到所述用户访问请求信息的第一时刻到判定经所述目标服务转发的容器对应的软件版本和所述待访问容器应用的软件版本不相同的第二时刻之间的日志信息打包存储并发送至预设文件目录,同时输出系统出错信息。
5.一种云管理平台实现容器应用多维度灰度发布装置,其特征在于,适用于部署K8s的云管理平台,包括:
服务注册模块,用于预先注册多个服务,且各服务唯一对应一个容器应用;
转发规则设置模块,用于预先构建的容器应用和转发规则的对应关系;
待访问容器应用确定模块,用于根据接收到的用户访问请求信息确定待访问容器应用;所述用户访问请求信息包括用户信息和访问容器应用信息;
转发规则匹配模块,用于根据容器应用和转发规则的对应关系,为所述待访问容器应用匹配相应的目标转发规则;
容器应用访问模块,用于将所述用户访问请求信息转发至符合所述目标转发规则的目标服务,以使用户通过所述目标服务访问相关联的软件版本;
其中,所述转发规则设置模块包括:
初始设置子模块,用于当检测到第一容器应用在云管理平台第一次发布,将所述第一容器应用以及对应的第一服务进行注册,并为所述第一容器应用设置的第一转发规则为默认转发规则,且设置所述第一容器应用的软件表现形式为第一版本,以通过所述第一服务将当前用户访问请求信息转发至所述第一版本对应的容器;
升级提示子模块,用于当检测到所述第一容器应用在所述云管理平台进行升级,则输出灰度发布设置事项提示信息;
灰色发布设置子模块,用于当接收到灰度发布设置指令,所述第一容器应用升级为第二容器应用,则输出为所述第二容器应用设置转发规则信息的指令;
规则设置子模块,用于根据接收到的转发规则设置信息,生成只执行第二版本的第二服务,以通过所述第二服务将当前用户访问请求信息转发至第二版本对应的容器。
6.根据权利要求5所述的云管理平台实现容器应用多维度灰度发布装置,其特征在于,所述待访问容器应用确定模块包括:
安全验证子模块,用于当接收到所述用户访问请求信息,向发送所述用户访问请求信息的用户发送安全性验证信息;
应用确定子模块,用于若用户输入的验证信息和预先存储的验证信息吻合,则根据接收到的用户访问请求信息确定待访问容器应用。
7.一种云管理平台实现容器应用多维度灰度发布设备,其特征在于,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至4任一项所述云管理平台实现容器应用多维度灰度发布方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有云管理平台实现容器应用多维度灰度发布程序,所述云管理平台实现容器应用多维度灰度发布程序被处理器执行时实现如权利要求1至4任一项所述云管理平台实现容器应用多维度灰度发布方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911062998.7A CN110912734B (zh) | 2019-10-31 | 2019-10-31 | 云管理平台实现容器应用多维度灰度发布方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911062998.7A CN110912734B (zh) | 2019-10-31 | 2019-10-31 | 云管理平台实现容器应用多维度灰度发布方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110912734A CN110912734A (zh) | 2020-03-24 |
CN110912734B true CN110912734B (zh) | 2022-07-22 |
Family
ID=69815290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911062998.7A Active CN110912734B (zh) | 2019-10-31 | 2019-10-31 | 云管理平台实现容器应用多维度灰度发布方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110912734B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984369B (zh) * | 2020-07-29 | 2022-11-22 | 苏州浪潮智能科技有限公司 | 一种容器调用方法和装置 |
CN112269591A (zh) * | 2020-11-11 | 2021-01-26 | 北京凌云雀科技有限公司 | 版本发布方法、装置、设备及存储介质 |
CN112416427A (zh) * | 2020-12-11 | 2021-02-26 | 推想医疗科技股份有限公司 | 模块管理包的发布方法及装置、电子设备及存储介质 |
CN114650293B (zh) * | 2020-12-17 | 2024-02-23 | 中移(苏州)软件技术有限公司 | 一种流量分流的方法、装置、终端和计算机存储介质 |
CN112988394B (zh) * | 2021-04-20 | 2021-08-17 | 北京世纪好未来教育科技有限公司 | 基于云原生容器的业务服务发布方法、装置、介质和设备 |
CN113791759A (zh) * | 2021-09-09 | 2021-12-14 | 上海仙塔智能科技有限公司 | 代码开发的处理方法、装置、电子设备与存储介质 |
US11816469B2 (en) | 2021-09-22 | 2023-11-14 | International Business Machines Corporation | Resolving the version mismatch problem when implementing a rolling update in an open-source platform for container orchestration |
CN114594999B (zh) * | 2022-01-28 | 2023-09-12 | 阿里巴巴(中国)有限公司 | 发布文件的方法、装置、存储介质及系统 |
CN114615135B (zh) * | 2022-02-18 | 2024-03-22 | 佐朋数科(深圳)信息技术有限责任公司 | 一种前端灰度发布方法、系统及存储介质 |
CN114760277B (zh) * | 2022-06-15 | 2022-09-16 | 云账户技术(天津)有限公司 | 一种访问容器化管理应用的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391690A (zh) * | 2014-11-04 | 2015-03-04 | 中国石油天然气股份有限公司 | 一种应用开发系统及方法 |
CN108376118A (zh) * | 2018-02-09 | 2018-08-07 | 腾讯科技(深圳)有限公司 | 服务发布系统、方法、设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015126292A1 (en) * | 2014-02-20 | 2015-08-27 | Telefonaktiebolaget L M Ericsson (Publ) | Methods, apparatuses, and computer program products for deploying and managing software containers |
JP7069672B2 (ja) * | 2017-12-05 | 2022-05-18 | コニカミノルタ株式会社 | アプリケーションの更新方法およびプログラム |
CN108279921A (zh) * | 2018-01-22 | 2018-07-13 | 广州欧赛斯信息科技有限公司 | 一种基于容器平台的自动灰度发布方法、系统及装置 |
CN108632374B (zh) * | 2018-05-09 | 2021-06-18 | 恒大智慧科技有限公司 | 软件灰度发布方法及装置 |
CN109683936B (zh) * | 2018-12-20 | 2023-03-14 | 恒生电子股份有限公司 | 灰度发布方法及装置、存储介质及电子设备 |
CN109787830B (zh) * | 2019-01-21 | 2023-03-07 | 北京京东尚科信息技术有限公司 | 灰度发布控制方法、装置、系统、电子设备及存储介质 |
CN110162382B (zh) * | 2019-04-09 | 2023-12-15 | 平安科技(深圳)有限公司 | 基于容器的灰度发布方法、装置、计算机设备及存储介质 |
-
2019
- 2019-10-31 CN CN201911062998.7A patent/CN110912734B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391690A (zh) * | 2014-11-04 | 2015-03-04 | 中国石油天然气股份有限公司 | 一种应用开发系统及方法 |
CN108376118A (zh) * | 2018-02-09 | 2018-08-07 | 腾讯科技(深圳)有限公司 | 服务发布系统、方法、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
基于Kubernetes的PaaS平台研究与实践;宗序梅等;《江苏通信》;20180415(第02期);全文 * |
基于容器云的微服务系统;杨迪;《电信科学》;20180920(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110912734A (zh) | 2020-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110912734B (zh) | 云管理平台实现容器应用多维度灰度发布方法及装置 | |
US10664592B2 (en) | Method and system to securely run applications using containers | |
CN102075347B (zh) | 一种安全配置核查设备和方法以及采用该设备的网络系统 | |
CN103607385B (zh) | 基于浏览器进行安全检测的方法和装置 | |
CN102332072B (zh) | 用于检测恶意软件和管理恶意软件相关信息的系统和方法 | |
US11748091B2 (en) | Virtualization platform for creating, deploying, modifying, and relocating applications | |
CN100454326C (zh) | 访问控制装置以及访问控制方法 | |
US10136324B2 (en) | Method and apparatus for reading verification information | |
US11757937B2 (en) | Enabling webapp security through containerization | |
CN108989355B (zh) | 一种漏洞检测方法和装置 | |
US9665465B1 (en) | Automated determination of application permissions | |
CN112866379B (zh) | 微服务的访问方法和装置 | |
CN105160269A (zh) | 一种Docker容器内数据的访问方法及装置 | |
CN109587233B (zh) | 多云容器管理方法、设备及计算机可读存储介质 | |
US11962601B1 (en) | Automatically prioritizing computing resource configurations for remediation | |
US10826756B2 (en) | Automatic generation of threat remediation steps by crowd sourcing security solutions | |
CN103713904A (zh) | 在移动终端工作区内安装应用的方法、相关装置和系统 | |
CN110278192B (zh) | 外网访问内网的方法、装置、计算机设备及可读存储介质 | |
US9558344B2 (en) | Proximity based authentication for striped data | |
US20210374110A1 (en) | Detection system and method, and related apparatus | |
CN104270349A (zh) | 一种云计算多租户应用的隔离方法及装置 | |
CN111177672A (zh) | 一种页面访问控制方法、装置和电子设备 | |
CN103368927A (zh) | 一种安全配置核查设备和方法 | |
CN113676549A (zh) | 应用请求的分流方法及应用网关、电子设备、存储介质 | |
CN109992298B (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 |