You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.6 KiB
55 lines
1.6 KiB
syntax = "proto3"; |
|
|
|
package envoy.api.v2; |
|
|
|
import "api/address.proto"; |
|
|
|
import "google/protobuf/struct.proto"; |
|
|
|
// Identifies location of where either Envoy runs or where upstream hosts run. |
|
message Locality { |
|
// Region this zone belongs to. |
|
string region = 1; |
|
|
|
// Availability Zone (AZ) in AWS, Zone in GCP. |
|
string zone = 2; |
|
|
|
// When used for locality of upstream hosts, this field further splits zone |
|
// into smaller chunks of sub_zones so they can be load balanced |
|
// independently |
|
string sub_zone = 3; |
|
} |
|
|
|
// Identifies a specific Envoy instance. Remote server may have per Envoy configuration. |
|
message Node { |
|
string id = 1; |
|
google.protobuf.Struct metadata = 2; |
|
Locality locality = 3; |
|
} |
|
|
|
message Endpoint { |
|
ResolvedAddress address = 1; |
|
} |
|
|
|
// Metadata provides additional inputs to filters based on matched listeners, |
|
// filter chains and routes. It is structured as a map from filter name (in |
|
// reverse DNS format) to metadata specific to the filter. Metadata key-values |
|
// for a filter are merged as connection and request handling occurs, with later |
|
// values for the same key overriding earlier values. |
|
// |
|
// An example use of metadata is providing additional values to |
|
// http_connection_manager in the envoy.http_connection_manager.access_log |
|
// namespace. |
|
message Metadata { |
|
// Key is the reverse DNS filter name. |
|
map<string, google.protobuf.Struct> filter_metadata = 1; |
|
} |
|
|
|
// Runtime derived uint32 with a default when not specified. |
|
message RuntimeUInt32 { |
|
// Default value if runtime value is not available. |
|
uint32 default_value = 2; |
|
|
|
// Runtime key to get value for comparision. This value is used if defined. |
|
string runtime_key = 3; |
|
}
|
|
|