一种基于智能DNS的容器云应用蓝绿发布方法技术

技术编号:22594339 阅读:35 留言:0更新日期:2019-11-20 10:54
本发明专利技术涉及一种基于智能DNS的容器云应用蓝绿发布方法,包括以下步骤:1)将待发布的应用部署到容器云平台A和B上,通过负载均衡F5同时对外提供服务;2)当需要对应用进行版本升级时,屏蔽容器云平台B上应用的外部流量,在容器云平台B上进行版本升级,使版本从X升级到Y;3)通过智能DNS解析服务请求源地址,WEB区容器云平台的应用请求发送到部署有相同版本应用的容器云平台上;4)通过负载均衡切换外部流量,屏蔽容器云平台A上应用X版本的外部流量;5)在测试确认容器云平台A上的应用X版本成功升级到Y版本后,通过负载均衡同时开放流量,蓝绿发布完成与现有技术相比,本发明专利技术具有防止中断、交叉访问、降低操作风险等优点。

A blue-green publishing method of container Cloud Application Based on Intelligent DNS

The invention relates to a blue-green publishing method of container Cloud Application Based on Intelligent DNS, which includes the following steps: 1) deploy the application to be published to the container cloud platform a and B, and provide external services through load balancing F5 at the same time; 2) when it is necessary to upgrade the application version, shield the external traffic of the application on the container cloud platform B, and upgrade the version on the container cloud platform B to make the version from Upgrade x to y; 3) request the source address through the Intelligent DNS resolution service, and send the application request of the container cloud platform in the web area to the container cloud platform deployed with the same version of the application; 4) switch the external traffic through load balancing, and shield the external traffic of the application version x on the container cloud platform a; 5) after the test and confirmation that the application version x on the container cloud platform a has been successfully upgraded to the version y, the load is balanced Compared with the prior art, the invention has the advantages of preventing interruption, cross access, reducing operation risk, etc.

