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

love374
发布于 2022-7-12 17:02
浏览
0收藏

 

大家好,我是不才陈某~

 

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

 

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

 

答案是:不行

 

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

 

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

 

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

 

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

 Nacos 如何实现生产环境中的灰度配置?-鸿蒙开发者社区
点击发布Beta则会创建一个灰度配置,如下:

 Nacos 如何实现生产环境中的灰度配置?-鸿蒙开发者社区
可以看到出现了两个版本的配置,如下:

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


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

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


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

 

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

 

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

 

文章转自公众号:码猿技术专栏

标签
已于2022-7-12 17:02:30修改
收藏
回复
举报
回复
    相关推荐