0
点赞
收藏
分享

微信扫一扫

Istio深入学习十二 Envoy初始化

一、初始化流程

Envoy proxy的初始化流程是一个复杂且有序的过程,涉及多个组件的初始化和配置。以下是一个大致的Envoy初始化流程概述:

  1. 启动Envoy:首先,Envoy进程被启动,这通常是通过命令行工具或容器编排工具(如Docker或Kubernetes)完成的。
  2. 加载配置文件:Envoy启动后,它会加载配置文件,这个配置文件通常是YAML格式的,包含了Envoy的各种设置和参数。配置文件中定义了Envoy如何监听网络请求、如何处理请求、如何与上游服务进行通信等。
  3. 初始化监听器(Listeners):Envoy会根据配置文件中的监听器定义来初始化监听器。监听器负责监听网络请求,并将请求转发给相应的过滤器链。
  4. 初始化过滤器链(Filter Chains):Envoy会根据配置初始化过滤器链。过滤器链是一个有序的过滤器集合,用于处理网络请求。每个过滤器链都关联一个监听器,当监听器接收到请求时,它会将请求传递给相应的过滤器链进行处理。
  5. 初始化集群管理器(Cluster Manager):集群管理器是Envoy的核心组件之一,它负责管理Envoy与上游服务之间的连接。在初始化过程中,集群管理器会根据配置创建和配置与上游服务的连接。
  6. 健康检查(Health Checks):如果配置了健康检查,Envoy会启动健康检查机制,以确保上游服务是可用的。健康检查可以是主动式的(Envoy主动发起请求检查服务状态)或被动式的(根据服务的响应情况判断服务状态)。
  7. 路由发现服务(RDS)和监听器发现服务(LDS):如果启用了RDS和LDS,Envoy会向指定的发现服务请求路由和监听器的动态配置。这些配置可以在运行时动态更新,使得Envoy能够灵活地调整其行为。
  8. 开始接受和处理请求:完成上述初始化步骤后,Envoy将开始监听网络请求,并根据配置的过滤器链和路由规则处理请求。
举报

相关推荐

0 条评论