envoy 中文参考文档
  • 首页
  • 简介
    • Envoy是什么
    • 架构介绍
      • 术语
      • 线程模型
      • 监听器
      • L3/L4网络过滤器
      • HTTP连接管理
      • HTTP过滤器
      • HTTP路由
      • gRPC
      • WebSocket支持
      • 集群管理
      • 服务发现
      • 健康检查
      • 连接池
      • 负载均衡
      • 异常检测
      • 熔断
      • 全局限速
      • TLS
      • 统计
      • 运行时配置
      • 跟踪
      • TCP代理
      • 访问日志
      • MongoDB
      • DynamoDB
      • Redis
      • 热重启
      • 动态配置
      • 初始化
      • 逐出
      • 脚本
    • 部署
    • 业界对比
    • 获得帮助
    • 历史版本
  • 编译安装
    • 编译
    • 参考配置
    • 演示沙箱
      • 前端代理
      • Zipkin跟踪
      • Jaeger跟踪
      • gRPC桥接
      • 构建Envoy Docker镜像
    • 工具
  • 配置参考
    • V1 API 概述
    • V2 API 概述
    • 监听器
    • 网络过滤器
      • TLS客户端身份认证
      • Echo
      • Mongo代理
      • 速率限制
      • Redis代理
      • TCP代理
    • HTTP连接管理器
      • 路由匹配
      • 流量转移/分流
      • HTTP头部操作
      • HTTP头部清理
      • 统计
      • 运行时设置
      • 路由发现服务
    • HTTP过滤器
      • 缓存
      • CORS过滤器
      • 故障注入
      • DynamoDB
      • gRPC HTTP/1.1 桥接
      • gRPC-JSON 转码过滤器
      • gRPC-Web 过滤器
      • 健康检查
      • 速率限制
      • 路由
      • Lua
    • 集群管理
      • 统计
      • 运行时设置
      • 集群发现服务
      • 健康检查
      • 熔断
    • 访问日志
    • 限速服务
    • 运行时配置
    • 路由表检查工具
  • 运维管理
    • 命令行选项
    • 热重启
    • 管理接口
    • 统计概述
    • 运行时配置
    • 文件系统
  • 自定义扩展示例
  • V1 API参考
    • 监听器
    • 网络过滤器
      • TLS客户端身份认证
      • Echo
      • HTTP连接管理
      • Mongo代理
      • 速率限制
      • Redis代理
      • TCP代理
    • HTTP路由配置
      • 虚拟主机
      • 路由
      • 虚拟集群
      • 速率限制配置
      • 路由发现服务
    • HTTP过滤器
      • 缓存
      • CORS过滤器
      • DynamoDB
      • 故障注入
      • gRPC HTTP/1.1 桥接
      • gRPC-JSON 转码过滤器
      • gRPC-Web 过滤器
      • 健康检查
      • Lua
      • 速率限制
      • 路由
    • 集群管理
      • 集群
        • 健康检查
        • 熔断
        • TLS上下文
        • 异常值检测
        • HASH环负载均衡配置
      • 异常检测
      • 集群发现服务
      • 服务发现服务
    • 访问日志
    • 管理接口
    • 限速服务
    • 运行时配置
    • 跟踪
  • V2 API参考
    • 启动引导
    • 监听&监听发现
    • 集群&集群发现
    • 服务发现
    • 健康检查
    • HTTP路由管理&发现
    • TLS配置
    • 通用的类型
    • 网络地址
    • 协议选项
    • 发现API
    • 限速组件
    • 过滤器
      • 网络过滤器
        • TLS客户端身份认证
        • HTTP连接管理
        • Mongo代理
        • 速率限制
        • Redis代理
        • TCP代理
      • HTTP过滤器
        • 缓存
        • 故障注入
        • 健康检查
        • Lua
        • 速率限制
        • 路由
        • gRPC-JSON转码器
      • 常见访问日志类型
      • 常见故障注入类型
  • FAQ
    • Envoy有多快?
    • 我在哪里获得二进制文件?
    • 我如何设置SNI?
    • 如何设置区域感知路由?
    • 我如何设置Zipkin跟踪?
