Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布

Istio是Google继Kubernetes之后的又一开源力作,主要参与的公司包括Google,IBM,Lyft等公司。它提供了完整的非侵入式的微服务治理解决方案,包含微服务的管理、网络连接以及安全管理等关键能力,无需修改任何代码就能够实现微服务的负载均衡,服务与服务之间的认证授权以及监控。从整个基础设施角度上看,可以将它理解为PaaS平台上的一个面向微服务管理平台的补充。

 

Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布

                                                               Istio架构示意图

Istio与Kubernetes

Kubernetes提供了部署、升级和有限的运行流量管理能力;利用service的机制来做服务注册和发现,转发,通过kubeproxy有一定的转发和负载均衡能力。但并不具备上层如熔断、限流降级、调用链治理等能力.

Istio则很好的补齐了k8s在微服务治理上的这部分能力,同时是基于k8s构建的,但不是像SpringCloud Netflix等完全重新做一套。Istio是谷歌微服务治理上的非常关键的一环。

 

Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布

Istio与k8s紧密结合,包括:Sicecar 运行在k8s pod里,作为一个proxy和业务容器部署在一起,部署过程对用户透明。Mesh中要求业务程序的运行感知不到sidecar的存在,基于k8sd的pod的设计这部分做的更彻底,对用户更透明,用户甚至感知不到部署sidecar的这个过程。试想如果是通过VM上部署一个agent,不会有这么方便。

Pilot中包含一个controller,通过list/watch kube-apiserver自动发现K8S中的services、endpoints。它通过在Kubernetes里面注册一个controller来监听事件,从而获取Service和Kubernetes的Endpoint以及Pod的关系,但是在转发层面,不再使用kube-proxy转发了,而是将这些映射关系转换成为pilot自己的转发模型,下发到envoy进行转发。

 

Istio最佳实践:在K8s上通过Istio服务网格进行灰度发布

K8s编排容器服务已经成为一种事实上的标准;因为微服务与容器在轻量、快速部署运维等特征的匹配,微服务运行在容器中也正成为一种标准实践;对于云原生应用,采用Kubernetes构建微服务部署和集群管理能力,采用Istio构建服务治理能力,将逐渐成为应用微服务转型的标准配置。

      

 

自行管理Istio与CCE上使用Istio服务网格的对比

华为云 · 云容器引擎CCE(Cloud Container Engine)提供高可靠高性能的企业级容器应用管理服务,支持Kubernetes社区原生应用和工具,简化云上自动化容器运行环境搭建:

简单易用:自动化创建容器集群,一站式部署/运维容器应用,一键式滚动升级;

高性能:自研高性能容器网络,秒级自动弹性伸缩,支持高性能裸金属容器私有集群;

企业级:集群控制面HA和跨AZ高可用,容器应用优雅伸缩,安全下线,保障业务不掉线;

开放兼容:兼容Kubernetes/Docker社区原生版本,CNCF认证的Kubernetes服务提供商,社区的主要贡献者;

 

下列从安装、运行管理和监控多维度对比自建Istio和华为云CCE上使用Istio的差别:

 

 

自建

 

华为云CCE

 

Istio包管理

 

用户自行下载和管理

 

用户不感知

 

运行配置

 

用户自行配置运行环境和依赖

 

用户不感知

 

Istio安装

 

用户自行探索和安装

 

用户不需要关注具体细节,创建集群时按需启用。

 

Sidecar注入

 

用户自行探索和开发、配置

 

用户不感知

 

Istio升级

 

用户自行探索、开发不影响业务的升级方案

 

提供完整解决方案,按需进行控制面和数据面的升级操作

 

应用调用链

 

用户自行探索、开发和安装、配置

 

对接华为云APM/AOM服务,提供请求调用链跟踪查看能力

 

应用拓扑

 

用户自行探索、开发和安装、配置

 

对接华为云APM/AOM服务,提供查看应用拓扑能力

 

性能监控

 

用户自行探索、开发和安装、配置

 

对接华为云APM/AOM服务,提供请求响应时延的实时性能状态监控

 

 

云原生应用在CCE上的部署、管理实践 云原生应用、云平台与微服务架构

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpdygp.html