通用的类型

通用类型

Locality

Locality protoarrow-up-right

标识Envoy运行所在的位置或上游主机运行所在的位置。

Node

Node protoarrow-up-right

标识特定的Envoy实例。节点标识符将呈现给管理服务器,管理服务器可以使用该标识符来区分每个Envoy服务的配置。

  • id (stringarrow-up-right) Envoy节点的标识符。

  • cluster (stringarrow-up-right) Envoy节点所属的群集。

  • metadata (Structarrow-up-right) 所在节点的扩展元数据,Envoy将直接传递给管理服务器。

  • locality (Locality) 指定Envoy实例的运行位置。

  • build_version (stringarrow-up-right) 在金丝雀(灰度发布)期间管理服务器,知道哪个版本的Envoy正在进行测试。这将由Envoy在管理服务器RPC中设置。

Endpoint

Endpoint protoarrow-up-right

上游主机标识符

Metadata

Metadata protoarrow-up-right

元数据用于监听器的匹配场景,为路由、端口、过滤器链等提供了额外的输入。它的结构是从过滤器名称(反向DNS格式)到特定的过滤器元数据的映射。过滤器的元数据key/value将合并在连接并发生请求时处理,同一个key的更新值将覆盖旧值。

元数据的使用示例,在HTTP连接管理追加附加信息,将体现在envoy.http_connection_manager.access_log命名空间。

为了实现负载平衡,元数据提供了一种集群端口子集的方法。端口匹配关联的元数据对象,路由匹配关联的元数据对象。当前有一些定义的元数据用于此目的:

  • {"envoy.lb": {"canary": <bool> }} 这表明了一个端口的canary状态,并且用于头部(x-envoy-upstream-canary)和统计处理。

  • filter_metadata

    (map) key是反向DNS过滤器名称,例如com.acme.widget。命名空间envoy.*保留给Envoy内置过滤器使用。

RuntimeUInt32

RuntimeUInt32 protoarrow-up-right

若没有指定时,则在运行时生成的uint32默认值。

  • default_value (uint32arrow-up-right) 默认值,运行时没有可用的值时。

  • runtime_key (stringarrow-up-right, REQUIRED) 运行时,通过key以获取相应的value。如果定义,则使用此值。

HeaderValue

HeaderValue protoarrow-up-right

Header键值对。

HeaderValueOption

HeaderValueOption protoarrow-up-right

Header键值对追加控制选项。

  • header (HeaderValue) 控制选项所应用的Header键值对。

  • append (BoolValuearrow-up-right) 是否添加的开关,如果为true(默认值),则该值将附加到现有值。

ApiConfigSource

ApiConfigSource protoarrow-up-right

API配置源。这标识了Envoy将用来获取xDS的API类型和群集。

ApiConfigSource.ApiType (Enum)

ApiConfigSource.ApiType protoarrow-up-right

可以通过REST API或gRPC获取。

  • REST_LEGACY (DEFAULT) REST-JSON对应于传统v1 API。

  • REST REST-JSON v2 API,将使用v2 protos规范的JSON编码。

  • GRPC gRPC v2 API。

AggregatedConfigSource

AggregatedConfigSource protoarrow-up-right

聚合发现服务(ADS)选项。这目前是空的,但在ConfigSource中设置时可以用来指定要使用ADS。

ConfigSource

ConfigSource protoarrow-up-right

监听器,集群,路由,端口等配置可以从文件系统或xDS API源获取。使用inotify监视文件系统配置以进行更新。

  • path (string) 配置从文件系统路径来源来更新配置。

  • api_config_source (ApiConfigSource) API配置源。

  • ads (AggregatedConfigSource) 配置使用ADS将做为配置源。将使用引导程序配置中的ADS API配置源。

    注意:必须选择path,api_config_source,ads其中一个选项配置。

TransportSocket

TransportSocket protoarrow-up-right

监听器和集群中传输套接字的配置。如果配置为空,则将根据tls_context的平台和现有的来选择默认的传输套接字实现和配置。

RoutingPriority (Enum)

RoutingPriority protoarrow-up-right

Envoy在路由和虚拟集群级别,都支持上游优先级路由。当前的实现是针对每个优先级别,使用不同的连接池和断路设置。这意味着即使对于HTTP/2请求,两个物理连接也将被用于上游主机。将来,Envoy可能会支持真正的HTTP/2优先级,而不是单个上行连接。

  • DEFAULT (DEFAULT)

  • HIGH

RequestMethod (Enum)

RequestMethod protoarrow-up-right

HTTP请求方法

  • METHOD_UNSPECIFIED

    (DEFAULT)

  • GET

  • HEAD

  • POST

  • PUT

  • DELETE

  • CONNECT

  • OPTIONS

  • TRACE

返回

Last updated

Was this helpful?