
io.envoyproxy.envoy.api.v2.ClusterOrBuilder Maven / Gradle / Ivy
The newest version!
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/api/v2/cluster.proto
package io.envoyproxy.envoy.api.v2;
public interface ClusterOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.api.v2.Cluster)
com.google.protobuf.MessageOrBuilder {
/**
*
* Configuration to use different transport sockets for different endpoints.
* The entry of *envoy.transport_socket_match* in the
* :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
* For example, with the following match
* .. code-block:: yaml
* transport_socket_matches:
* - name: "enableMTLS"
* match:
* acceptMTLS: true
* transport_socket:
* name: envoy.transport_sockets.tls
* config: { ... } # tls socket configuration
* - name: "defaultToPlaintext"
* match: {}
* transport_socket:
* name: envoy.transport_sockets.raw_buffer
* Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
* If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
* criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
* socket match in case above.
* If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
* *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
* *transport_socket* specified in this cluster.
* This field allows gradual and flexible transport socket configuration changes.
* The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
* an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
* "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
* has "acceptPlaintext": "true" metadata information.
* Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
* traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
* *TransportSocketMatch* in this field. Other client Envoys receive CDS without
* *transport_socket_match* set, and still send plain text traffic to the same cluster.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
java.util.List
getTransportSocketMatchesList();
/**
*
* Configuration to use different transport sockets for different endpoints.
* The entry of *envoy.transport_socket_match* in the
* :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
* For example, with the following match
* .. code-block:: yaml
* transport_socket_matches:
* - name: "enableMTLS"
* match:
* acceptMTLS: true
* transport_socket:
* name: envoy.transport_sockets.tls
* config: { ... } # tls socket configuration
* - name: "defaultToPlaintext"
* match: {}
* transport_socket:
* name: envoy.transport_sockets.raw_buffer
* Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
* If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
* criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
* socket match in case above.
* If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
* *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
* *transport_socket* specified in this cluster.
* This field allows gradual and flexible transport socket configuration changes.
* The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
* an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
* "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
* has "acceptPlaintext": "true" metadata information.
* Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
* traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
* *TransportSocketMatch* in this field. Other client Envoys receive CDS without
* *transport_socket_match* set, and still send plain text traffic to the same cluster.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
io.envoyproxy.envoy.api.v2.Cluster.TransportSocketMatch getTransportSocketMatches(int index);
/**
*
* Configuration to use different transport sockets for different endpoints.
* The entry of *envoy.transport_socket_match* in the
* :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
* For example, with the following match
* .. code-block:: yaml
* transport_socket_matches:
* - name: "enableMTLS"
* match:
* acceptMTLS: true
* transport_socket:
* name: envoy.transport_sockets.tls
* config: { ... } # tls socket configuration
* - name: "defaultToPlaintext"
* match: {}
* transport_socket:
* name: envoy.transport_sockets.raw_buffer
* Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
* If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
* criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
* socket match in case above.
* If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
* *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
* *transport_socket* specified in this cluster.
* This field allows gradual and flexible transport socket configuration changes.
* The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
* an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
* "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
* has "acceptPlaintext": "true" metadata information.
* Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
* traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
* *TransportSocketMatch* in this field. Other client Envoys receive CDS without
* *transport_socket_match* set, and still send plain text traffic to the same cluster.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
int getTransportSocketMatchesCount();
/**
*
* Configuration to use different transport sockets for different endpoints.
* The entry of *envoy.transport_socket_match* in the
* :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
* For example, with the following match
* .. code-block:: yaml
* transport_socket_matches:
* - name: "enableMTLS"
* match:
* acceptMTLS: true
* transport_socket:
* name: envoy.transport_sockets.tls
* config: { ... } # tls socket configuration
* - name: "defaultToPlaintext"
* match: {}
* transport_socket:
* name: envoy.transport_sockets.raw_buffer
* Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
* If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
* criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
* socket match in case above.
* If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
* *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
* *transport_socket* specified in this cluster.
* This field allows gradual and flexible transport socket configuration changes.
* The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
* an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
* "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
* has "acceptPlaintext": "true" metadata information.
* Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
* traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
* *TransportSocketMatch* in this field. Other client Envoys receive CDS without
* *transport_socket_match* set, and still send plain text traffic to the same cluster.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.Cluster.TransportSocketMatchOrBuilder>
getTransportSocketMatchesOrBuilderList();
/**
*
* Configuration to use different transport sockets for different endpoints.
* The entry of *envoy.transport_socket_match* in the
* :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
* For example, with the following match
* .. code-block:: yaml
* transport_socket_matches:
* - name: "enableMTLS"
* match:
* acceptMTLS: true
* transport_socket:
* name: envoy.transport_sockets.tls
* config: { ... } # tls socket configuration
* - name: "defaultToPlaintext"
* match: {}
* transport_socket:
* name: envoy.transport_sockets.raw_buffer
* Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
* If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
* criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
* socket match in case above.
* If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
* *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
* *transport_socket* specified in this cluster.
* This field allows gradual and flexible transport socket configuration changes.
* The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
* an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
* "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
* has "acceptPlaintext": "true" metadata information.
* Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
* traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
* *TransportSocketMatch* in this field. Other client Envoys receive CDS without
* *transport_socket_match* set, and still send plain text traffic to the same cluster.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
io.envoyproxy.envoy.api.v2.Cluster.TransportSocketMatchOrBuilder getTransportSocketMatchesOrBuilder(
int index);
/**
*
* Supplies the name of the cluster which must be unique across all clusters.
* The cluster name is used when emitting
* :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
* <envoy_api_field_Cluster.alt_stat_name>` is not provided.
* Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
*
*
* string name = 1 [(.validate.rules) = { ... }
* @return The name.
*/
java.lang.String getName();
/**
*
* Supplies the name of the cluster which must be unique across all clusters.
* The cluster name is used when emitting
* :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
* <envoy_api_field_Cluster.alt_stat_name>` is not provided.
* Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
*
*
* string name = 1 [(.validate.rules) = { ... }
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
*
* An optional alternative to the cluster name to be used while emitting stats.
* Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
* confused with :ref:`Router Filter Header
* <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
*
*
* string alt_stat_name = 28;
* @return The altStatName.
*/
java.lang.String getAltStatName();
/**
*
* An optional alternative to the cluster name to be used while emitting stats.
* Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
* confused with :ref:`Router Filter Header
* <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
*
*
* string alt_stat_name = 28;
* @return The bytes for altStatName.
*/
com.google.protobuf.ByteString
getAltStatNameBytes();
/**
*
* The :ref:`service discovery type <arch_overview_service_discovery_types>`
* to use for resolving the cluster.
*
*
* .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
* @return Whether the type field is set.
*/
boolean hasType();
/**
*
* The :ref:`service discovery type <arch_overview_service_discovery_types>`
* to use for resolving the cluster.
*
*
* .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
* @return The enum numeric value on the wire for type.
*/
int getTypeValue();
/**
*
* The :ref:`service discovery type <arch_overview_service_discovery_types>`
* to use for resolving the cluster.
*
*
* .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
* @return The type.
*/
io.envoyproxy.envoy.api.v2.Cluster.DiscoveryType getType();
/**
*
* The custom cluster type.
*
*
* .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
* @return Whether the clusterType field is set.
*/
boolean hasClusterType();
/**
*
* The custom cluster type.
*
*
* .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
* @return The clusterType.
*/
io.envoyproxy.envoy.api.v2.Cluster.CustomClusterType getClusterType();
/**
*
* The custom cluster type.
*
*
* .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
*/
io.envoyproxy.envoy.api.v2.Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder();
/**
*
* Configuration to use for EDS updates for the Cluster.
*
*
* .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
* @return Whether the edsClusterConfig field is set.
*/
boolean hasEdsClusterConfig();
/**
*
* Configuration to use for EDS updates for the Cluster.
*
*
* .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
* @return The edsClusterConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.EdsClusterConfig getEdsClusterConfig();
/**
*
* Configuration to use for EDS updates for the Cluster.
*
*
* .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
*/
io.envoyproxy.envoy.api.v2.Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder();
/**
*
* The timeout for new network connections to hosts in the cluster.
*
*
* .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
* @return Whether the connectTimeout field is set.
*/
boolean hasConnectTimeout();
/**
*
* The timeout for new network connections to hosts in the cluster.
*
*
* .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
* @return The connectTimeout.
*/
com.google.protobuf.Duration getConnectTimeout();
/**
*
* The timeout for new network connections to hosts in the cluster.
*
*
* .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
*/
com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder();
/**
*
* Soft limit on size of the cluster’s connections read and write buffers. If
* unspecified, an implementation defined default is applied (1MiB).
*
*
* .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
* @return Whether the perConnectionBufferLimitBytes field is set.
*/
boolean hasPerConnectionBufferLimitBytes();
/**
*
* Soft limit on size of the cluster’s connections read and write buffers. If
* unspecified, an implementation defined default is applied (1MiB).
*
*
* .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
* @return The perConnectionBufferLimitBytes.
*/
com.google.protobuf.UInt32Value getPerConnectionBufferLimitBytes();
/**
*
* Soft limit on size of the cluster’s connections read and write buffers. If
* unspecified, an implementation defined default is applied (1MiB).
*
*
* .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
*/
com.google.protobuf.UInt32ValueOrBuilder getPerConnectionBufferLimitBytesOrBuilder();
/**
*
* The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
* when picking a host in the cluster.
*
*
* .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
* @return The enum numeric value on the wire for lbPolicy.
*/
int getLbPolicyValue();
/**
*
* The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
* when picking a host in the cluster.
*
*
* .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
* @return The lbPolicy.
*/
io.envoyproxy.envoy.api.v2.Cluster.LbPolicy getLbPolicy();
/**
*
* If the service discovery type is
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* then hosts is required.
* .. attention::
* **This field is deprecated**. Set the
* :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
*
*
* repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
*/
@java.lang.Deprecated java.util.List
getHostsList();
/**
*
* If the service discovery type is
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* then hosts is required.
* .. attention::
* **This field is deprecated**. Set the
* :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
*
*
* repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.Address getHosts(int index);
/**
*
* If the service discovery type is
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* then hosts is required.
* .. attention::
* **This field is deprecated**. Set the
* :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
*
*
* repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
*/
@java.lang.Deprecated int getHostsCount();
/**
*
* If the service discovery type is
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* then hosts is required.
* .. attention::
* **This field is deprecated**. Set the
* :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
*
*
* repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
*/
@java.lang.Deprecated java.util.List extends io.envoyproxy.envoy.api.v2.core.AddressOrBuilder>
getHostsOrBuilderList();
/**
*
* If the service discovery type is
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* then hosts is required.
* .. attention::
* **This field is deprecated**. Set the
* :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
*
*
* repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.AddressOrBuilder getHostsOrBuilder(
int index);
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
* This field supersedes the *hosts* field in the v2 API.
* .. attention::
* Setting this allows non-EDS cluster types to contain embedded EDS equivalent
* :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
*
*
* .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
* @return Whether the loadAssignment field is set.
*/
boolean hasLoadAssignment();
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
* This field supersedes the *hosts* field in the v2 API.
* .. attention::
* Setting this allows non-EDS cluster types to contain embedded EDS equivalent
* :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
*
*
* .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
* @return The loadAssignment.
*/
io.envoyproxy.envoy.api.v2.ClusterLoadAssignment getLoadAssignment();
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
* This field supersedes the *hosts* field in the v2 API.
* .. attention::
* Setting this allows non-EDS cluster types to contain embedded EDS equivalent
* :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
*
*
* .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
*/
io.envoyproxy.envoy.api.v2.ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder();
/**
*
* Optional :ref:`active health checking <arch_overview_health_checking>`
* configuration for the cluster. If no
* configuration is specified no health checking will be done and all cluster
* members will be considered healthy at all times.
*
*
* repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
*/
java.util.List
getHealthChecksList();
/**
*
* Optional :ref:`active health checking <arch_overview_health_checking>`
* configuration for the cluster. If no
* configuration is specified no health checking will be done and all cluster
* members will be considered healthy at all times.
*
*
* repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
*/
io.envoyproxy.envoy.api.v2.core.HealthCheck getHealthChecks(int index);
/**
*
* Optional :ref:`active health checking <arch_overview_health_checking>`
* configuration for the cluster. If no
* configuration is specified no health checking will be done and all cluster
* members will be considered healthy at all times.
*
*
* repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
*/
int getHealthChecksCount();
/**
*
* Optional :ref:`active health checking <arch_overview_health_checking>`
* configuration for the cluster. If no
* configuration is specified no health checking will be done and all cluster
* members will be considered healthy at all times.
*
*
* repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.core.HealthCheckOrBuilder>
getHealthChecksOrBuilderList();
/**
*
* Optional :ref:`active health checking <arch_overview_health_checking>`
* configuration for the cluster. If no
* configuration is specified no health checking will be done and all cluster
* members will be considered healthy at all times.
*
*
* repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
*/
io.envoyproxy.envoy.api.v2.core.HealthCheckOrBuilder getHealthChecksOrBuilder(
int index);
/**
*
* Optional maximum requests for a single upstream connection. This parameter
* is respected by both the HTTP/1.1 and HTTP/2 connection pool
* implementations. If not specified, there is no limit. Setting this
* parameter to 1 will effectively disable keep alive.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9;
* @return Whether the maxRequestsPerConnection field is set.
*/
boolean hasMaxRequestsPerConnection();
/**
*
* Optional maximum requests for a single upstream connection. This parameter
* is respected by both the HTTP/1.1 and HTTP/2 connection pool
* implementations. If not specified, there is no limit. Setting this
* parameter to 1 will effectively disable keep alive.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9;
* @return The maxRequestsPerConnection.
*/
com.google.protobuf.UInt32Value getMaxRequestsPerConnection();
/**
*
* Optional maximum requests for a single upstream connection. This parameter
* is respected by both the HTTP/1.1 and HTTP/2 connection pool
* implementations. If not specified, there is no limit. Setting this
* parameter to 1 will effectively disable keep alive.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9;
*/
com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder();
/**
*
* Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
*
*
* .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
* @return Whether the circuitBreakers field is set.
*/
boolean hasCircuitBreakers();
/**
*
* Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
*
*
* .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
* @return The circuitBreakers.
*/
io.envoyproxy.envoy.api.v2.cluster.CircuitBreakers getCircuitBreakers();
/**
*
* Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
*
*
* .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
*/
io.envoyproxy.envoy.api.v2.cluster.CircuitBreakersOrBuilder getCircuitBreakersOrBuilder();
/**
*
* The TLS configuration for connections to the upstream cluster.
* .. attention::
* **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
* set, `transport_socket` takes priority.
*
*
* .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
* @deprecated envoy.api.v2.Cluster.tls_context is deprecated.
* See envoy/api/v2/cluster.proto;l=607
* @return Whether the tlsContext field is set.
*/
@java.lang.Deprecated boolean hasTlsContext();
/**
*
* The TLS configuration for connections to the upstream cluster.
* .. attention::
* **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
* set, `transport_socket` takes priority.
*
*
* .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
* @deprecated envoy.api.v2.Cluster.tls_context is deprecated.
* See envoy/api/v2/cluster.proto;l=607
* @return The tlsContext.
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.auth.UpstreamTlsContext getTlsContext();
/**
*
* The TLS configuration for connections to the upstream cluster.
* .. attention::
* **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
* set, `transport_socket` takes priority.
*
*
* .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated io.envoyproxy.envoy.api.v2.auth.UpstreamTlsContextOrBuilder getTlsContextOrBuilder();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
*
*
* .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
* @return Whether the upstreamHttpProtocolOptions field is set.
*/
boolean hasUpstreamHttpProtocolOptions();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
*
*
* .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
* @return The upstreamHttpProtocolOptions.
*/
io.envoyproxy.envoy.api.v2.core.UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
*
*
* .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
*/
io.envoyproxy.envoy.api.v2.core.UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
*
*
* .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
* @return Whether the commonHttpProtocolOptions field is set.
*/
boolean hasCommonHttpProtocolOptions();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
*
*
* .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
* @return The commonHttpProtocolOptions.
*/
io.envoyproxy.envoy.api.v2.core.HttpProtocolOptions getCommonHttpProtocolOptions();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
*
*
* .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
*/
io.envoyproxy.envoy.api.v2.core.HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder();
/**
*
* Additional options when handling HTTP1 requests.
*
*
* .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
* @return Whether the httpProtocolOptions field is set.
*/
boolean hasHttpProtocolOptions();
/**
*
* Additional options when handling HTTP1 requests.
*
*
* .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
* @return The httpProtocolOptions.
*/
io.envoyproxy.envoy.api.v2.core.Http1ProtocolOptions getHttpProtocolOptions();
/**
*
* Additional options when handling HTTP1 requests.
*
*
* .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
*/
io.envoyproxy.envoy.api.v2.core.Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder();
/**
*
* Even if default HTTP2 protocol options are desired, this field must be
* set so that Envoy will assume that the upstream supports HTTP/2 when
* making new HTTP connection pool connections. Currently, Envoy only
* supports prior knowledge for upstream connections. Even if TLS is used
* with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
* connections to happen over plain text.
*
*
* .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
* @return Whether the http2ProtocolOptions field is set.
*/
boolean hasHttp2ProtocolOptions();
/**
*
* Even if default HTTP2 protocol options are desired, this field must be
* set so that Envoy will assume that the upstream supports HTTP/2 when
* making new HTTP connection pool connections. Currently, Envoy only
* supports prior knowledge for upstream connections. Even if TLS is used
* with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
* connections to happen over plain text.
*
*
* .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
* @return The http2ProtocolOptions.
*/
io.envoyproxy.envoy.api.v2.core.Http2ProtocolOptions getHttp2ProtocolOptions();
/**
*
* Even if default HTTP2 protocol options are desired, this field must be
* set so that Envoy will assume that the upstream supports HTTP/2 when
* making new HTTP connection pool connections. Currently, Envoy only
* supports prior knowledge for upstream connections. Even if TLS is used
* with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
* connections to happen over plain text.
*
*
* .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
*/
io.envoyproxy.envoy.api.v2.core.Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated int getExtensionProtocolOptionsCount();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated boolean containsExtensionProtocolOptions(
java.lang.String key);
/**
* Use {@link #getExtensionProtocolOptionsMap()} instead.
*/
@java.lang.Deprecated
java.util.Map
getExtensionProtocolOptions();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated java.util.Map
getExtensionProtocolOptionsMap();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated
/* nullable */
com.google.protobuf.Struct getExtensionProtocolOptionsOrDefault(
java.lang.String key,
/* nullable */
com.google.protobuf.Struct defaultValue);
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
*/
@java.lang.Deprecated
com.google.protobuf.Struct getExtensionProtocolOptionsOrThrow(
java.lang.String key);
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
*/
int getTypedExtensionProtocolOptionsCount();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
*/
boolean containsTypedExtensionProtocolOptions(
java.lang.String key);
/**
* Use {@link #getTypedExtensionProtocolOptionsMap()} instead.
*/
@java.lang.Deprecated
java.util.Map
getTypedExtensionProtocolOptions();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
*/
java.util.Map
getTypedExtensionProtocolOptionsMap();
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
*/
/* nullable */
com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault(
java.lang.String key,
/* nullable */
com.google.protobuf.Any defaultValue);
/**
*
* The extension_protocol_options field is used to provide extension-specific protocol options
* for upstream connections. The key should match the extension filter name, such as
* "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
* specific options.
*
*
* map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
*/
com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow(
java.lang.String key);
/**
*
* If the DNS refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used as the cluster’s DNS refresh
* rate. The value configured must be at least 1ms. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
*
*
* .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
* @return Whether the dnsRefreshRate field is set.
*/
boolean hasDnsRefreshRate();
/**
*
* If the DNS refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used as the cluster’s DNS refresh
* rate. The value configured must be at least 1ms. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
*
*
* .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
* @return The dnsRefreshRate.
*/
com.google.protobuf.Duration getDnsRefreshRate();
/**
*
* If the DNS refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used as the cluster’s DNS refresh
* rate. The value configured must be at least 1ms. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
*
*
* .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
*/
com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder();
/**
*
* If the DNS failure refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
* other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
* @return Whether the dnsFailureRefreshRate field is set.
*/
boolean hasDnsFailureRefreshRate();
/**
*
* If the DNS failure refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
* other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
* @return The dnsFailureRefreshRate.
*/
io.envoyproxy.envoy.api.v2.Cluster.RefreshRate getDnsFailureRefreshRate();
/**
*
* If the DNS failure refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
* other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
*/
io.envoyproxy.envoy.api.v2.Cluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder();
/**
*
* Optional configuration for setting cluster's DNS refresh rate. If the value is set to true,
* cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS
* resolution.
*
*
* bool respect_dns_ttl = 39;
* @return The respectDnsTtl.
*/
boolean getRespectDnsTtl();
/**
*
* The DNS IP address resolution policy. If this setting is not specified, the
* value defaults to
* :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
*
*
* .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
* @return The enum numeric value on the wire for dnsLookupFamily.
*/
int getDnsLookupFamilyValue();
/**
*
* The DNS IP address resolution policy. If this setting is not specified, the
* value defaults to
* :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
*
*
* .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
* @return The dnsLookupFamily.
*/
io.envoyproxy.envoy.api.v2.Cluster.DnsLookupFamily getDnsLookupFamily();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used to specify the cluster’s dns resolvers.
* If this setting is not specified, the value defaults to the default
* resolver, which uses /etc/resolv.conf for configuration. For cluster types
* other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple's API only allows overriding DNS resolvers via system settings.
*
*
* repeated .envoy.api.v2.core.Address dns_resolvers = 18;
*/
java.util.List
getDnsResolversList();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used to specify the cluster’s dns resolvers.
* If this setting is not specified, the value defaults to the default
* resolver, which uses /etc/resolv.conf for configuration. For cluster types
* other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple's API only allows overriding DNS resolvers via system settings.
*
*
* repeated .envoy.api.v2.core.Address dns_resolvers = 18;
*/
io.envoyproxy.envoy.api.v2.core.Address getDnsResolvers(int index);
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used to specify the cluster’s dns resolvers.
* If this setting is not specified, the value defaults to the default
* resolver, which uses /etc/resolv.conf for configuration. For cluster types
* other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple's API only allows overriding DNS resolvers via system settings.
*
*
* repeated .envoy.api.v2.core.Address dns_resolvers = 18;
*/
int getDnsResolversCount();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used to specify the cluster’s dns resolvers.
* If this setting is not specified, the value defaults to the default
* resolver, which uses /etc/resolv.conf for configuration. For cluster types
* other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple's API only allows overriding DNS resolvers via system settings.
*
*
* repeated .envoy.api.v2.core.Address dns_resolvers = 18;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.core.AddressOrBuilder>
getDnsResolversOrBuilderList();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
* this value is used to specify the cluster’s dns resolvers.
* If this setting is not specified, the value defaults to the default
* resolver, which uses /etc/resolv.conf for configuration. For cluster types
* other than
* :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple's API only allows overriding DNS resolvers via system settings.
*
*
* repeated .envoy.api.v2.core.Address dns_resolvers = 18;
*/
io.envoyproxy.envoy.api.v2.core.AddressOrBuilder getDnsResolversOrBuilder(
int index);
/**
*
* [#next-major-version: Reconcile DNS options in a single message.]
* Always use TCP queries instead of UDP queries for DNS lookups.
* Setting this value causes failure if the
* ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
* server startup. Apple' API only uses UDP for DNS resolution.
*
*
* bool use_tcp_for_dns_lookups = 45;
* @return The useTcpForDnsLookups.
*/
boolean getUseTcpForDnsLookups();
/**
*
* If specified, outlier detection will be enabled for this upstream cluster.
* Each of the configuration values can be overridden via
* :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
*
*
* .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
* @return Whether the outlierDetection field is set.
*/
boolean hasOutlierDetection();
/**
*
* If specified, outlier detection will be enabled for this upstream cluster.
* Each of the configuration values can be overridden via
* :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
*
*
* .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
* @return The outlierDetection.
*/
io.envoyproxy.envoy.api.v2.cluster.OutlierDetection getOutlierDetection();
/**
*
* If specified, outlier detection will be enabled for this upstream cluster.
* Each of the configuration values can be overridden via
* :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
*
*
* .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
*/
io.envoyproxy.envoy.api.v2.cluster.OutlierDetectionOrBuilder getOutlierDetectionOrBuilder();
/**
*
* The interval for removing stale hosts from a cluster type
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
* Hosts are considered stale if they have not been used
* as upstream destinations during this interval. New hosts are added
* to original destination clusters on demand as new connections are
* redirected to Envoy, causing the number of hosts in the cluster to
* grow over time. Hosts that are not stale (they are actively used as
* destinations) are kept in the cluster, which allows connections to
* them remain open, saving the latency that would otherwise be spent
* on opening new connections. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
* this setting is ignored.
*
*
* .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
* @return Whether the cleanupInterval field is set.
*/
boolean hasCleanupInterval();
/**
*
* The interval for removing stale hosts from a cluster type
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
* Hosts are considered stale if they have not been used
* as upstream destinations during this interval. New hosts are added
* to original destination clusters on demand as new connections are
* redirected to Envoy, causing the number of hosts in the cluster to
* grow over time. Hosts that are not stale (they are actively used as
* destinations) are kept in the cluster, which allows connections to
* them remain open, saving the latency that would otherwise be spent
* on opening new connections. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
* this setting is ignored.
*
*
* .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
* @return The cleanupInterval.
*/
com.google.protobuf.Duration getCleanupInterval();
/**
*
* The interval for removing stale hosts from a cluster type
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
* Hosts are considered stale if they have not been used
* as upstream destinations during this interval. New hosts are added
* to original destination clusters on demand as new connections are
* redirected to Envoy, causing the number of hosts in the cluster to
* grow over time. Hosts that are not stale (they are actively used as
* destinations) are kept in the cluster, which allows connections to
* them remain open, saving the latency that would otherwise be spent
* on opening new connections. If this setting is not specified, the
* value defaults to 5000ms. For cluster types other than
* :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
* this setting is ignored.
*
*
* .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
*/
com.google.protobuf.DurationOrBuilder getCleanupIntervalOrBuilder();
/**
*
* Optional configuration used to bind newly established upstream connections.
* This overrides any bind_config specified in the bootstrap proto.
* If the address and port are empty, no bind will be performed.
*
*
* .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
* @return Whether the upstreamBindConfig field is set.
*/
boolean hasUpstreamBindConfig();
/**
*
* Optional configuration used to bind newly established upstream connections.
* This overrides any bind_config specified in the bootstrap proto.
* If the address and port are empty, no bind will be performed.
*
*
* .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
* @return The upstreamBindConfig.
*/
io.envoyproxy.envoy.api.v2.core.BindConfig getUpstreamBindConfig();
/**
*
* Optional configuration used to bind newly established upstream connections.
* This overrides any bind_config specified in the bootstrap proto.
* If the address and port are empty, no bind will be performed.
*
*
* .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
*/
io.envoyproxy.envoy.api.v2.core.BindConfigOrBuilder getUpstreamBindConfigOrBuilder();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
* @return Whether the lbSubsetConfig field is set.
*/
boolean hasLbSubsetConfig();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
* @return The lbSubsetConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.LbSubsetConfig getLbSubsetConfig();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
*/
io.envoyproxy.envoy.api.v2.Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder();
/**
*
* Optional configuration for the Ring Hash load balancing policy.
*
*
* .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
* @return Whether the ringHashLbConfig field is set.
*/
boolean hasRingHashLbConfig();
/**
*
* Optional configuration for the Ring Hash load balancing policy.
*
*
* .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
* @return The ringHashLbConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.RingHashLbConfig getRingHashLbConfig();
/**
*
* Optional configuration for the Ring Hash load balancing policy.
*
*
* .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
*/
io.envoyproxy.envoy.api.v2.Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder();
/**
*
* Optional configuration for the Original Destination load balancing policy.
*
*
* .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
* @return Whether the originalDstLbConfig field is set.
*/
boolean hasOriginalDstLbConfig();
/**
*
* Optional configuration for the Original Destination load balancing policy.
*
*
* .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
* @return The originalDstLbConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.OriginalDstLbConfig getOriginalDstLbConfig();
/**
*
* Optional configuration for the Original Destination load balancing policy.
*
*
* .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
*/
io.envoyproxy.envoy.api.v2.Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder();
/**
*
* Optional configuration for the LeastRequest load balancing policy.
*
*
* .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
* @return Whether the leastRequestLbConfig field is set.
*/
boolean hasLeastRequestLbConfig();
/**
*
* Optional configuration for the LeastRequest load balancing policy.
*
*
* .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
* @return The leastRequestLbConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.LeastRequestLbConfig getLeastRequestLbConfig();
/**
*
* Optional configuration for the LeastRequest load balancing policy.
*
*
* .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
*/
io.envoyproxy.envoy.api.v2.Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
* @return Whether the commonLbConfig field is set.
*/
boolean hasCommonLbConfig();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
* @return The commonLbConfig.
*/
io.envoyproxy.envoy.api.v2.Cluster.CommonLbConfig getCommonLbConfig();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
*/
io.envoyproxy.envoy.api.v2.Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder();
/**
*
* Optional custom transport socket implementation to use for upstream connections.
* To setup TLS, set a transport socket with name `tls` and
* :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.api.v2.core.TransportSocket transport_socket = 24;
* @return Whether the transportSocket field is set.
*/
boolean hasTransportSocket();
/**
*
* Optional custom transport socket implementation to use for upstream connections.
* To setup TLS, set a transport socket with name `tls` and
* :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.api.v2.core.TransportSocket transport_socket = 24;
* @return The transportSocket.
*/
io.envoyproxy.envoy.api.v2.core.TransportSocket getTransportSocket();
/**
*
* Optional custom transport socket implementation to use for upstream connections.
* To setup TLS, set a transport socket with name `tls` and
* :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.api.v2.core.TransportSocket transport_socket = 24;
*/
io.envoyproxy.envoy.api.v2.core.TransportSocketOrBuilder getTransportSocketOrBuilder();
/**
*
* The Metadata field can be used to provide additional information about the
* cluster. It can be used for stats, logging, and varying filter behavior.
* Fields should use reverse DNS notation to denote which entity within Envoy
* will need the information. For instance, if the metadata is intended for
* the Router filter, the filter name should be specified as *envoy.filters.http.router*.
*
*
* .envoy.api.v2.core.Metadata metadata = 25;
* @return Whether the metadata field is set.
*/
boolean hasMetadata();
/**
*
* The Metadata field can be used to provide additional information about the
* cluster. It can be used for stats, logging, and varying filter behavior.
* Fields should use reverse DNS notation to denote which entity within Envoy
* will need the information. For instance, if the metadata is intended for
* the Router filter, the filter name should be specified as *envoy.filters.http.router*.
*
*
* .envoy.api.v2.core.Metadata metadata = 25;
* @return The metadata.
*/
io.envoyproxy.envoy.api.v2.core.Metadata getMetadata();
/**
*
* The Metadata field can be used to provide additional information about the
* cluster. It can be used for stats, logging, and varying filter behavior.
* Fields should use reverse DNS notation to denote which entity within Envoy
* will need the information. For instance, if the metadata is intended for
* the Router filter, the filter name should be specified as *envoy.filters.http.router*.
*
*
* .envoy.api.v2.core.Metadata metadata = 25;
*/
io.envoyproxy.envoy.api.v2.core.MetadataOrBuilder getMetadataOrBuilder();
/**
*
* Determines how Envoy selects the protocol used to speak to upstream hosts.
*
*
* .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;
* @return The enum numeric value on the wire for protocolSelection.
*/
int getProtocolSelectionValue();
/**
*
* Determines how Envoy selects the protocol used to speak to upstream hosts.
*
*
* .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;
* @return The protocolSelection.
*/
io.envoyproxy.envoy.api.v2.Cluster.ClusterProtocolSelection getProtocolSelection();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
* @return Whether the upstreamConnectionOptions field is set.
*/
boolean hasUpstreamConnectionOptions();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
* @return The upstreamConnectionOptions.
*/
io.envoyproxy.envoy.api.v2.UpstreamConnectionOptions getUpstreamConnectionOptions();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
*/
io.envoyproxy.envoy.api.v2.UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder();
/**
*
* If an upstream host becomes unhealthy (as determined by the configured health checks
* or outlier detection), immediately close all connections to the failed host.
* .. note::
* This is currently only supported for connections created by tcp_proxy.
* .. note::
* The current implementation of this feature closes all connections immediately when
* the unhealthy status is detected. If there are a large number of connections open
* to an upstream host that becomes unhealthy, Envoy may spend a substantial amount of
* time exclusively closing these connections, and not processing any other traffic.
*
*
* bool close_connections_on_host_health_failure = 31;
* @return The closeConnectionsOnHostHealthFailure.
*/
boolean getCloseConnectionsOnHostHealthFailure();
/**
*
* If set to true, Envoy will ignore the health value of a host when processing its removal
* from service discovery. This means that if active health checking is used, Envoy will *not*
* wait for the endpoint to go unhealthy before removing it.
*
*
* bool drain_connections_on_host_removal = 32 [(.udpa.annotations.field_migrate) = { ... }
* @return The drainConnectionsOnHostRemoval.
*/
boolean getDrainConnectionsOnHostRemoval();
/**
*
* An (optional) network filter chain, listed in the order the filters should be applied.
* The chain will be applied to all outgoing connections that Envoy makes to the upstream
* servers of this cluster.
*
*
* repeated .envoy.api.v2.cluster.Filter filters = 40;
*/
java.util.List
getFiltersList();
/**
*
* An (optional) network filter chain, listed in the order the filters should be applied.
* The chain will be applied to all outgoing connections that Envoy makes to the upstream
* servers of this cluster.
*
*
* repeated .envoy.api.v2.cluster.Filter filters = 40;
*/
io.envoyproxy.envoy.api.v2.cluster.Filter getFilters(int index);
/**
*
* An (optional) network filter chain, listed in the order the filters should be applied.
* The chain will be applied to all outgoing connections that Envoy makes to the upstream
* servers of this cluster.
*
*
* repeated .envoy.api.v2.cluster.Filter filters = 40;
*/
int getFiltersCount();
/**
*
* An (optional) network filter chain, listed in the order the filters should be applied.
* The chain will be applied to all outgoing connections that Envoy makes to the upstream
* servers of this cluster.
*
*
* repeated .envoy.api.v2.cluster.Filter filters = 40;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.cluster.FilterOrBuilder>
getFiltersOrBuilderList();
/**
*
* An (optional) network filter chain, listed in the order the filters should be applied.
* The chain will be applied to all outgoing connections that Envoy makes to the upstream
* servers of this cluster.
*
*
* repeated .envoy.api.v2.cluster.Filter filters = 40;
*/
io.envoyproxy.envoy.api.v2.cluster.FilterOrBuilder getFiltersOrBuilder(
int index);
/**
*
* [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
* :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
* :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
*
*
* .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
* @return Whether the loadBalancingPolicy field is set.
*/
boolean hasLoadBalancingPolicy();
/**
*
* [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
* :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
* :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
*
*
* .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
* @return The loadBalancingPolicy.
*/
io.envoyproxy.envoy.api.v2.LoadBalancingPolicy getLoadBalancingPolicy();
/**
*
* [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
* :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
* :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
*
*
* .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
*/
io.envoyproxy.envoy.api.v2.LoadBalancingPolicyOrBuilder getLoadBalancingPolicyOrBuilder();
/**
*
* [#not-implemented-hide:]
* If present, tells the client where to send load reports via LRS. If not present, the
* client will fall back to a client-side default, which may be either (a) don't send any
* load reports or (b) send load reports for all clusters to a single default server
* (which may be configured in the bootstrap file).
* Note that if multiple clusters point to the same LRS server, the client may choose to
* create a separate stream for each cluster or it may choose to coalesce the data for
* multiple clusters onto a single stream. Either way, the client must make sure to send
* the data for any given cluster on no more than one stream.
* [#next-major-version: In the v3 API, we should consider restructuring this somehow,
* maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
* from the LRS stream here.]
*
*
* .envoy.api.v2.core.ConfigSource lrs_server = 42;
* @return Whether the lrsServer field is set.
*/
boolean hasLrsServer();
/**
*
* [#not-implemented-hide:]
* If present, tells the client where to send load reports via LRS. If not present, the
* client will fall back to a client-side default, which may be either (a) don't send any
* load reports or (b) send load reports for all clusters to a single default server
* (which may be configured in the bootstrap file).
* Note that if multiple clusters point to the same LRS server, the client may choose to
* create a separate stream for each cluster or it may choose to coalesce the data for
* multiple clusters onto a single stream. Either way, the client must make sure to send
* the data for any given cluster on no more than one stream.
* [#next-major-version: In the v3 API, we should consider restructuring this somehow,
* maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
* from the LRS stream here.]
*
*
* .envoy.api.v2.core.ConfigSource lrs_server = 42;
* @return The lrsServer.
*/
io.envoyproxy.envoy.api.v2.core.ConfigSource getLrsServer();
/**
*
* [#not-implemented-hide:]
* If present, tells the client where to send load reports via LRS. If not present, the
* client will fall back to a client-side default, which may be either (a) don't send any
* load reports or (b) send load reports for all clusters to a single default server
* (which may be configured in the bootstrap file).
* Note that if multiple clusters point to the same LRS server, the client may choose to
* create a separate stream for each cluster or it may choose to coalesce the data for
* multiple clusters onto a single stream. Either way, the client must make sure to send
* the data for any given cluster on no more than one stream.
* [#next-major-version: In the v3 API, we should consider restructuring this somehow,
* maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
* from the LRS stream here.]
*
*
* .envoy.api.v2.core.ConfigSource lrs_server = 42;
*/
io.envoyproxy.envoy.api.v2.core.ConfigSourceOrBuilder getLrsServerOrBuilder();
/**
*
* If track_timeout_budgets is true, the :ref:`timeout budget histograms
* <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each
* request. These show what percentage of a request's per try and global timeout was used. A value
* of 0 would indicate that none of the timeout was used or that the timeout was infinite. A value
* of 100 would indicate that the request took the entirety of the timeout given to it.
*
*
* bool track_timeout_budgets = 47;
* @return The trackTimeoutBudgets.
*/
boolean getTrackTimeoutBudgets();
public io.envoyproxy.envoy.api.v2.Cluster.ClusterDiscoveryTypeCase getClusterDiscoveryTypeCase();
public io.envoyproxy.envoy.api.v2.Cluster.LbConfigCase getLbConfigCase();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy