金丝雀发布(Canary Releases)的由来

17世纪,英国矿井工人发现,金丝雀对瓦斯这种气体十分敏感。空气中哪怕有极其微量的瓦斯,金丝雀也会停止歌唱;而当瓦斯含量超过一定限度时,虽然人类毫无察觉,金丝雀却早已毒发身亡。当时在采矿设备相对简陋的条件下,工人们每次下井都会带上一只金丝雀作为“瓦斯检测指标”,以便在危险状况下紧急撤离。

Kong的金丝雀发布简述

金丝雀发布又称灰度发布,是指在我们的生产环境中划分出一部分节点为灰度节点,当上新版本的时候,先上灰度环境并且会切换一部分流量过来,当灰度环境的流量都没有问题的时候,就会在整个生产环境上新版本。
我理解的可能有问题,请留言或者进群讨论一下

Kong的金丝雀发布的实现

假设生产环境的状况如下:

  • 创建upstream
upstreams/   POST
{"name":"xjj.tv.com"
}
  • 创建target
#灰度版本的target
/upstreams/b7208664-4c0b-4c64-98a2-683594bb1bfd/targets POST{"target":"172.16.0.92:8899","weight": 0
}
#生产版本
/upstreams/b7208664-4c0b-4c64-98a2-683594bb1bfd/targets POST
{"target":"172.16.0.92:8810","weight": 1000
}
  • b7208664-4c0b-4c64-98a2-683594bb1bfd 是上传面创建的upstream的id
  • 创建service
services POST
{
"name": "xjj.yv.com",
"protocol":"http",
"host":"xjj.tv.com",
"path":"/",
"read_timeout":6000
}
  • 创建路由
routes  POST
{
"protocols": ["http"],
"methods": ["GET"],
"paths": ["/xjj_tv"],
"service":{"id":"2fc52878-1fe9-48ba-bc45-146da3822851"}
}
  • 测试一下,注意多点几下
  • 现在灰度上了新版本,我们要切一部分流量过去:
/upstreams/b7208664-4c0b-4c64-98a2-683594bb1bfd/targets POST
{"target":"172.16.0.92:8810","weight": 800
}
/upstreams/b7208664-4c0b-4c64-98a2-683594bb1bfd/targets POST
{"target":"172.16.0.92:8899","weight": 200
}

相当于切换了五分之一的流量过去

  • 测试一下,点击多次,才会出现下面这个小姐姐

先写到这里了,有问题进QQ群630300475

通过Kong实现金丝雀发布相关推荐

  1. Kong网关之蓝绿部署和金丝雀发布

    蓝绿部署 使用upstream,可以轻松地为服务编排蓝绿部署. 设置"蓝色"环境,运行地址服务的版本v1: # create an upstream $ curl -X POST ...

  2. 蓝绿部署、金丝雀发布(灰度发布)、AB测试……

    点击关注公众号,Java干货及时送达 来源 | https://www.jianshu.com/p/0df88fe4a1e3 随着微服务架构的普及,线上服务越来越多,随之而来的就是部署越来越频繁:随着 ...

  3. 微服务治理实践 | 金丝雀发布

    来自:阿里巴巴中间件 前言 阿里巴巴集团内部有不少故障是因为发布直接或间接引起.因此提升发布的质量,减少错误的发生,是有效减少线上故障的一个关键环节. 为什么大部分的故障和发布相关?因为发布是整个功能 ...

  4. 使用级联功能实现蓝绿部署和金丝雀发布

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者:米开朗基杨 来源:公众号「云原生实验室」 上篇文章介绍了 Contour 分布式架构的 ...

  5. 微服务部署:蓝绿部署、滚动部署、灰度发布、金丝雀发布

    在项目迭代的过程中,不可避免需要"上线".上线对应着部署,或者重新部署:部署对应着修改:修改则意味着风险. 目前有很多用于部署的技术,有的简单,有的复杂:有的得停机,有的不需要停机 ...

  6. 蓝绿部署滚动部署金丝雀发布(灰度发布)A/B测试

    在一般情况下,升级服务器端应用,需要将应用源码或程序包上传到服务器,然后停止掉老版本服务,再启动新版本.但是这种简单的发布方式存在两个问题,一方面,在新版本升级过程中,服务是暂时中断的,另一方面,如果 ...

  7. Kong 1.3发布,原生gRPC代理、上游TLS交叉认证

    Kong 1.3 发布了,此版本亮点包括支持原生 gRPC 代理.上游 TLS 交叉认证,以及一系列新功能和性能改进. 原生 gRPC 代理 越来越多的用户转向微服务架构,并且希望有对原生 gRPC ...

  8. SpringCloudGateway实现金丝雀发布_05

    接上一篇:SpringCloudGateway 集成 nacos 整合实现动态路由 文章目录 一.启动服务 1. 启动Gateway-Serv模块服务 2. 启动auth-serv认证授权服务 3. ...

  9. 蓝绿部署、滚动部署、灰度发布、金丝雀发布-概念介绍---应用部署001

    在项目迭代的过程中,不可避免需要"上线".上线对应着部署,或者重新部署:部署对应着修改:修改则意味着风险. 目前有很多用于部署的技术,有的简单,有的复杂:有的得停机,有的不需要停机 ...

最新文章

  1. 智能车竞赛技术报告 | 智能视觉组 - 大连海事大学 - 菜鸡啄米
  2. Redmine使用指南
  3. python编程语法大全-python语法汇总
  4. mybatis整合redis
  5. 求细胞数量pascal题解
  6. 记录之Learning Deep Features for Discriminative Localization阅读
  7. SpringBoot自动装配源码解析
  8. 和各路巨佬の随机挑战3总结
  9. VBA教程初级(二):数据结构
  10. PAT(甲)1124 Raffle for Weibo Followers——未完成
  11. 网络广告中ctr是什么意思
  12. QLabel显示多行文本
  13. Android 自动换行添加控件
  14. 3D数学基础——Rotator类的C++实现
  15. 【沐风老师】3DMAX实线转虚线插件DashedShape使用教程
  16. 标准正态分布+标准正态分布概率表+分布函数+积分
  17. 扑克与投资哲学,活着最重要
  18. 谈企业信息化项目经理培训
  19. 首届全国智能制造(中国制造2025)创新创业大赛
  20. php 读取文件指定行,在PHP中读取文件的特定行

热门文章

  1. Python爬虫批量下载电影链接
  2. 剑侠录java_新蜀山剑侠录-刀剑痕
  3. 有什么适合打游戏的蓝牙耳机?玩游戏不延迟的蓝牙耳机推荐
  4. YQMA.net(你问我答---做最纯的技术问答社区)上线啦!!!
  5. 【技法操作】PS制作相机图标,UI设计教程
  6. 从程序员的尽头是业务说起
  7. Win7资源管理器崩溃
  8. 【 MATLAB 】conj 函数介绍(复共轭)
  9. 数据可视化分析之新技能——魔数图
  10. c mysql项目案例_C语言项目案例分析 目录