使用 Ingress 实现灰度发布 一.Canary 规则说明 Ingress-Nginx 是一个K8S ingress工具,支持配置 Ingress Annotations 来实现不同场景下的灰度发布和测试( Ingress-Nginx 是在0.21.0 版本 中,引入的Canary 功能). Nginx Annotations 支持以下 4 种 Canary 规则: nginx.ingress.kubernetes.io/canary-by-header:基于 Request Header…
灰度发布,是指在黑与白之间,能够平滑过渡的一种发布方式.通俗来说,即让产品的迭代能够按照不同的灰度策略对新版本进行线上环境的测试,灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以对新版本进行测试.发现和调整问题,以保证其影响度.KubeSphere 基于 Istio 提供了蓝绿部署.金丝雀发布.流量镜像等三种灰度策略,无需修改应用的服务代码,即可实现灰度.流量治理.Tracing.流量监控.调用链等服务治理功能. 目的 本示例在 KubeSphere 容器平台中使用 Istio 官方提供的…
蓝绿发布.金丝雀发布(灰度发布).AB测试 首先,了解下这几种发布方式的基础概念. 目前常见的发布策略有蓝绿发布.金丝雀发布(灰度发布).AB测试这几种,在国内的开发者中,对这几个概念有独立的理解.蓝绿发布通常被大家成为热部署:金丝雀发布在国内的名头完全被他的变种发布方式盖过了,主要是灰度发布与AB测试,下面来详细的为大家解释一下他们之间的异同. 蓝绿发布 在发布的过程中用户无感知服务的重启,通常情况下是通过新旧版本并存的方式实现,也就是说在发布的流程中,新的版本和旧的版本是相互热备的,通过切换…
本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章. 之前一篇介绍了Ingress的基本概念和Nginx Ingress的基本配置和使用,本篇继续Ingress的使用,来看看如何使用Ingress实现灰度发布(金丝雀发布).此外,我也有录制一个10min+的小视频介绍蓝绿发布和金丝雀发布的基本概念,视频入口点击这里. 一.准备工作 1.1 WebAPI项目准备 首先,我们还是准备两个版本的ASP.NET Core WebAPI项目,具体项…
一.灰度发布 灰度发布是一种发布方式,也叫金丝雀发布,起源是矿工在下井之前会先放一只金丝雀到井里,如果金丝雀不叫了,就代表瓦斯浓度高.原因是金丝雀对瓦斯气体很敏感.灰度发布的做法是:会在现存旧应用的基础上,启动一个新版应用,但是新版应用并不会直接让用户访问.而是先让测试同学去进行测试.如果没有问题,则可以将真正的用户流量慢慢导入到新版,在这中间,持续对新版本运行状态做观察,直到慢慢切换过去,这就是所谓的A/B测试.当然,你也可以招募一些灰度用户,给他们设置独有的灰度标示(Cookie,Heade…
Istio为用户提供基于微服务的流量治理能力.Istio允许用户按照标准制定一套流量分发规则,并且无侵入的下发到实例中,平滑稳定的实现灰度发布功能. 基于华为云的Istio服务网格技术,使得灰度发布全流程自动化管理: 灰度版本一键部署,流量切换一键生效 配置式灰度策略,支持流量比例.请求内容(Cookie.OS.浏览器等).源IP 一站式健康.性能.流量监控,实现灰度发布过程量化.智能化.可视化 Istio服务网格为应用治理提供的灰度发布功能,稳定高效地推动企业应用的迭代升级.用户无需使用繁琐的…
Istio为用户提供基于微服务的流量治理能力.Istio允许用户按照标准制定一套流量分发规则,并且无侵入的下发到实例中,平滑稳定的实现灰度发布功能. 基于华为云的Istio服务网格技术,使得灰度发布全流程自动化管理: • 灰度版本一键部署,流量切换一键生效 • 配置式灰度策略,支持流量比例.请求内容(Cookie.OS.浏览器等).源IP • 一站式健康.性能.流量监控,实现灰度发布过程量化.智能化.可视化 Istio服务网格为应用治理提供的灰度发布功能,稳定高效地推动企业应用的迭代升级.用户无…
Kubernetes 作为基础平台,提供了强大的容器编排能力.但是在其上部署业务和服务治理上,仍然会面对一些复杂性和局限性.在服务治理上,已经有许多成熟的 ServiceMesh 框架用于扩充其能力,如 Istio.Linkerd.Dapr 等.本文将主要介绍如何使用 Istio 扩充 Kubernetes 灰度发布的能力. 而在部署上,则会利用开源项目 Rainbond 作为基础平台来进行实践.Rainbond 是一个云原生应用管理平台,它使用以应用为中心的设计模式.基于这一设计模式抽象出了标…
此文系[大话云原生]系列第四篇,该系列文章期望用最通俗.简单的语言说明白云原生生态系统内的组成.架构以及应用关系.从这篇开始我们要开始针对Kubernetes进行介绍了,本文内容如下: 一.Kubernetes的Pod概念解析 前文说到老婆过生日了我们一起出去旅游,上了团体服务班车,小娜同学(老婆)闲聊到:"这服务还不错哈,2个跟车导游,1个司机".三句不离老本行,我无聊的说到:"他们三个人就是一个Pod,提供一天的旅游服务内容,有主有次不可分割". 小娜同学又上套…