第四章 可扩展的策略和遥测

4.1 Istio策略和遥测的原理

  4.1.1 应用场景

  想知道服务运行得怎么样、有没有问题、哪里有问题,涉及采集数据、存储数据和检索数据。

  在Istio中,基于Mixer的遥测数据收集方式:有一个服务端组件Mixer, 在逻辑上将Envoy和各种遥测数据的收集解耦,并将Envoy和真正的遥测后端解耦。  

  4.1.2 工作原理

  (1)Envoy生成数据并将数据上报给Mixer,比如生成一条服务A访问服务B的数据,包括时间、服务A的IP、服务B的IP等。

     (2)Mixer调用对应服务后端处理收到的数据,例Mixer调用一个APM(Application Perfromance Monitor)的Adapter,将数据上报到APM后端。

     在Mixer的Adapter里封装了对数据的处理逻辑和对后端服务的调用接口,Adatper的存在实体就是一个处理数据的二进制加一个配置的定义。Adapter提供通用接口供Mixer调用,然后将调用转到对应的后端服务。    

  4.1.3 属性

    1 Istio属性定义

    2 Istio支持的属性表达式

  4.1.4 Mixer的配置模型

    Istio主要通过Handler(业务处理)、Instance(数据定义)和Rule(关联规则)这三个资源对象来描述对Adapter的配置。

    在Rule中定义了基于满足match条件的请求构造的Instance对象,并将Instance对象发送给配置的handler处理。

    1 Handler:描述定义的adatper及其配置。不同的Adapter有不同的配置。

          

    2 Instance:

    3 Rule:

4.2 Istio遥测适配器配置

  4.2.1 Prometheus适配器

  4.2.2 Fluetd适配器

  4.2.3 StatsD适配器

  4.2.4 Stdio适配器

  4.2.5 Zipkin适配器

  4.2.6 厂商适配器

4.3 Istio策略适配器配置

  4.3.1 List适配器

  4.3.2 Denier适配器

  4.3.3 Memory Quota适配器

  4.3.4 Redis Quota适配器

4.4 Kubernetes Env适配器配置

4.5 本章总结

你可能感兴趣的:(第四章 可扩展的策略和遥测)