Istio究竟是干嘛的?
上一篇介绍了《ServiceMesh究竟解决什么问题?》,当微服务架构体系越来越复杂的时候,需要将“业务服务”和“基础设施”解耦,将一个微服务进程一分为二:
如此解耦之后:
要聊ServiceMesh,就不得不提Istio,它是ServiceMesh目前最流行的实践,今天说说Istio是干啥的。 画外音:不能落伍。 什么是Istio? Istio是ServiceMesh的产品化落地,它的一些关键性描述是: (1) 帮助微服务之间建立连接,帮助研发团队更好的管理与监控微服务,并使得系统架构更加安全 画外音:Istio helps you to connect, secure, control, and observe microservices. (2) 帮助微服务分层解耦,解耦后的proxy层能够更加专注于提供基础架构能力,例如:
画外音:佩服,硬是凑齐了十条,其实SM还能提供更多基础服务功能。 (3) 使得业务工程团队与基础架构团队都更加高效的工作,各自专注于自己的工作,更好的彼此赋能 画外音:说的还是解耦。 Istio官网是怎么吹嘘自己的? 画外音:这个问题的另一个问法是“为什么大家要来用Istio”。 Istio非常牛逼,如果要实施ServiceMesh,必须用Istio,因为: (1) 可以通过,在现有服务器新增部署边车代理(sidecar proxy),应用程序不用改代码,或者只需要改很少的代码,就能实现上述N项基础功能 画外音:你信了么? (2) 可以通过,控制后台,简单改改配置,点点按钮,就能管理和查看上述N项基础功能 (3) 以下特性,Istio在这个环节里进行了附加说明:
Istio的核心特性是什么? Istio强调了它提供的五项关键特性: (1) 流控(traffic management) 画外音:断路器(circuit breakers)、超时、重试、高可用、多路由规则、AB测试、灰度发布、按照百分比分配流量等。 (2) 安全(security) 画外音:加密、身份认证、服务到服务的权限控制、K8S里容器到容器的权限控制等。 (3) 可观察(observability) 画外音:追踪、监控、数据收集,通过控制后台全面了解上行下行流量,服务链路情况,服务运行情况,系统性能情况,国内微服务架构体系,这一块做得比较缺乏。 (4) 平台无关系(platform support) 画外音:K8s,物理机,自己的虚机都没问题。 (5) 集成与定制(integration and customization) 画外音:可定制化扩展功能。 Istio的吹嘘与特性,对于国外很多通过RESTful提供内网服务的公司,很有吸引力,但相对于国内微服务架构,未必达到了很好的拉拢效果:
另外一个花边,为什么代理会叫sidecar proxy? 看了上图就容易懂了,biz和proxy相生相伴,就像摩托车(motor)与旁边的车厢(sidecar)。未来,sidecar和proxy就指微服务进程解耦成两个进程之后,提供基础能力的那个代理进程。 Istio这么牛逼,它的核心架构如何呢? 且听下回分解。 【本文为51CTO专栏作者“58沈剑”原创稿件,转载请联系原作者】 戳这里,看该作者更多好文 【编辑推荐】
点赞 0 (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |