pub struct Node {
pub id: String,
pub cluster: String,
pub metadata: Option<Struct>,
pub dynamic_parameters: HashMap<String, StringMap>,
pub locality: Option<Locality>,
pub user_agent_name: String,
pub extensions: Vec<Extension>,
pub client_features: Vec<String>,
pub listening_addresses: Vec<Address>,
pub user_agent_version_type: Option<UserAgentVersionType>,
}
Fields§
§id: String
An opaque node identifier for the Envoy node. This also provides the local
service node name. It should be set if any of the following features are
used: :ref:statsd <arch_overview_statistics>
, :ref:CDS <config_cluster_manager_cds>
, and :ref:HTTP tracing <arch_overview_tracing>
, either in this message or via
:option:--service-node
.
cluster: String
Defines the local service cluster name where Envoy is running. Though
optional, it should be set if any of the following features are used:
:ref:statsd <arch_overview_statistics>
, :ref:health check cluster verification <envoy_v3_api_field_config.core.v3.HealthCheck.HttpHealthCheck.service_name_matcher>
,
:ref:runtime override directory <envoy_v3_api_msg_config.bootstrap.v3.Runtime>
,
:ref:user agent addition <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.add_user_agent>
,
:ref:HTTP global rate limiting <config_http_filters_rate_limit>
,
:ref:CDS <config_cluster_manager_cds>
, and :ref:HTTP tracing <arch_overview_tracing>
, either in this message or via
:option:--service-cluster
.
metadata: Option<Struct>
Opaque metadata extending the node identifier. Envoy will pass this directly to the management server.
dynamic_parameters: HashMap<String, StringMap>
Map from xDS resource type URL to dynamic context parameters. These may vary at runtime (unlike other fields in this message). For example, the xDS client may have a shard identifier that changes during the lifetime of the xDS client. In Envoy, this would be achieved by updating the dynamic context on the Server::Instance’s LocalInfo context provider. The shard ID dynamic parameter then appears in this field during future discovery requests.
locality: Option<Locality>
Locality specifying where the Envoy instance is running.
user_agent_name: String
Free-form string that identifies the entity requesting config. E.g. “envoy” or “grpc”
extensions: Vec<Extension>
List of extensions and their versions supported by the node.
client_features: Vec<String>
Client feature support list. These are well known features described
in the Envoy API repository for a given major version of an API. Client features
use reverse DNS naming scheme, for example com.acme.feature
.
See :ref:the list of features <client_features>
that xDS client may
support.
listening_addresses: Vec<Address>
Known listening ports on the node as a generic hint to the management server
for filtering :ref:listeners <config_listeners>
to be returned. For example,
if there is a listener bound to port 80, the list can optionally contain the
SocketAddress (0.0.0.0,80)
. The field is optional and just a hint.
user_agent_version_type: Option<UserAgentVersionType>
Trait Implementations§
Source§impl Message for Node
impl Message for Node
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
Source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
Source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
. Read moreSource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
.