【技术实现步骤摘要】
一种基于智能DNS的容器云应用蓝绿发布方法
本专利技术涉及应用发布
,尤其是涉及一种基于智能DNS的容器云应用蓝绿发布方法。
技术介绍
蓝绿发布是一种以可预测的方式进行应用发布的技术,目的是减少应用升级中服务中断的时间,应用平滑升级。目前最常见的蓝绿发布方式基本都是通过服务冗余来解决应用升级问题,即在生产环境准备两组相同的基础设施集群并在每组集群上部署相同应用服务,其中一组是活跃流量的配置(绿色环境),另外一组是待切的配置(蓝色环境)。用户访问时,会把所有流量通过负载均衡路由到绿色环境的应用集群。当应用服务需要进行版本升级时,在蓝色环境中部署新版本的应用,测试通过后切断绿色环境的用户访问,并将所有外部流量通过负载均衡路由到蓝色环境的应用集群。使用蓝绿发布方式进行应用服务版本升级的好处在于运维人员可以始终在蓝色环境进行应用部署,即使出现问题也不会影响绿色环境的服务,如果流量切换后发现问题也可以在很短的时间内完成服务回滚,从而降低应用版本升级所带来的服务中断风险。现有蓝绿发布的不足之处:1.对于客户端来说,需要维护蓝绿两个版本的服务端地址,维护成本高2.在蓝绿切换时涉及人工操作步骤较多、复杂度高、容易出错.
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种基于智能DNS的容器云应用蓝绿发布方法。本专利技术的目的可以通过以下技术方案来实现:一种基于智能DNS的容器云应用蓝绿发布方法,包括以下步骤:1)将待发布的应用部署到容器云平台A和B上,形成应用双活,通过负载均衡F5同时对外提供服务;2)当需要对应用进行版本升级时,在负载均衡F5端屏蔽容器云平台B上应用的外部流量,使外部流量全部导入到容器云平台A的应用上,在容器云平台B上进行版本升级,使版本从X升级到Y;3)通过智能DNS解析服务请求源地址,WEB区容器云平台的应用请求发送到部署有相同版本应用的容器云平台上;4)测试确认容器云平台B上的应用X版本成功升级到Y版本后,通过负载均衡切换外部流量,将所有外部流量导入到容器云平台B上的应用Y版本同时屏蔽容器云平台A上应用X版本的外部流量;5)在测试确认容器云平台A上的应用X版本成功升级到Y版本后,通过负载均衡同时开放流量,蓝绿发布完成。所述的步骤1)中,容器云平台A和B为不同的容器云平台。所述的步骤2)中,通过容器云平台B的应用更新功能进行版本升级。所述的步骤3)具体为:通过智能DNS解析服务请求源地址,将请求转发到对应平台的应用容器中,WEB区容器云平台A上的X版本应用流量牵引访问APP区容器云平台A的X版本应用,WEB区容器云平台B的Y版本应用流量牵引访问APP区容器云平台B的Y版本应用,用以避免WEB区双云平台和APP区双云平台的部署的应用APP在不同版本之间出现交叉访问而导致服务不正常的情况。所述的步骤4)具体为:当测试容器云平台B上发布的Y版本应用功能正常时,X版本升级到Y版本成功,在负载均衡F5端将所有外部流量导入到容器云平台B上的Y版本应用APP,同时屏蔽容器云平台A上的X版本应用APP的外部流量,,并升级容器云平台A上的应用版本X到Y版本。所述的步骤5)具体为:测试容器云平台A上发布的Y版本应用APP功能正常后,X版本升级到Y版本成功,在负载均衡F5端开放容器云平台A上Y版本应用APP的流量,保证Y版本应用在双云平台同时提供服务,蓝绿发布完成。与现有技术相比,本专利技术具有以下优点:一、防止中断:现有技术当流量进行蓝绿切换时,出现当前业务请求中断的情况,而本专利技术能够实现旧版本应用请求的中止、新版本应用流量的平滑切换,保障业务的可用性。二、交叉访问:现有技术中蓝绿环境共存时,由于不同版本服务交叉访问,导致用户请求无法正确处理,而新技术方案通过智能DNS解析请求源地址从而精确匹配应用版本,流量智能牵引,解决新旧版本服务并存时的交叉访问现象。三、降低风险:现有技术在蓝绿切换时涉及人工操作步骤较多、复杂度高、容易出错,而新技术通过智能策略配置实现自动切换,无需人工配置,提升发布效率,降低操作风险。附图说明图1为蓝绿发布的总体结构图。图2为实施例中的方法示意图。图3为实施例中的方法流程图。具体实施方式下面结合附图和具体实施例对本专利技术进行详细说明。实施例如图2所示,本专利技术提供一种基于智能DNS的容器云应用蓝绿发布方法,使用双容器云平台进行应用蓝绿发布时,通过负载均衡F5和智能DNS解析域名并根据源地址将请求转发到对应环境,规避常规蓝绿发布过程中的服务中断风险,从而真正做到应用版本平滑升级,服务升级过程用户无感知。本例中使用两个相同环境的基础设施容器平台A和容器平台B,应用X版本发布在容器平台A上,应用Y版本发布在容器平台B,当访问流量过来时,经过智能DNS调度,可以把不同请求自动导入到对应的应用容器中。如图3所示,本专利技术包括如下步骤:步骤S1:使用容器云平台应用发布功能分别部署业务应用系统APP到容器云平台A和B上,确认应用正常启动,形成应用双活,然后通过F5负载均衡同时接入流量到双云平台的应用从而对外提供服务。步骤S2:若根据业务要求需要对应用APP进行版本升级,首先在负载均衡F5端屏蔽容器云平台B上应用APP的外部流量,将所有外部流量导入到容器云平台A的应用APP上,然后通过容器云平台的应用更新功能升级容器云平台B上的应用APP的版本从X到Y版本。步骤S3:通过智能DNS解析服务请求源地址,将请求转发到对应平台的应用容器,WEB区容器云平台A的应用(X版本)流量智能牵引访问APP区容器云平台A的应用(X版本),WEB区容器云平台B的应用(Y版本)流量智能牵引访问APP区容器云平台B的应用(Y版本),避免WEB区双云平台和APP区双云平台的部署的应用APP在不同版本之间出现交叉访问而导致服务不正常的情况。步骤S4:业务人员测试容器云平台B上发布的Y版本应用APP,功能确认正常,X版本升级到Y版本成功。在负载均衡F5端将所有外部流量导入到容器云平台B上的Y版本应用APP,同时屏蔽容器云平台A上的X版本应用APP的外部流量。然后参照步骤S2,升级云平台A上的应用APP版本X到Y版本。步骤S5:业务人员测试容器云平台A上发布的Y版本应用APP,功能确认正常,X版本升级到Y版本成功。在负载均衡F5端开放容器云平台A上Y版本应用APP的流量,保证Y版本应用在双云平台同时提供服务,蓝绿发布完成。虽然本专利技术已以较佳实施例揭示如上,然其并非用以限定本专利技术,任何本领域技术人员,在不脱离本专利技术的精神和范围内,当可作些许的修改和完善,因此本专利技术的保护范围当以权利要求书所界定的为准。本文档来自技高网...

