配置中心灰度发布使用指南

灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。A/B Test就是一种灰度发布方式,让一部用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面 来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。

通过灰度发布功能,可以实现:

  • 对于一些对程序有比较大影响的配置,可以先在一个或者多个实例生效,观察一段时间没问题后再全量发布配置。
  • 对于一些需要调优的配置参数,可以通过灰度发布功能来实现A/B测试。可以在不同的机器上应用不同的配置,不断调整、测评一段时间后找出较优的配置再全量发布配置。

下面将结合一个实际例子来描述如何使用灰度发布功能。

操作流程介绍

  • 在配置中心创建配置组
  • 在配置组中创建一个命名空间
  • 为创建的命名空间添加灰度规则
  • 添加灰度配置
  • 灰度发布
  • [灰度的]全量发布

1 创建配置组

配置中心配置组中存在着一个appId=HoUoWWqxRj.apollo_gray配置组: HoUoWWqxRj.apollo_gray

2 创建命名空间

在创建配置组之后,默认会创建一个application命名空间。 可以在此空间中添加配置,此时的配置被称为主版本配置。 比如:

timeout = 2000

HoUoWWqxRj.apollo_gray

3 创建灰度

HoUoWWqxRj.apollo_gray 点击确定后,灰度版本就创建成功了,页面会自动切换到灰度版本Tab。 创建完灰度分支之后,会发现底部出现了主版本的配置,此时,可以通过右下角的操作按钮来对该配置进行灰度覆盖,以此创建出灰度值。你也可以直接添加新的灰度配置(key=value)。

HoUoWWqxRj.apollo_gray

HoUoWWqxRj.apollo_gray

随后进行灰度发布

4 创建灰度规则

点击编辑规则,在实例IP列表下拉框中会默认展示当前使用配置的机器列表,选择我们要灰度的IP,点击完成。如果下拉框中没找到需要的IP,说明机器还没从配置中心取过配置,可以点击手动输入IP来输入。 HoUoWWqxRj.apollo_gray

5 灰度发布

配置规则已经生效,不过灰度配置还没有发布。切换到配置Tab。

HoUoWWqxRj.apollo_gray

5 实例拉取配置

客户端接入以及如何拉取配置可参考前面通过注解方式开启通过配置文件开启介绍。 当客户端拉取配置的时候IP和灰度规则列表中的匹配,则客户端会拉取该灰度配置,并出现在灰度实例列表中。 比如: HoUoWWqxRj.apollo_gray

6 [灰度的]全量发布

如果灰度的配置测试下来比较理想,符合预期,那么就可以操作全量发布

全量发布的效果是:

  • 灰度版本的配置会合并回主版本,在这个例子中,就是主版本的timeout会被更新成1000.
  • 主版本的配置会自动进行一次发布
  • 在全量发布页面,可以选择是否保留当前灰度版本,默认为不保留

HoUoWWqxRj.apollo_gray

7 放弃灰度

如果灰度版本不理想或者不需要了,可以点击放弃灰度HoUoWWqxRj.apollo_gray

Copyright © www.daocloud.io 2019 all right reserved,powered by Gitbook修订时间: 2020-09-03 09:51:46

results matching ""

    No results matching ""