开发者社区> 初商> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Istio究竟是干嘛的?

简介: 要聊ServiceMesh,就不得不提Istio,它是ServiceMesh目前最流行的实践,今天说说Istio是干啥的。
+关注继续查看
福利推荐:阿里云、腾讯云、华为云等大品牌云产品全线2折优惠活动来袭,4核8G云服务器899元/3年,新老用户共享优惠,点击这里立即抢购>>>

上一篇介绍了《ServiceMesh究竟解决什么问题?》,当微服务架构体系越来越复杂的时候,需要将“业务服务”和“基础设施”解耦,将一个微服务进程一分为二:

image.png

  • 一个进程实现业务逻辑,biz,即上图白色方块
  • 一个进程实现底层技术体系,proxy,即上图蓝色方块,负载均衡、监控告警、服务发现与治理、调用链…等诸多基础设施,都放到这一层实现

如此解耦之后:

biz不管是调用服务,还是提供服务,都只与本地的proxy进行本地通信

所有跨网的通信,都通过proxy之间进行

要聊ServiceMesh,就不得不提Istio,它是ServiceMesh目前最流行的实践,今天说说Istio是干啥的。

画外音:不能落伍。

什么是Istio?

Istio是ServiceMesh的产品化落地,它的一些关键性描述是:

  • 帮助微服务之间建立连接,帮助研发团队更好的管理与监控微服务,并使得系统架构更加安全

画外音:Istio helps you to connect, secure, control, and observe microservices.

  • 帮助微服务分层解耦,解耦后的proxy层能够更加专注于提供基础架构能力,例如:

(1)服务发现(discovery);

(2)负载均衡(load balancing);

(3)故障恢复(failure recovery);

(4)服务度量(metrics);

(5)服务监控(monitoring);

(6)A/B测试(A/B testing);

(7)灰度发布(canary rollouts);

(8)限流限速(rate limiting);

(9)访问控制(access control);

(10)身份认证(end-to-end authentication);

画外音:佩服,硬是凑齐了十条,其实SM还能提供更多基础服务功能。

使得业务工程团队与基础架构团队都更加高效的工作,各自专注于自己的工作,更好的彼此赋能

画外音:说的还是解耦。

Istio官网是怎么吹嘘自己的?

画外音:这个问题的另一个问法是“为什么大家要来用Istio”。

Istio非常牛逼,如果要实施ServiceMesh,必须用Istio,因为:

可以通过,在现有服务器新增部署边车代理(sidecar proxy),应用程序不用改代码,或者只需要改很少的代码,就能实现上述N项基础功能

画外音:你信了么?

可以通过,控制后台,简单改改配置,点点按钮,就能管理和查看上述N项基础功能

以下特性,Istio在这个环节里进行了附加说明:

(1)负载均衡支持多协议,HTTP, gRPC, WebSocket, TCP;

(2)通过路由、重试、故障转移对流量进行细粒度流控;

(3)通过可插拔策略层以及可配置API,能够支持流量访问控制、限速、配额管理;

(4)自动度量、日志收集、调用跟踪;

(5)服务到服务的身份认证;

Istio的核心特性是什么?

Istio强调了它提供的五项关键特性:

流控(traffic management)

画外音:断路器(circuit breakers)、超时、重试、高可用、多路由规则、AB测试、灰度发布、按照百分比分配流量等。

安全(security)

画外音:加密、身份认证、服务到服务的权限控制、K8S里容器到容器的权限控制等。

可观察(observability)

画外音:追踪、监控、数据收集,通过控制后台全面了解上行下行流量,服务链路情况,服务运行情况,系统性能情况,国内微服务架构体系,这一块做得比较缺乏。

平台无关系(platform support)

画外音:K8s,物理机,自己的虚机都没问题。

集成与定制(integration and customization)

画外音:可定制化扩展功能。

Istio的吹嘘与特性,对于国外很多通过RESTful提供内网服务的公司,很有吸引力,但相对于国内微服务架构,未必达到了很好的拉拢效果:

(1)国内基本都是TCP的RPC框架,多协议支持未必是必须的;

(2)RPC框架里,路由、重试、故障转移、负载均衡、高可用都是最基础的;

(3)流控、限速、配额管理,是服务治理的内容,在微服务架构初期是锦上添花;

(4)自动度量,系统入口出口数据收集,调用跟踪,可观察和可操控的后台确实是最吸引人的;

(5)服务到服务的身份认证,微服务基本是内网访问,在架构初期也只是锦上添花;

另外一个花边,为什么代理会叫sidecar proxy?

image.png

看了上图就容易懂了,biz和proxy相生相伴,就像摩托车(motor)与旁边的车厢(sidecar)。未来,sidecar和proxy就指微服务进程解耦成两个进程之后,提供基础能力的那个代理进程。

Istio这么牛逼,它的核心架构如何呢?

且听下回分解。

image.png

架构师之路-分享技术思路

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Istio:架构与技术
Istio:架构与技术
124 0
国内首次Istio Meetup来了,主流社区专家邀你来共聊
随着云原生技术在国内的普及,Istio近两年在中国也越来越受到开发者的广泛应用,几乎所有中国的CSP都在基于Istio创建和运行他们的service mesh产品。自从2021年2月举办的第一届Istiocon技术峰会广受开发者们欢迎,开发者们也表达了强烈的诉求,希望能看到和参与更多的Istio技术meetup,有更多的技术爱好者一起来共同分享交流。
389 0
华为鸿蒙操作系统,究竟会在何时发布?
情况都还在不确定之中,而华为也要做好两手准备。
3148 0
公司请你来干嘛的?
公司请你来做什么? 1、请你来是解决问题而不是制造问题; 2、如果你不能发现问题或解决不了问题,你本人就是一个问题; 3、你能解决多大的问题,你就坐多高的位子; 4、你能解决多少问题,你就能拿多少薪水; 5、让解决问题的人高升,让制造问题的人让位,让抱怨问题的人下课; 问题就是你的机会 公司的问题:就是你改善的机会; 客户的问题:就是你提供服务的机会; 自己的问题:就是你成长的机会; 同事的问题:就是你提供支持建立合作机会; 领导的问题:就是你积极解决获得信任的机会 竞争对手的问题:就是你变强的机会。
1201 0
最好用的工兵铲—MaxCompute Studio,来了解下!
摘要: 在大数据计算北京高端峰会上,阿里云计算平台高级专家薛明深入介绍了阿里巴巴大数据计算平台开发利器—MaxCompute Studio。一站式的 IDE,可以快速完成数据浏览和管理、进行基于 SQL 和 UDF 的数据开发,更具备完善的作业分析和优化辅助等功能。
4537 0
上大学究竟是来干什么的?为什么会这样?
  此文作于2010年11月18日,原发于本人新浪博客《上大学究竟是来干什么的?为什么会这样?》。   上大学究竟是来干什么的?   大学为什么会是这样?   我该如何度过大学?   这些问题很典型,但一直困扰着很多同学,尤其是愿意上进的同学。下面是一封学生来信和我的“顶撞”之词。可能逻辑性差,先写信件的回复,再介绍背景。希望引发同学们的思考,帮助同学们在现在条件下,充实地走过这几年,并真正有
1802 0
+关注
770
文章
583
问答
来源圈子
更多
阿里云最有价值专家,简称 MVP(Most Valuable Professional),是专注于帮助他人充分了解和使用阿里云技术的意见领袖阿里云 MVP 奖项为我们提供了这样一个机会,向杰出的意见领袖表示感谢,更希望通过 MVP 将开发者的声音反映到我们的技术路线图上。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载


http://www.vxiaotou.com