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; } // 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; }