Nginx+Lua 实现灰度发布标签(空格分隔): Nginxlua脚本由人人网运维组长王李明提供一、概念灰度发布概念按照一定的关系区分,分不分的代码进行上线,使代码的发布能平滑过渡上线 △使用用户的信息cookie等信息区别 △根据用户的ip地址区分 (本次使用ip地址区分) 灰度发布百度解释灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其
前言       随着公司业务规模扩大,传统的架构已无法支撑业务量阶梯式的增长,应用发布也必须迎来调整。之前的发布方式,需要通过脚本切换nginx,然后通过ansible进行批量发布;由于业务的特殊性质,原有方案一旦上线代码出现bug或者人为出现操作失误,将导致大面积应用无法提供服务,为了避免故障发生造成毁灭性的后果,决定分布进行架构调整
背景介绍Ingress作为K8S集群中一种独立的组件,我们需要通过创建它来控制外部访问流量的策略,并通过Ingress Controller将其分配到一个或多个SVC中。K8S官方维护的Controller为Nginx Ingress,该Ingress支持通过配置注解(英文:annotations)的方式来实现蓝绿发布灰度发布和A/B测试等场景。使用案例使用Nginx Ingress实现灰度发布
一个大型的前端项目在发布时,都会采取灰度策略。很多时候,不可能全量放出一个新的feature,可能带来的风险很大,一般都会先进行部门灰度,然后再20%,40%灰度,直到全量发布。那到底灰度是啥,它的原理是什么? 本文值得收藏后阅读~目录前言什么是灰度发布常见灰度发布方案1. 简单ngxin分流(推荐指数:⭐️)2. nginx + lua + redis(推荐指数:⭐️⭐️)3. 服务端渲染分流(
由于业务需要,要做灰度发布测试,刚开始考虑通过IP来做判断,分发不同的后端,但是由于IP不好确定,有的客户端IP不固定,所以考虑用cookie来做逻辑很简单,如下图: 在nginx做这个很简单,两个方法,map或if首先看map怎么做为了模拟环境,我又不想多开服务器,所以起了个httpd,配置两个vhost,当作两个后端,如下: 我给这两个vhost,配置不同
今天是元宵,祝大家元宵节快乐!在日常的工作中,我们会经常对应用进行发版升级,在互联网公司尤为频繁,主要是为了满足快速的业务发展。我们经常用到的发布方式有滚动更新、蓝绿发布灰度发布。滚动更新:依次进行新旧替换,直到旧的全部被替换为止。蓝绿发布:两套独立的系统,对外提供服务的称为绿系统,待上线的服务称为蓝系统,当蓝系统里面的应用测试完成后,用户流量接入蓝系统,蓝系统将称为绿系统,以前的绿系统就可以销
灰度发布使用背景 最近公司一直在推进DevOps,主要目标是减少对个人的依赖,降低团队之间的损耗,在保证质量的前提下,快速交付价值。在实际执行过程中表现出来的就是服务拆分粒度尽可能细,服务每次上线功能尽可能少,发布节奏尽可能快; 服务必须做到可灰度、可监控、可回滚。至于监控先暂且不聊,如何做到灰度发布升级以及回滚呢?整个PaaS平台是基于Kubernetes进行建设,Kubernetes资源对象D
# 什么是灰度发布,以及灰度发布A/B测试在一般情况下,升级服务器端应用,需要将应用源码或程序包上传到服务器,然后停止掉老版本服务,再启动新版本。但是这种简单的发布方式存在两个问题,一方面,在新版本升级过程中,服务是暂时中断的,另一方面,如果新版本有BUG,升级失败,回滚起来也非常麻烦,容易造成更长时间的服务不可用。为了解决这些问题,人们研究出了多种发布策略,下面我们一一介绍。## 蓝绿部署所谓蓝
一、灰度发布原理说明灰度发布在百度百科中解释:灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面 来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。 这里的用于WEB系统新代码的测试发布,让一部分
转载 4月前
64阅读
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度...
转载 2019-12-05 09:11:00
328阅读
2评论
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。灰度发布常见一般有三种方式: Nginx+LUA方式 根据Cookie实现灰度发布...
转载 2021-07-30 15:19:27
265阅读
ingress-nignx基于request实现灰度
原创 2022-08-17 15:34:28
145阅读
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。 灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。 灰 ...
转载 2021-07-17 16:28:00
236阅读
2评论
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。灰度发布常见一般有三种方式:Nginx+LUA方式根据Cookie实现灰度发布根据来路IP实现灰度发布本文
原创 2021-01-30 10:53:24
639阅读
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。 灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。 灰
转载 2017-08-13 15:48:00
143阅读
2评论
背景信息 灰度及蓝绿发布是为新版本创建一个与老版本完全一致的生产环境,在不影响老版本的前提下,按照一定的规则把部分流量切换到新版本,当新版本试运行一段时间没有问题后,将用户的全量流量从老版本迁移至新版本。其中AB测试就是一种灰度发布方式,一部分用户继续使用老版本的服务,将一部分用户的流量切换到新版本,如果新版本运行稳定,则逐步将所有用户迁移到新版本。本文将介绍在K8S集群中如何通过Nginx In
灰度发布,简单来说,就是根据各种条件,让一部分用户使用旧版本,另一部分用户使用新版本。nginx 的语法本身可以看作是一门小型的编程语言,通过简单的编程,可以轻松实现基于IP的灰度发布。需求:搭建准生产环境,供开发人员/运维在线上做最后的调整。如果OK,直接用rsync推送至生产环境。条件:办公室网络出口有固定IP解决办法:nginx 负载均衡器判断客户端IP地址,如果是办公室IP,则反向代理到准
推荐 原创 2014-04-25 20:39:06
10000+阅读
2评论
灰度发布,简单来说,就是根据各种条件,让一部分用户使用旧版本,另一部分用户使用新版本。nginx 的语法本身可以看作是一门小型的编程语言,通过简单的编程,可以轻松实现基于IP的灰度发布。需求:搭建准生产环境,供开发人员/运维在线上做最后的调整。如果OK,直接用rsync推送至生产环境。条件:办公室网络出口有固定IP解决办法:nginx 负载均衡器判断客户端IP地址,如果是办公室IP,则反向代理到准
转载 精选 2016-01-12 17:31:54
791阅读
Nginx+Lua实现灰度发布标签(空格分隔):Nginx博客地址:https://i4t.comlua脚本由人人网运维组长王李明提供一、概念灰度发布概念按照一定的关系区分,分不分的代码进行上线,使代码的发布能平滑过渡上线△使用用户的信息cookie等信息区别△根据用户的ip地址区分(本次使用ip地址区分)灰度发布百度解释灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其
原创 2021-03-09 12:23:45
447阅读
  • 1
  • 2
  • 3
  • 4
  • 5