Kubernetes 作为基础平台,提供了强大的容器编排能力.但是在其上部署业务和服务治理上,仍然会面对一些复杂性和局限性.在服务治理上,已经有许多成熟的 ServiceMesh 框架用于扩充其能力,如 Istio.Linkerd.Dapr 等.本文将主要介绍如何使用 Istio 扩充 Kubernetes 灰度发布的能力. 而在部署上,则会利用开源项目 Rainbond 作为基础平台来进行实践.Rainbond 是一个云原生应用管理平台,它使用以应用为中心的设计模式.基于这一设计模式抽象出了标…
Istio是什么? Istio是Google继Kubernetes之后的又一开源力作,主要参与的公司包括Google,IBM,Lyft等公司.它提供了完整的非侵入式的微服务治理解决方案,包含微服务的管理.网络连接以及安全管理等关键能力,无需修改任何代码就能够实现微服务的负载均衡,服务与服务之间的认证授权以及监控.从整个基础设施角度上看,可以将它理解为PaaS平台上的一个面向微服务管理平台的补充. Istio架构示意图 Istio与Kubernetes Kubernetes提供了部署.升级和有限的…
本期是Istio技术实践专题的最后一个模块,主题是Istio的路由控制与灰度发布.上一期我们讲到,虚拟服务(Virtual Service)以及目标规则(Destination Rule)是 Istio 流量路由的两大基石.虚拟服务可以将流量路由到 Istio 服务网格中的服务.每个虚拟服务由一组路由规则组成,这些路由规则按顺序进行评估.如果没有 Istio virtual service,仅仅使用 k8s service 的话,那么只能实现最基本的流量负载均衡转发,但是就不能实现类似按百分比来…
Istio为用户提供基于微服务的流量治理能力.Istio允许用户按照标准制定一套流量分发规则,并且无侵入的下发到实例中,平滑稳定的实现灰度发布功能. 基于华为云的Istio服务网格技术,使得灰度发布全流程自动化管理: 灰度版本一键部署,流量切换一键生效 配置式灰度策略,支持流量比例.请求内容(Cookie.OS.浏览器等).源IP 一站式健康.性能.流量监控,实现灰度发布过程量化.智能化.可视化 Istio服务网格为应用治理提供的灰度发布功能,稳定高效地推动企业应用的迭代升级.用户无需使用繁琐的…
通过Kubernetes+Istio的流量控制实现灰度发布,主要演示通过流量权重实现蓝绿,通过http自定义头实现金丝雀 准备环境 k8s和istio不想自己装的话可以在云上买个按量付费集群,用完即删,推荐华为云. 项目中用到的代码 用的springboot+springcloud feign做rest强类型调用,放到github了 https://github.com/assionyang/istio-test.git 代码结构说明 istio-service-union #聚合服务项目,用来…
在 Bookinfo 微服务的灰度发布示例 中,KubeSphere 基于 Istio 对 Bookinfo 微服务示例应用实现了灰度发布.有用户表示自己的项目还没有上 Istio,要如何实现灰度发布? 在 Ingress-Nginx (0.21.0 版本) 中,引入了一个新的 Canary 功能,可用于为网关入口配置多个后端服务,还可以使用指定的 annotation 来控制多个后端服务之间的流量分配. KubeSphere 在 2.0.2 的版本 中,升级了项目网关 (Ingress Con…
Istio为用户提供基于微服务的流量治理能力.Istio允许用户按照标准制定一套流量分发规则,并且无侵入的下发到实例中,平滑稳定的实现灰度发布功能. 基于华为云的Istio服务网格技术,使得灰度发布全流程自动化管理: • 灰度版本一键部署,流量切换一键生效 • 配置式灰度策略,支持流量比例.请求内容(Cookie.OS.浏览器等).源IP • 一站式健康.性能.流量监控,实现灰度发布过程量化.智能化.可视化 Istio服务网格为应用治理提供的灰度发布功能,稳定高效地推动企业应用的迭代升级.用户无…
灰度发布,是指在黑与白之间,能够平滑过渡的一种发布方式.通俗来说,即让产品的迭代能够按照不同的灰度策略对新版本进行线上环境的测试,灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以对新版本进行测试.发现和调整问题,以保证其影响度.KubeSphere 基于 Istio 提供了蓝绿部署.金丝雀发布.流量镜像等三种灰度策略,无需修改应用的服务代码,即可实现灰度.流量治理.Tracing.流量监控.调用链等服务治理功能. 目的 本示例在 KubeSphere 容器平台中使用 Istio 官方提供的…
距上一篇博客"APP引导页的高度集成 - DHGuidePageHUD - ①"的发布有一段时间了, 后来又在SDK中补充了一些新的内容进去但是一直没来得及跟大家分享, 今天来跟大家分享一下, 还是一行代码搞定APP引导页, 废话不多说直接进入主题! 如果还没来得及看上一篇博客的话, 请大家点击这里进入: iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ①) ; (一)老规矩先上GitHub连接,给大家节省时间  GitHub地址: ht…
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57ee0934b690d84c3188d7c7 Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师.每周都会举行嘉宾分享,话题讨论等活动. 本期,我们邀请了 TesterHome 测试技术社区联合创始人"陈晔",为大家分享<移动互联网测试到质量的转变>. 分享内容简介: 在移动互联网越来越快的迭代项目中,很…