灰度发布在UCloud大规模虚拟网络中的应用

灰度发布在UCloud大规模虚拟网络中的应用

作者:UCloud 2018-10-31 14:31:56

云计算 本文主要详细阐述了在UCloud的虚拟网络里,如何利用ServiceMesh技术在虚拟网络控制面以及利用可编程交换机在转发面实现灰度发布。

本文主要详细阐述了在UCloud的虚拟网络里,如何利用ServiceMesh技术在虚拟网络控制面以及利用可编程交换机在转发面实现灰度发布。
ServiceMesh实现控制面灰度
在控制面,早期灰度发布采用APIGW的方式实现。APIGW通常仅部署在用户流量的入口,完全灰度发布就需要完整地部署两套系统。但在微服务化的时代,任何一个微服务发生变更都需要完整地部署两套系统,这不仅成本高且严重影响产品变更速度。ServiceMesh以类似于将APIGateway部署到本地,同时提供集中化控制的方式,***地解决了这些问题。
UCloud的轻量级ServiceMesh平台基于Istio,继续使用Envoy代理,修改Pilot在保留完整的DSL支持的基础上实现了脱离K8S运行。
因此网络团队对Pilot做了高度订制,从而更能满足自身的需求。

订制方案一:按账号灰度。在GRPC或者HTTP请求中添加⾃自定义Header x-ucloud-routeby,x-ucloud-routeby采用Cookie的编码格式,在其中包含账户信息,配置Envoy根据该Header进行策略路由。
订制方案二:采用显式代理而不是IPTables透明引流的方式和Envoy集成,支持HTTP 1.0、HTTP 2.0和gRPC。在配置了Envoy的Proxy Port情况下,通过Envoy接入ServiceMesh;如果配置域名且没有配置Envoy的Proxy,则自动采用ETCD gRPC naming and discovery的方式; 如果配置IP地址和端口,则直连指定地址;

    订制方案三:采用docker-compose管理container实现sidecar。新方案中仍然采用container的方式打包和部署微服务,但采用Host的网络方式简化了现存服务的网络通信方式。通过采用docker-compose管理container实现sidecar,实现了一个简单的服务管理、版本管理、集群管理、路由策略管理层,为集群中的每台Node(VM或物理服务器)生成docker-compose配置文件,从而部署和管理每台Node的服务。
可编程交换机实现转发面灰度
在转发面灰度的方案选择上,团队采用了可编程交换机(基于Barefoot Tofino芯片)来实现灰度网关,替换普通交换机实现强灰度能力。
灰度网关***提供64个100G的接口提供6.4T带宽,PPS性能可达4400兆,延迟为us级别,能够很好支持网络宽带的高性能要求。灰度网关可以提供:一致性哈希ECMP的能力;可以基于任意定制字段(包括内层虚拟网络地址以及租户ID)计算哈希;在计算哈希前优先应用灰度规则,可以根据任意字段定制灰度规则,最小粒度可以做到按TCP流来灰度。

转发面灰度示例
有了上述这些新工具,可以通过部署新的策略实现更加细粒的灰度发布,具体方案为:可编程交换机BGP宣告集群VIP引流,根据选择字段计算一致性哈希后将流量量分发给后端服务器,并按照选择字段(VNI、源地址、目的地址)配置灰度规则。
灰度步骤如下:
 按VM的粒度将流量量切换到灰度后端服务器器
 切换完成后立刻自动回归测试,根据路由表自动生成监测地址列表,并Ping检测网络互通性
 测试通过则逐步增加灰度的VM地址
 直到整个VPC的流量量全部切换到灰度后端服务器器
 再切换一个新的VPC,直到所有分片内的VPC都切换到新的灰度后端服务器
 完成灰度发布

以上内容最早发表于UCloud 10月12日在上海主办的Tech Talk***期活动。Tech Talk是UCloud面向用户做深度技术交流的线下活动,后面也会继续举办,欢迎参加。

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/231027.html<

(0)
管理的头像管理
上一篇2025-04-19 12:26
下一篇 2025-04-19 12:27

相关推荐

  • 网站被刷流量攻击怎么防御,有效防御方法有哪些?

    防御网站刷流量攻击,核心在于构建多层级防护体系,包括流量清洗、速率限制、冗余带宽,以及选择持牌IDC服务商提供底层支撑,缺一不可,刷流量攻击的常见类型与识别方法攻击类型:DDoS、CC、HTTP洪水刷流量攻击通常指恶意消耗服务器资源的网络攻击,常见形式包括:DDoS攻击:通过大量僵尸网络向目标服务器发送海量数据……

    2026-07-27
    0
  • 服务器系统崩溃后如何重装不丢数据,有哪些方法

    服务器系统崩溃后重装系统不丢数据,核心在于预先将系统盘和数据盘分离,重装时选择只格式化系统盘,或通过救援模式备份数据, 如果你没有提前规划,那数据恢复难度会大幅增加,但并非无解,为什么系统崩溃后重装还能保住数据服务器系统崩溃往往是操作系统层面的故障,比如内核异常、文件系统损坏、关键配置错误,导致无法正常启动,但……

    2026-07-27
    0
  • 物理服务器BIOS模式如何切换,操作步骤有哪些?

    物理服务器BIOS模式切换,本质上是通过重启进入BIOS设置界面,在Boot Mode选项中从Legacy改选为UEFI(或反之),并保存退出,理解BIOS模式:Legacy与UEFI的区别BIOS(基本输入输出系统)是服务器启动时最先运行的固件,负责初始化硬件并加载操作系统,当前主流模式分为Legacy(传统……

    2026-07-27
    0
  • 服务器上传下载速度慢怎么优化,原因是什么?

    服务器上传下载速度慢,问题通常出在带宽、线路、服务器配置或本地环境上,优化需要从这几个维度逐一排查,才能真正提升传输效率,诊断瓶颈:速度慢到底卡在哪里带宽与线路:最容易被忽视的短板排查速度慢的第一步是检查带宽,很多用户只关注下载,不清楚上行带宽远小于下行,如果带宽本身不足,任何优化都是徒劳,线路质量同样关键……

    2026-07-27
    0
  • 站群服务器怎么搭配不同IP段效果好?,怎么提升收录

    站群服务器搭配不同 IP 段,核心在于用分散的 C 段做基础、B 段做隔离,再配合不同运营商和 AS 号,模拟真实用户分布,避免搜索引擎识别出批量站点关联,实践中建议每个 C 段部署不超过 5 个站点,大权重站点使用独立 B 段,并定期检测 IP 纯净度,理解 IP 段与站群关联性C 段、B 段、A 段在搜索引……

    2026-07-27
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注