详情页标题前

阿里云负载均衡使用ALB实现灰度发布-云淘科技

详情页1

灰度发布(又称为金丝雀发布)是一种平滑过渡的发布方式,将老版本应用与新版本应用同时部署在环境中,让一部分用户继续使用老版本应用,一部分用户开始使用新版本应用,然后根据用户使用情况调整新版本流量占比,逐步把所有用户都迁移到新版本应用。

应用场景

互联网产品需要快速迭代开发上线,同时又要保证质量。为保证刚上线的系统出现问题后可以很快控制影响,需要设计一套灰度发布系统,按照发布策略选取部分用户流量,先行使用新版本应用,然后通过收集这部分用户对新版本应用的反馈,以及新版本应用的日志、性能、稳定性等指标来评审新版应用。根据评审情况,决定是否继续增加新版本的应用实例和流量,直至全量升级,或者发现问题后及时回滚到老版本。

准备工作

  1. 将您的老版本业务和新版本业务分别部署在不同的服务器,为了增加业务处理能力,请分别部署在多台服务器上。

  2. 创建ALB实例,基础版ALB实例不支持条件类型为Cookie的规则,需要创建标准版ALB实例。具体操作,请参见创建应用型负载均衡。

  3. 创建服务器组,将承载老版本应用和新版本应用的服务器组分别加入不同的服务器组。具体操作,请参见创建和管理服务器组。

  4. 创建监听,并将监听默认服务器组设置为老版本应用服务器组。具体操作,请参见添加HTTP监听、添加HTTPS监听或添加QUIC监听。

    此时用户请求将全部转发至老版本应用。本文提供以下三种不同的灰度方式,您可以根据需要选择一种或多种搭配使用。

    • 基于HTTP标头实现灰度发布

    • 基于Cookie实现灰度发布

    • 基于不同服务器组实现灰度发布

基于HTTP标头实现灰度发布

本示例将用户请求中HTTP标头键是user-agent、值是*Mozilla/4.0*的访问转发至新版本应用。

阿里云负载均衡使用ALB实现灰度发布-云淘科技

  1. 登录应用型负载均衡ALB控制台。
  2. 在顶部菜单栏,选择ALB实例所属的地域。

  3. 实例页面,单击目标实例ID。

  4. 监听页签,找到目标监听,然后在操作列单击查看/编辑转发规则

  5. 转发规则页签,单击插入新规则

  6. 配置转发规则,然后单击确定

    • 转发条件:在下拉列表中选择HTTP标头,然后将键设置为user-agent,值设置为*Mozilla/4.0*

    • 转发动作:在下拉列表中选择转发至,然后选择新版本应用对应的服务器。

    更多参数说明,请参见管理监听转发规则。

    说明

    您可以根据需要增加转发条件来增加新版本应用的流量,待运行一段时间稳定后,将所有的流量从老版本应用切换到新版本应用中,平滑地将老版本应用下线。

基于Cookie实现灰度发布

本示例将用户请求中Cookie为key:value的访问转发至新版本应用。

阿里云负载均衡使用ALB实现灰度发布-云淘科技

  1. 登录应用型负载均衡ALB控制台。
  2. 在顶部菜单栏,选择ALB实例所属的地域。

  3. 实例页面,单击目标实例ID。

  4. 监听页签,找到目标监听,然后在操作列单击查看/编辑转发规则

  5. 转发规则页签,单击插入新规则

  6. 配置转发规则,然后单击确定

    • 转发条件:在下拉列表中选择Cookie,然后设置为keyvalue

    • 转发动作:在下拉列表中选择转发至,然后选择新版本应用的服务器。

    更多参数说明,请参见管理监听转发规则。

    说明

    您可以根据需要增加转发条件来增加新版本应用的流量,待运行一段时间稳定后,将所有的流量从老版本应用切换到新版本应用中,平滑地将老版本应用下线。

基于不同服务器组实现灰度发布

本示例将域名为example.com的访问分别转发至老版本应用和新版本应用,且老版本应用和新版本应用接收的请求比重分别为80%和20%。

阿里云负载均衡使用ALB实现灰度发布-云淘科技

  1. 登录应用型负载均衡ALB控制台。
  2. 在顶部菜单栏,选择ALB实例所属的地域。

  3. 实例页面,单击目标实例ID。

  4. 监听页签,找到目标监听,然后在操作列单击查看/编辑转发规则

  5. 转发规则页签,单击插入新规则

  6. 配置转发规则,然后单击确定

    • 转发条件:在下拉列表中选择域名,然后将域名设置为example.com

    • 转发动作:在下拉列表中选择转发至,然后选择老版本应用服务器组(权重80)和新版本应用服务器组(权重20)。

    更多参数说明,请参见管理监听转发规则。

    说明

    您可以根据需要调整服务器组权重来增加新版本应用的流量占比,待运行一段时间稳定后,将所有的流量从老版本应用切换到新版本应用中,平滑地将老版本应用下线。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/169453.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云容器服务ACK通过Nginx Ingress实现灰度发布和蓝绿发布-云淘科技

    当对服务进行版本更新升级时,需要使用到滚动升级、分批暂停发布、蓝绿发布以及灰度发布等发布方式。本文将介绍在ACK集群中如何通过Nginx Ingress Controller来实现应用服务的灰度发布。 背景信息 灰度及蓝绿发布是为新版本创建一个与老版本完全一致的生产环境,在不影响老版本的前提下,按照一定的规则把部分流量切换到新版本,当新版本试运行一段时间没有…

    2023年12月10日
  • 阿里云容器服务ACKIngress高级用法-云淘科技

    在Kubernetes集群中,Nginx Ingress对集群服务(Service)中外部可访问的API对象进行管理,提供七层负载均衡能力。您可以给Nginx Ingress配置提供外部可访问的URL、Rewrite配置、HTTPS服务、以及灰度发布功能等。本文介绍如何配置安全的路由服务、HTTPS双向认证、域名支持正则化及泛化,申请免费的HTTPS证书等功…

    阿里云容器服务 2023年12月10日
  • 阿里云容器服务ACK通过ALB Ingress实现灰度发布-云淘科技

    当服务迭代更新升级时,需要使用灰度发布保证系统的稳定性。ALB Ingress Controller支持设置注解,将请求流量按比例匹配到灰度服务。本文介绍如何使用ALB Ingress实现服务的灰度发布。 前提条件 已创建ALBConfig和IngressClass。具体操作,请参见创建ALBConfig。canary注解说明ALB Ingress支持使用c…

    阿里云容器服务 2023年12月10日
  • 阿里云容器服务ACKNginx Ingress高级用法-云淘科技

    在Kubernetes集群中,Nginx Ingress对集群服务(Service)中外部可访问的API对象进行管理,提供七层负载均衡能力。您可以给Nginx Ingress配置提供外部可访问的URL、Rewrite配置、HTTPS服务,以及灰度发布功能等。本文介绍如何配置安全的路由服务、HTTPS双向认证、域名支持正则化及泛化,申请免费的HTTPS证书等功…

    阿里云容器服务 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云负载均衡使用ALB实现灰度发布-云淘科技

    灰度发布(又称为金丝雀发布)是一种平滑过渡的发布方式,将老版本应用与新版本应用同时部署在环境中,让一部分用户继续使用老版本应用,一部分用户开始使用新版本应用,然后根据用户使用情况调整新版本流量占比,逐步把所有用户都迁移到新版本应用。 应用场景 互联网产品需要快速迭代开发上线,同时又要保证质量。为保证刚上线的系统出现问题后可以很快控制影响,需要设计一套灰度发布…

    2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。