 Envoy原理介绍及线上问题踩坑数据面通信 • 客户端请求进入容器网络,并被iptables规则拦截,经过DNAT后进入Envoy virtualOutbound监听器 • virtualOutbound经过监听过滤器恢复用于原始目标服务,并找到后端处理器处理新连接。 • 后端处理器在配置中指定处理协议,根据协议相关的网络过滤器处理读取到的数据。 • 如果为http协议,再经过请求过滤器处理http协议头部,如路由选择等功能并创建上游连接池 上游连接池 • 将修改及编码后的http消息通过网络发送到对端Envoy的容器网络。 • Iptables识别为入流量则进入virtualInbound端口。 • ORIGINAL_DST恢复原始目标后,根据virtualInbound配置的监听过滤器找到对应的本地服务器地址。并发起localhost的请求。 • 请求进入本地服务器内进行处理并返回响应。 Copyright © Huawei 流量外,其余都通过REDIRECT (DNAT)保存原始目标地址后,进入 Envoy的15001端口。 • inbound方向:从二层网络设备进入POD内的 流量 • 增加ISTIO_INBOUND、 ISTIO_IN_REDIRECT链。 • 跳过15008、22、15090、15021、 15020系统服务外,其余都通过 REDIRECT(DNAT)保存原始目标地址 后,进入Envoy的15006端口。0 码力 | 30 页 | 2.67 MB | 1 年前3 Envoy原理介绍及线上问题踩坑数据面通信 • 客户端请求进入容器网络,并被iptables规则拦截,经过DNAT后进入Envoy virtualOutbound监听器 • virtualOutbound经过监听过滤器恢复用于原始目标服务,并找到后端处理器处理新连接。 • 后端处理器在配置中指定处理协议,根据协议相关的网络过滤器处理读取到的数据。 • 如果为http协议,再经过请求过滤器处理http协议头部,如路由选择等功能并创建上游连接池 上游连接池 • 将修改及编码后的http消息通过网络发送到对端Envoy的容器网络。 • Iptables识别为入流量则进入virtualInbound端口。 • ORIGINAL_DST恢复原始目标后,根据virtualInbound配置的监听过滤器找到对应的本地服务器地址。并发起localhost的请求。 • 请求进入本地服务器内进行处理并返回响应。 Copyright © Huawei 流量外,其余都通过REDIRECT (DNAT)保存原始目标地址后,进入 Envoy的15001端口。 • inbound方向:从二层网络设备进入POD内的 流量 • 增加ISTIO_INBOUND、 ISTIO_IN_REDIRECT链。 • 跳过15008、22、15090、15021、 15020系统服务外,其余都通过 REDIRECT(DNAT)保存原始目标地址 后,进入Envoy的15006端口。0 码力 | 30 页 | 2.67 MB | 1 年前3
 Istio控制平面组件原理解析V2通过GRPC双向流,主动推送配置给envoy: ü事件触发 • 当配置有增/删/改事件 ü定时触发 • 可配置环境变量 V2_REFRESH,定时推送配置Mixer——遥测报告 u上报的原始数据 u异步Flush给Adapter u转换成属性词汇 u问题讨论属性词汇 Name Type Description Kubernetes Example source.id string timestamp when the destination receives the request. This should be equivalent to Firebase “now”.上报的原始数据 üreq.Attributes: • "strings":{"131":92,"152":-1,"154":-2,"17":-7,"18":-4,"19":90,"22":92 • "int64s":{"1":333140 码力 | 30 页 | 9.28 MB | 6 月前3 Istio控制平面组件原理解析V2通过GRPC双向流,主动推送配置给envoy: ü事件触发 • 当配置有增/删/改事件 ü定时触发 • 可配置环境变量 V2_REFRESH,定时推送配置Mixer——遥测报告 u上报的原始数据 u异步Flush给Adapter u转换成属性词汇 u问题讨论属性词汇 Name Type Description Kubernetes Example source.id string timestamp when the destination receives the request. This should be equivalent to Firebase “now”.上报的原始数据 üreq.Attributes: • "strings":{"131":92,"152":-1,"154":-2,"17":-7,"18":-4,"19":90,"22":92 • "int64s":{"1":333140 码力 | 30 页 | 9.28 MB | 6 月前3
 13 Istio 流量管理原理与协议扩展 赵化冰Listener? • 降低 Listener 数量和配置大小,减少资源占用 • 兼容 headless 和虚机服务,避免 Listener 配置频繁更新 • 采用七层 header 进行路由,请求原始目的 IP 不应影响路由结果 入向请求配置 出向请求配置 0.0.0.0_9080 0.0.0.0_15001 0.0.0.0_15006 Pilot (ADS Server) LDS RDS CDS0 码力 | 20 页 | 11.31 MB | 6 月前3 13 Istio 流量管理原理与协议扩展 赵化冰Listener? • 降低 Listener 数量和配置大小,减少资源占用 • 兼容 headless 和虚机服务,避免 Listener 配置频繁更新 • 采用七层 header 进行路由,请求原始目的 IP 不应影响路由结果 入向请求配置 出向请求配置 0.0.0.0_9080 0.0.0.0_15001 0.0.0.0_15006 Pilot (ADS Server) LDS RDS CDS0 码力 | 20 页 | 11.31 MB | 6 月前3
共 3 条
- 1













