Envoy 官方文档
Access_log:Access logging — envoy 1.24.0-dev-10d9e9 documentation
Envoy 特性介绍
Envoy 是目前社区中构建 Service Mesh 时的首选反向代理。采用 C++ 实现,是面向Service Mesh
的高性能网络代理服务。它与应用程序并行运行,通过以平台无关的方式提供通用功能来抽象网络。当基础架构中的所有服务流量都通过 Envoy 网格时,通过一致的可观测性,调整整体性能。
Envoy的架构图
工作方式,Envoy 的工作流程为下游主机(Host A)发送请求至上游主机(Host B/C/D),Envoy 拦截请求(代理注入及流量劫持我们不详细描述),Listener 监听到下游主机请求后将请求内容抽象为 Filter Chains,并根据流量策略相关的配置信息路由至相应的上游主机集群(Cluster),从而完成路由转发、负载均衡、流量策略等能力。(备注:XDS协议:主要包括 CDS(cluster discovery service)、EDS(endpoint discovery service)、RDS(route discovery service)、LDS(listener discovery service),ADS(aggregated discovery service)则是对这些 API 的一个封装。)