分享

Nacos 如何实现生产环境中的灰度配置?

 woh5r1ofyffxnh 2023-03-03 发布于浙江

大家好,我是不才陈某~

实际生产环境中难免会涉及到配置的更新,而有些配置是否可行仅仅在本地、测试环境运行是很难保证生产环境不出错,此时就需要将配置变更到生产环境中进行测试。

如何变更?直接修改使其全部生效吗?

答案是:不行

原因很简单:如果这个配置有问题,那么将使得整个集群服务瘫痪

此时就要采用灰度配置:只针对某些服务做变更,一旦这些配置没问题,将作用于所有服务,这样能够使得服务平稳的运行,不至于整个集群瘫痪。

Nacos中如何灰度配置

在Nacos1.1.0起配置已经支持灰度配置,在配置编辑中,勾选Beta发布,在文本框中勾选需要下发服务的IP地址,多个用英文逗号分隔。

比如在我的《Spring Cloud Alibaba微服务实战》专栏中的blog-article-dev.yaml配置文件中,加入灰度发布需要的版本信息,作用的服务ip地址为127.0.0.1,如下图:

点击发布Beta则会创建一个灰度配置,如下:

可以看到出现了两个版本的配置,如下:

  • 正式版:这个是针对除了Beta版中指定的IP服务生效
  • Beta版:灰度配置,只对特定的IP生效

底部有两个按钮,功能如下:

  • 停止Beta:直接删除灰度配置
  • 发布:将灰度配置发布到正式版,将会覆盖掉正式的配置

如果经过线上的测试,证明你的灰度配置没问题,则直接点击发布,将会覆盖掉正式配置,一键生效将作用于整个集群。

总结

灰度配置在实际的生产环境中是非常重要的,使得你的服务能够平稳的运行。

和灰度配置同样重要的是灰度发布,如何能够实现你的整个微服务全链路灰度发布,这个将放在陈某的实战专栏中介绍。


这几天一直忙着《Spring Cloud Alibaba微服务实战》专栏视频的录制,刚把Nacos、OpenFeign项目实战部分录完:

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多