Class: Google::Apis::TrafficdirectorV2::Node
- Inherits:
-
Object
- Object
- Google::Apis::TrafficdirectorV2::Node
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/trafficdirector_v2/classes.rb,
generated/google/apis/trafficdirector_v2/representations.rb,
generated/google/apis/trafficdirector_v2/representations.rb
Overview
Identifies a specific Envoy instance. The node identifier is presented to the management server, which may use this identifier to distinguish per Envoy configuration for serving. [#next-free-field: 12]
Instance Attribute Summary collapse
-
#build_version ⇒ String
This is motivated by informing a management server during canary which version of Envoy is being tested in a heterogeneous fleet.
-
#client_features ⇒ Array<String>
Client feature support list.
-
#cluster ⇒ String
Defines the local service cluster name where Envoy is running.
-
#extensions ⇒ Array<Google::Apis::TrafficdirectorV2::Extension>
List of extensions and their versions supported by the node.
-
#id ⇒ String
An opaque node identifier for the Envoy node.
-
#listening_addresses ⇒ Array<Google::Apis::TrafficdirectorV2::Address>
Known listening ports on the node as a generic hint to the management server for filtering :ref:
listeners
to be returned. -
#locality ⇒ Google::Apis::TrafficdirectorV2::Locality
Identifies location of where either Envoy runs or where upstream hosts run.
-
#metadata ⇒ Hash<String,Object>
Opaque metadata extending the node identifier.
-
#user_agent_build_version ⇒ Google::Apis::TrafficdirectorV2::BuildVersion
BuildVersion combines SemVer version of extension with free-form build information (i.e. 'alpha', 'private-build') as a set of strings.
-
#user_agent_name ⇒ String
Free-form string that identifies the entity requesting config.
-
#user_agent_version ⇒ String
Free-form string that identifies the version of the entity requesting config.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Node
constructor
A new instance of Node.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Node
Returns a new instance of Node.
724 725 726 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 724 def initialize(**args) update!(**args) end |
Instance Attribute Details
#build_version ⇒ String
This is motivated by informing a management server during canary which version
of Envoy is being tested in a heterogeneous fleet. This will be set by Envoy
in management server RPCs. This field is deprecated in favor of the
user_agent_name and user_agent_version values.
Corresponds to the JSON property buildVersion
654 655 656 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 654 def build_version @build_version end |
#client_features ⇒ Array<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
that xDS client may support.
Corresponds to the JSON property clientFeatures
662 663 664 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 662 def client_features @client_features end |
#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
, :
ref:health check cluster verification
, :ref:runtime override directory
, :
ref:user agent addition
, :ref:HTTP global rate limiting
, :ref:CDS
,
and :ref:HTTP tracing
, either in this message or via :option:--service-
cluster
.
Corresponds to the JSON property cluster
672 673 674 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 672 def cluster @cluster end |
#extensions ⇒ Array<Google::Apis::TrafficdirectorV2::Extension>
List of extensions and their versions supported by the node.
Corresponds to the JSON property extensions
677 678 679 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 677 def extensions @extensions end |
#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
, :ref:CDS
, and :ref:HTTP tracing
, either in this message
or via :option:--service-node
.
Corresponds to the JSON property id
685 686 687 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 685 def id @id end |
#listening_addresses ⇒ Array<Google::Apis::TrafficdirectorV2::Address>
Known listening ports on the node as a generic hint to the management server
for filtering :ref: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.
Corresponds to the JSON property listeningAddresses
693 694 695 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 693 def listening_addresses @listening_addresses end |
#locality ⇒ Google::Apis::TrafficdirectorV2::Locality
Identifies location of where either Envoy runs or where upstream hosts run.
Corresponds to the JSON property locality
698 699 700 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 698 def locality @locality end |
#metadata ⇒ Hash<String,Object>
Opaque metadata extending the node identifier. Envoy will pass this directly
to the management server.
Corresponds to the JSON property metadata
704 705 706 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 704 def @metadata end |
#user_agent_build_version ⇒ Google::Apis::TrafficdirectorV2::BuildVersion
BuildVersion combines SemVer version of extension with free-form build
information (i.e. 'alpha', 'private-build') as a set of strings.
Corresponds to the JSON property userAgentBuildVersion
710 711 712 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 710 def user_agent_build_version @user_agent_build_version end |
#user_agent_name ⇒ String
Free-form string that identifies the entity requesting config. E.g. "envoy" or
"grpc"
Corresponds to the JSON property userAgentName
716 717 718 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 716 def user_agent_name @user_agent_name end |
#user_agent_version ⇒ String
Free-form string that identifies the version of the entity requesting config.
E.g. "1.12.2" or "abcd1234", or "SpecialEnvoyBuild"
Corresponds to the JSON property userAgentVersion
722 723 724 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 722 def user_agent_version @user_agent_version end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
729 730 731 732 733 734 735 736 737 738 739 740 741 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 729 def update!(**args) @build_version = args[:build_version] if args.key?(:build_version) @client_features = args[:client_features] if args.key?(:client_features) @cluster = args[:cluster] if args.key?(:cluster) @extensions = args[:extensions] if args.key?(:extensions) @id = args[:id] if args.key?(:id) @listening_addresses = args[:listening_addresses] if args.key?(:listening_addresses) @locality = args[:locality] if args.key?(:locality) @metadata = args[:metadata] if args.key?(:metadata) @user_agent_build_version = args[:user_agent_build_version] if args.key?(:user_agent_build_version) @user_agent_name = args[:user_agent_name] if args.key?(:user_agent_name) @user_agent_version = args[:user_agent_version] if args.key?(:user_agent_version) end |