阿里云 服务网格 ASM

一、ASM服务网格

  1. 简化服务的治理,包含:
    1)服务调用之间的流量路由与拆分管理
    2)服务间通信的认证安全
    3)网格可观测性能力

目的:减轻开发与运维工作负担,提升应用业务管理能力

  1. Istio入口网关的工作原理
    在这里插入图片描述
  2. 应用场景
    1)流量管理
    通过ASM,可以轻松实现基于配置的流量管理:

将流量管理与基础设施管理分隔开来,并提供了许多独立于应用代码之外的流量管理功能,在部署规模逐步扩大的过程中帮助简化流量管理。
管理服务网格的服务发现、流量路由和负载均衡,简化服务级属性的配置,例如超时和重试等。

2)服务安全
通过ASM,可以轻松实现服务之间的双向TLS认证:

支持以渐进方式实现mTLS双向认证,可以确保服务间通信以及最终用户与服务之间通信的安全。
双向TLS认证在实现过程中不需要更改服务代码,可以为每个服务提供基于角色的强大身份认证机制,以实现跨集群、跨云端的交互操作。
通过ASM,可以轻松实现服务之间的授权:

借助Istio授权机制,ASM确保只能从经过严格身份认证和授权的客户端访问包含敏感数据的服务。
支持对网格中的服务进行基于命名空间级别、服务级别和方法级别的访问权限控制,包括使用基于角色的语义、服务到服务和最终用户到服务的授权,并在角色和角色绑定方面提供灵活的自定义属性支持。
通过ASM,可以轻松实现密钥管理:

基于Istio的密钥管理系统,支持自动生成、分发、轮换与撤消密钥和证书。

3)故障恢复
通过ASM,可以轻松实现开箱即用的故障恢复功能:

分布式系统存在高度复杂性,在基础设施、应用逻辑、运维流程等环节都可能存在稳定性风险导致业务系统的失效。
提供了基于Istio的混沌工程能力,包括如何使用连接池配置和异常检测实现熔断能力,支持针对服务的重试和故障注入等能力。

4)服务可观测性
通过ASM,可以轻松实现服务之间的可观测性,借助强大可靠且易于使用的监控功能,快速有效地检测和修复问题。

通过集成的阿里云链路追踪服务,为分布式应用的开发者提供完整的调用链路还原、调用请求量统计、链路拓扑、应用依赖分析等工具,帮助开发者快速分析和诊断分布式应用架构下的性能瓶颈,提高开发诊断效率。

  1. 基本概念
    1)控制平面:
    负责管理和配置代理,从而实现路由流量

2)数据平面
有一组Sidecar 方式部署的智能代理(Envoy)组成,负责调节和控制微服务以及 Mixer 之间所有的网络通信。

3)虚拟服务(Virtual Service)
定义了一系列指定服务的路由规则

4)目标规则(Destination Rule)
定义了在路由发生后应用于服务的流量策略。

5)Istio 网关(Gateway)
定义了在网格出入口操作的负载均衡器,用于接收传入或传出的 HTTP/TCP 连接。

6)服务条目(Service Entry)
用于将一个服务添加到 Istio 抽象模型或服务注册表中,这些注册的服务是由 Istio 内部维护的。添加服务条目后,Envoy 代理可以将流量发送到该服务,如同这个添加的服务条目是网格中的其他服务一样。

7)入口网关服务(IngressGateway Service)
与 Istio 网关(Gateway)概念容易混淆的入口网关服务并不是指 Istio 自定义资源,而是指 Kubernetes 服务。它是真实的入口网关服务的抽象,后面由对应的容器来提供支持。通过ASM 创建一个入口网关服务时,会部署一个 Kubernetes 服务和 Deployment 资源到用户集群中。


版权声明:本文为weixin_41709748原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。