Powered by GitBook
On this page
  • V1 API概述
  • 返回

Was this helpful?

  1. 配置参考

V1 API 概述

Previous配置参考NextV2 API 概述

Last updated 5 years ago

Was this helpful?

V1 API概述

注意:当前V1配置被认为是历史遗留的。它将在未来Envoy的版本中被弃用,并最终完全删除。如果您是Envoy的新手,强烈建议从开始。

Envoy配置格式以JSON编写,并针对JSON配置进行校验。配置模式可以在中找到。服务器的主要配置包含在监听器和集群管理器部分。其他配置项指定其他配置。

支持YAML提供便利的手写配置。如果配置文件路径以.yaml结尾,Envoy在内部将YAML转换为JSON。在剩下的配置文档中,我们只提供JSON的配置描述。Envoy期望明确一下YAML标量,如一个集群名称(应该是一个字符串)被置为真,它应该在YAML配置中被写为“true”。同样也适用于整数值和浮点值(例如1、1.0和“1.0”)。

{
  "listeners": [],
  "lds": "{...}",
  "admin": "{...}",
  "cluster_manager": "{...}",
  "flags_path": "...",
  "statsd_udp_ip_address": "...",
  "statsd_tcp_cluster_name": "...",
  "stats_flush_interval_ms": "...",
  "watchdog_miss_timeout_ms": "...",
  "watchdog_megamiss_timeout_ms": "...",
  "watchdog_kill_timeout_ms": "...",
  "watchdog_multikill_timeout_ms": "...",
  "tracing": "{...}",
  "rate_limit_service": "{...}",
  "runtime": "{...}",
}

listeners(必选,数组) 需要由服务实例化的监听器数组。一个Envoy进程可以包含任意数量的监听器。

lds(可选,对象) 监听发现服务(LDS)的配置。如果未指定,则只加载静态监听器。

admin(必选,对象) 本地管理HTTP服务器的配置。

cluster_manager(必选,对象) 服务内所拥有的所有上游群集的群集管理器配置。

flags_path(可选,字符串) 启动在文件系统路径下搜索文件的标志。

statsd_udp_ip_address(可选,字符串) 符合statsd正在运行的UDP监听地址。如果指定了,则统计数据将会刷新到这个地址上。IPv4地址格式host:port(例如:127.0.0.1:855)。IPv6地址的格式[host]:port(例如[::1]:855)。

statsd_tcp_cluster_name(可选,字符串) 符合TCP的statsd集群管理集群的名称。如果指定,Envoy将连接到此群集以刷新统计信息。

stats_flush_interval_ms(可选,整数) 配置刷新统计信息时间(以毫秒为单位)。出于性能方面的原因,Envoy锁定计数器,并且只是周期性地刷新计数器和计量器。如果未指定,则默认值为5000毫秒(5秒)。

watchdog_miss_timeout_ms(可选,整数) Envoy统计“server.watchdog_miss”统计信息中的线程无响应的时间(以毫秒为单位)。如果没有指定,默认是200ms。

watchdog_megamiss_timeout_ms(可选,整数) Envoy统计“server.watchdog_mega_miss”统计信息中的线程无响应的时间(以毫秒为单位)。如果未指定,则默认值为1000毫秒。

watchdog_kill_timeout_ms(可选,整数) 监视一个线程在这个毫秒内没有响应,假定因BUG导致导致kill整个Envoy进程。设置为0表示禁用kill行为。如果未指定,则默认值为0(禁用)。

watchdog_multikill_timeout_ms(可选,整数) 如果至少有两个监视的线程至少在这个毫秒内没有响应,假定因一个真正的死锁导致kill整个Envoy进程。设置为0表示禁用kill行为。如果未指定,则默认值为0(禁用)。

tracing(可选,对象) 外部跟踪提供程序的配置。如果没有指定,则不会执行跟踪。

rate_limit_service(可选,对象) 配置外部限速服务提供商。如果没有指定,任何调用速率限制服务将立即返回成功。

runtime(可选,对象) 运行时配置提供程序的配置。如果未指定,将使用“null”提供程序,这将导致使用所有默认值。

返回

V2配置API
source/common/json/config_schemas.cc
上一级
首页目录