微服务架构解决方案-istio

PDF : https://pan.baidu.com/s/1RoPjq7PuAjxvnwIUZB1eTQ

  • Service Mesh是专用的基础设施层。 

  • 轻量级高性能网络代理。 

  • 提供安全的、快速的、可靠地服务间通讯。 

  • 与实际应用部署一起,但对应用透明。 

  • 应用作为服务的发起方,只需要用最简单的方式将请求发送给本地的服务网格代理,然后网格代理会进行后续的操作,如服务发现,负载均衡,最后将请求转发给目标服务。

service mesh架构

istio

  • 流量管理:控制服务之间的流量和API调用的流向,使得调用更可靠,并使网络在恶劣情况下更加健壮。

  • 可观察性:了解服务之间的依赖关系,以及它们之间流量的本质和流向,从而提供快速识别问题的能力。

  • 策略执行:将组织策略应用于服务之间的互动,确保访问策略得以执行,资源在消费者之间良好分配。策略的更改是通过配置网格而不是修改应用程序代码。

  • 服务身份和安全:为网格中的服务提供可验证身份,并提供保护服务流量的能力,使其可以在不同可信度的网络上流转。

  • 除此之外,Istio针对可扩展性进行了设计,以满足不同的部署需要:

  • 平台支持:Istio旨在在各种环境中运行,包括跨云, 预置,Kubernetes,Mesos等。最初专注于Kubernetes,但很快将支持其他环境。

  • 集成和定制:策略执行组件可以扩展和定制,以便与现有的ACL,日志,监控,配额,审核等解决方案集成。

  • 这些功能极大的减少了应用程序代码,底层平台和策略之间的耦合,使微服务更容易实现。

整体架构

  • Envoy:以sidecar的形式和应用程序运行与同一个pod中,通过修改iptables来代理应用程序的所有出入流量。

    • svcB有两个版本,在svcA无感知的情况下根据路由规则将1%的流量发到新版本,实现类似灰度发布的功能。

  • Pilot:接受系统管理员发出的指令或者规则,遥控所有Envoy的行为

  • Mixer:从Envoy处获取流量属性,根据自定义的属性匹配规则进行流量处理,如:流量限制、日志记录等

  • Citadel:负责安全策略,如TLS证书颁发

未完待续

你可能感兴趣的:(微服务架构解决方案-istio)