首页 > 其他分享 >使用ALB实现灰度发布

使用ALB实现灰度发布

时间:2024-11-27 09:01:00浏览次数:9  
标签:版本 单击 ALB 发布 灰度 应用 转发 监听

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

应用场景

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

准备工作

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

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

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

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

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

基于HTTP标头实现灰度发布

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

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

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

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

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

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

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

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

    更多参数说明,请参见配置监听转发规则

    说明

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

基于Cookie实现灰度发布

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

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

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

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

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

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

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

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

    更多参数说明,请参见配置监听转发规则

    说明

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

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

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

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

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

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

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

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

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

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

    更多参数说明,请参见配置监听转发规则

    说明

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

标签:版本,单击,ALB,发布,灰度,应用,转发,监听
From: https://blog.csdn.net/2401_88127808/article/details/143892946

相关文章

  • Spring Boot 3.4 正式发布,结构化日志!
    1从SpringBoot3.3升级到3.41.1RestClient和RestTemplate新增对RestClient和RestTemplate自动配置的支持,可用ReactorNetty的HttpClient或JDK的HttpClient。支持的客户端优先级:ApacheHTTPComponents(HttpComponentsClientHttpRequestFactory)JettyCli......
  • 使用Python常用库处理-可视化凯斯西储大学轴承数据集 完成轴承原始信号图、灰度图和灰
    凯斯西储大学轴承数据图包括原始信号图,灰度图,灰度图像加噪声图处理和可视化凯斯西储大学轴承数据集,包括原始信号图、灰度图和灰度图像加噪声图。我们将使用Python和一些常用的库来完成这些任务。1.数据集准备数据集概述数据集名称:凯斯西储大学轴承数据集数据集来......
  • WebRTC 作者加入 OpenAI 主导实时 AI 项目;TTS 小模型 OuteTTS v0.2 发布:声音克隆+多语
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 使用Python常用库处理-可视化凯斯西储大学轴承数据集 完成轴承原始信号图、灰度图和灰
    凯斯西储大学轴承数据图包括原始信号图,灰度图,灰度图像加噪声图处理和可视化凯斯西储大学轴承数据集,包括原始信号图、灰度图和灰度图像加噪声图。我们将使用Python和一些常用的库来完成这些任务。1.数据集准备数据集概述数据集名称:凯斯西储大学轴承数据集数据集来......
  • NTFS Permissions Reporter 与 Albus Bit NTFS Permissions Auditor Pro 两款工具的对
    NTFSPermissionsReporter与AlbusBitNTFSPermissionsAuditorPro两款工具的对比表格,展示它们在功能、优缺点、适用场景等方面的主要区别:功能/特点NTFSPermissionsReporterAlbusBitNTFSPermissionsAuditorPro主要功能文件权限审计、报告生成、权限继承......
  • 极狐GitLab 正式发布最新版本 17.6
    沿袭我们的月度发布传统,极狐GitLab发布了17.6版本,该版本带来了增强的合并请求审核者指派、在部署详情页面显示版本注释、在部署详情页面显示版本注释等几十个重点功能的改进。下面是部分重点功能的详细解读。关于极狐GitLab的安装升级,可以查看官方指导文档。17.6容器镜像......
  • Burp Suite Professional 2024.11 发布下载,新增功能简介
    BurpSuiteProfessional2024.11发布下载,新增功能简介BurpSuiteProfessional2024.11(macOS,Linux,Windows)-Web应用安全、测试和扫描2024年11月25日,版本2024.11请访问原文链接:https://sysin.org/blog/burp-suite-pro/查看最新版。原创作品,转载请保留出处。......
  • Drive SnapShot 1.50 是由 Tom Ehlert 开发的一款磁盘备份和恢复软件,最初发布的版本
    DriveSnapshot-DiskImageBackupforWindowsNT/2000/XP/2003/X64DriveSnapShot1.50DiskImageBackupforWindows2000/XP/Vista/2003/7/2008/2008R2/8/8.1/10/11/2012/2012R2/2016/2019/2022/PE/x64DriveSnapShot是由TomEhlert开发的一款磁盘备份和恢复软件,最......
  • Win11系统缺失Microsoft.VisualBasic.Compatibility.Data.resources.dll文件的解决方
    在Windows11操作系统中,用户可能会遇到系统提示找不到Microsoft.VisualBasic.Compatibility.Data.resources.dll文件的问题。这个DLL文件是.NETFramework的一部分,特别是与VisualBasic应用程序的兼容性相关。当这个文件缺失或损坏时,依赖它的应用程序可能无法正常运行,导致错误......
  • springboot毕设 牲畜信息发布 程序+论文
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着农业现代化的不断推进,畜牧业作为农业的重要组成部分,其信息化、智能化水平的高低直接影响到整个农业产业链的效率与效益。在当前的市场环境下,牲畜......