五、灰度发布使用指南
- 对于一些对程序有比较大影响的配置,可以先在一个或者多个实例生效,观察一段时间没问题后再全量发布配置。
100004458(apollo-demo)项目有两个客户端:
- 10.32.21.19
- 10.32.21.22
灰度目标:
- 当前有一个配置timeout=2000,我们希望对10.32.21.22灰度发布timeout=3000,对10.32.21.19仍然是timeout=2000。
5.2 创建灰度
首先点击application namespace右上角的按钮。
点击确定后,灰度版本就创建成功了,页面会自动切换到灰度版本
Tab。
点击主版本的配置
中,timeout配置最右侧的对此配置灰度
按钮
在弹出框中填入要灰度的值:3000,点击提交。
5.4 配置灰度规则
切换到灰度规则
Tab,点击按钮
如果下拉框中没找到需要的IP,说明机器还没从Apollo取过配置,可以点击手动输入IP来输入,输入完后点击添加按钮
配置规则已经生效,不过灰度配置还没有发布。切换到配置
Tab。
再次检查灰度的配置部分,如果没有问题,点击灰度发布
。
在弹出框中可以看到主版本的值是2000,灰度版本即将发布的值是3000。填入其它信息后,点击发布。
发布后,切换到灰度实例列表
Tab,就能看到10.32.21.22已经使用了灰度发布的值。
切换到的实例列表
,会看到主版本配置只有10.32.21.19在使用了。
后面可以继续配置的修改或规则的更改。配置的修改需要点击灰度发布后才会生效,规则的修改在规则点击完成后就会实时生效。
5.6 全量发布
如果灰度的配置测试下来比较理想,符合预期,那么就可以操作全量发布
。
全量发布的效果是:
- 灰度版本的配置会合并回主版本,在这个例子中,就是主版本的timeout会被更新成3000
- 在全量发布页面,可以选择是否保留当前灰度版本,默认为不保留。
我选择了不保留灰度版本,所以发布完的效果就是主版本的配置更新、灰度版本删除。点击主版本的实例列表,可以看到10.32.21.22和10.32.21.19都使用了主版本最新的配置。
如果灰度版本不理想或者不需要了,可以点击放弃灰度
。
5.8 发布历史
点击主版本的发布历史
按钮,可以看到当前namespace的主版本以及灰度版本的发布历史。