更新时间:2023-11-14 GMT+08:00
分享

概述

背景信息

在微服务架构下,有些开发需求会使微服务调用链路上的多个微服务同时发生了改动,通常每个微服务都会有灰度环境或分组来接收灰度流量。此时希望通过进入上游灰度环境的流量,也能进入下游灰度的环境中,确保一个请求始终在灰度环境中传递,即使这个调用链路上有一些微服务没有灰度环境,这些应用请求在下游的时候依然能够回到灰度环境中。通过Sermant Agent提供的全链路灰度能力,可以在不需要修改任何您的业务代码的情况下,能够轻松实现上述能力。

本文通过示例为您演示Sermant Agent全链路灰度功能。假设应用的架构由Sermant Agent以及后端的微服务架构(Spring Cloud)组成,后端调用链路:providerA->providerB,通过consumer调用后端服务,所有服务挂载的Sermant Agent使用CSE注册中心。

  • 此功能目前处于公测阶段,当前仅在华东-上海一支持。
  • 当ServiceComb引擎为2.4.0及以上版本且未开启安全认证时,支持此功能。

方案

通过设置Head参数,保证访问到灰度环境实例:

前提条件

  • 已创建云容器引擎(CCE),创建CCE请参考创建CCE集群
  • CCE集群版本需要大于等于1.15。
  • 已安装kubectl命令,安装kubectl命令请参考通过kubectl连接集群相关操作。
  • 已创建未开启安全认证的ServiceComb引擎实例,详情请参考快速创建ServiceComb引擎
  • 本地编译构建打包机器环境已安装了Java JDK、Maven,并且能够访问Maven中央库。
  • Sermant Agent开源版本要求1.0.6及以上。

相关文档