【技术保护点】
1.一种基于智能DNS的容器云应用蓝绿发布方法,其特征在于,包括以下步骤:/n1)将待发布的应用部署到容器云平台A和B上,形成应用双活,通过负载均衡F5同时对外提供服务;/n2)当需要对应用进行版本升级时,在负载均衡F5端屏蔽容器云平台B上应用的外部流量,使外部流量全部导入到容器云平台A的应用上,在容器云平台B上进行版本升级,使版本从X升级到Y;/n3)通过智能DNS解析服务请求源地址,WEB区容器云平台的应用请求发送到部署有相同版本应用的容器云平台上;/n4)测试确认容器云平台B上的应用X版本成功升级到Y版本后,通过负载均衡切换外部流量,将所有外部流量导入到容器云平台B上的应用Y版本同时屏蔽容器云平台A上应用X版本的外部流量;/n5)在测试确认容器云平台A上的应用X版本成功升级到Y版本后,通过负载均衡同时开放流量,蓝绿发布完成。/n

【技术特征摘要】
1.一种基于智能DNS的容器云应用蓝绿发布方法,其特征在于,包括以下步骤:
1)将待发布的应用部署到容器云平台A和B上,形成应用双活,通过负载均衡F5同时对外提供服务;
2)当需要对应用进行版本升级时,在负载均衡F5端屏蔽容器云平台B上应用的外部流量,使外部流量全部导入到容器云平台A的应用上,在容器云平台B上进行版本升级,使版本从X升级到Y;
3)通过智能DNS解析服务请求源地址,WEB区容器云平台的应用请求发送到部署有相同版本应用的容器云平台上;
4)测试确认容器云平台B上的应用X版本成功升级到Y版本后,通过负载均衡切换外部流量,将所有外部流量导入到容器云平台B上的应用Y版本同时屏蔽容器云平台A上应用X版本的外部流量;
5)在测试确认容器云平台A上的应用X版本成功升级到Y版本后,通过负载均衡同时开放流量,蓝绿发布完成。


2.根据权利要求1所述的一种基于智能DNS的容器云应用蓝绿发布方法,其特征在于,所述的步骤1)中,容器云平台A和B为不同的容器云平台。


3.根据权利要求1所述的一种基于智能DNS的容器云应用蓝绿发布方法,其特征在于,所述的步骤2)中,通过容器云平台B的应用更新功能进行版本升级。


4.根据权利要...

【专利技术属性】
技术研发人员:李虎路进锋李文权
申请(专利权)人:上海浦东发展银行股份有限公司信用卡中心
类型:发明
国别省市:上海;31

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

1