io.envoyproxy.envoy.config.cluster.v3.ClusterOrBuilder Maven / Gradle / Ivy
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/config/cluster/v3/cluster.proto
package io.envoyproxy.envoy.config.cluster.v3;
public interface ClusterOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.config.cluster.v3.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_v3_api_msg_config.cluster.v3.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_v3_api_msg_config.cluster.v3.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.
* This field can be used to specify custom transport socket configurations for health
* checks by adding matching key/value pairs in a health check's
* :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.config.cluster.v3.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_v3_api_msg_config.cluster.v3.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_v3_api_msg_config.cluster.v3.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.
* This field can be used to specify custom transport socket configurations for health
* checks by adding matching key/value pairs in a health check's
* :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
io.envoyproxy.envoy.config.cluster.v3.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_v3_api_msg_config.cluster.v3.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_v3_api_msg_config.cluster.v3.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.
* This field can be used to specify custom transport socket configurations for health
* checks by adding matching key/value pairs in a health check's
* :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.config.cluster.v3.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_v3_api_msg_config.cluster.v3.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_v3_api_msg_config.cluster.v3.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.
* This field can be used to specify custom transport socket configurations for health
* checks by adding matching key/value pairs in a health check's
* :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
java.util.List extends io.envoyproxy.envoy.config.cluster.v3.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>`
* is used to match against the transport sockets as they appear in the list. The first
* :ref:`match <envoy_v3_api_msg_config.cluster.v3.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_v3_api_msg_config.cluster.v3.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.
* This field can be used to specify custom transport socket configurations for health
* checks by adding matching key/value pairs in a health check's
* :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field.
* [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
*
*
* repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
*/
io.envoyproxy.envoy.config.cluster.v3.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_v3_api_field_config.cluster.v3.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_v3_api_field_config.cluster.v3.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 for observability. This name is used
* emitting stats for the cluster and access logging the cluster name. This will appear as
* additional information in configuration dumps of a cluster's current status as
* :ref:`observability_name <envoy_v3_api_field_admin.v3.ClusterStatus.observability_name>`
* and as an additional tag "upstream_cluster.name" while tracing. Note: 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 [(.udpa.annotations.field_migrate) = { ... }
* @return The altStatName.
*/
java.lang.String getAltStatName();
/**
*
* An optional alternative to the cluster name to be used for observability. This name is used
* emitting stats for the cluster and access logging the cluster name. This will appear as
* additional information in configuration dumps of a cluster's current status as
* :ref:`observability_name <envoy_v3_api_field_admin.v3.ClusterStatus.observability_name>`
* and as an additional tag "upstream_cluster.name" while tracing. Note: 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 [(.udpa.annotations.field_migrate) = { ... }
* @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.config.cluster.v3.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.config.cluster.v3.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.config.cluster.v3.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
* @return The type.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.DiscoveryType getType();
/**
*
* The custom cluster type.
*
*
* .envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
* @return Whether the clusterType field is set.
*/
boolean hasClusterType();
/**
*
* The custom cluster type.
*
*
* .envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
* @return The clusterType.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.CustomClusterType getClusterType();
/**
*
* The custom cluster type.
*
*
* .envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder();
/**
*
* Configuration to use for EDS updates for the Cluster.
*
*
* .envoy.config.cluster.v3.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.config.cluster.v3.Cluster.EdsClusterConfig eds_cluster_config = 3;
* @return The edsClusterConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.EdsClusterConfig getEdsClusterConfig();
/**
*
* Configuration to use for EDS updates for the Cluster.
*
*
* .envoy.config.cluster.v3.Cluster.EdsClusterConfig eds_cluster_config = 3;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder();
/**
*
* The timeout for new network connections to hosts in the cluster.
* If not set, a default value of 5s will be used.
*
*
* .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.
* If not set, a default value of 5s will be used.
*
*
* .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.
* If not set, a default value of 5s will be used.
*
*
* .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 [(.udpa.annotations.security) = { ... }
* @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 [(.udpa.annotations.security) = { ... }
* @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 [(.udpa.annotations.security) = { ... }
*/
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.config.cluster.v3.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.config.cluster.v3.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
* @return The lbPolicy.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.LbPolicy getLbPolicy();
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
*
*
* .envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
* @return Whether the loadAssignment field is set.
*/
boolean hasLoadAssignment();
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
*
*
* .envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
* @return The loadAssignment.
*/
io.envoyproxy.envoy.config.endpoint.v3.ClusterLoadAssignment getLoadAssignment();
/**
*
* Setting this is required for specifying members of
* :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`,
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
*
*
* .envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
*/
io.envoyproxy.envoy.config.endpoint.v3.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.config.core.v3.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.config.core.v3.HealthCheck health_checks = 8;
*/
io.envoyproxy.envoy.config.core.v3.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.config.core.v3.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.config.core.v3.HealthCheck health_checks = 8;
*/
java.util.List extends io.envoyproxy.envoy.config.core.v3.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.config.core.v3.HealthCheck health_checks = 8;
*/
io.envoyproxy.envoy.config.core.v3.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.
* .. attention::
* This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=874
* @return Whether the maxRequestsPerConnection field is set.
*/
@java.lang.Deprecated 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.
* .. attention::
* This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=874
* @return The maxRequestsPerConnection.
*/
@java.lang.Deprecated 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.
* .. attention::
* This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
*
*
* .google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder();
/**
*
* Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
*
*
* .envoy.config.cluster.v3.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.config.cluster.v3.CircuitBreakers circuit_breakers = 10;
* @return The circuitBreakers.
*/
io.envoyproxy.envoy.config.cluster.v3.CircuitBreakers getCircuitBreakers();
/**
*
* Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
*
*
* .envoy.config.cluster.v3.CircuitBreakers circuit_breakers = 10;
*/
io.envoyproxy.envoy.config.cluster.v3.CircuitBreakersOrBuilder getCircuitBreakersOrBuilder();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
* This has been deprecated in favor of
* :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* upstream_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=890
* @return Whether the upstreamHttpProtocolOptions field is set.
*/
@java.lang.Deprecated boolean hasUpstreamHttpProtocolOptions();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
* This has been deprecated in favor of
* :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* upstream_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=890
* @return The upstreamHttpProtocolOptions.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions();
/**
*
* HTTP protocol options that are applied only to upstream HTTP connections.
* These options apply to all HTTP versions.
* This has been deprecated in favor of
* :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* upstream_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
* This has been deprecated in favor of
* :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* common_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=903
* @return Whether the commonHttpProtocolOptions field is set.
*/
@java.lang.Deprecated boolean hasCommonHttpProtocolOptions();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
* This has been deprecated in favor of
* :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* common_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=903
* @return The commonHttpProtocolOptions.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.HttpProtocolOptions getCommonHttpProtocolOptions();
/**
*
* Additional options when handling HTTP requests upstream. These options will be applicable to
* both HTTP1 and HTTP2 requests.
* This has been deprecated in favor of
* :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>`
* in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* common_http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder();
/**
*
* Additional options when handling HTTP1 requests.
* This has been deprecated in favor of http_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=914
* @return Whether the httpProtocolOptions field is set.
*/
@java.lang.Deprecated boolean hasHttpProtocolOptions();
/**
*
* Additional options when handling HTTP1 requests.
* This has been deprecated in favor of http_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=914
* @return The httpProtocolOptions.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.Http1ProtocolOptions getHttpProtocolOptions();
/**
*
* Additional options when handling HTTP1 requests.
* This has been deprecated in favor of http_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.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.
* This has been deprecated in favor of http2_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>`
* message. http2_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
* @deprecated envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=930
* @return Whether the http2ProtocolOptions field is set.
*/
@java.lang.Deprecated 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.
* This has been deprecated in favor of http2_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>`
* message. http2_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
* @deprecated envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=930
* @return The http2ProtocolOptions.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.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.
* This has been deprecated in favor of http2_protocol_options fields in the
* :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>`
* message. http2_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
* See :ref:`upstream_http_protocol_options
* <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>`
* for example usage.
*
*
* .envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.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.
* [#next-major-version: make this a list of typed extensions.]
*
*
* 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.
* [#next-major-version: make this a list of typed extensions.]
*
*
* 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.
* [#next-major-version: make this a list of typed extensions.]
*
*
* 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.
* [#next-major-version: make this a list of typed extensions.]
*
*
* 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.
* [#next-major-version: make this a list of typed extensions.]
*
*
* 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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.config.cluster.v3.Cluster.RefreshRate dns_failure_refresh_rate = 44;
* @return The dnsFailureRefreshRate.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.RefreshRate getDnsFailureRefreshRate();
/**
*
* If the DNS failure refresh rate is specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and
* :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
* ignored.
*
*
* .envoy.config.cluster.v3.Cluster.RefreshRate dns_failure_refresh_rate = 44;
*/
io.envoyproxy.envoy.config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DnsLookupFamily.AUTO>`.
*
*
* .envoy.config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DnsLookupFamily.AUTO>`.
*
*
* .envoy.config.cluster.v3.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
* @return The dnsLookupFamily.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.DnsLookupFamily getDnsLookupFamily();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated java.util.List
getDnsResolversList();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.Address getDnsResolvers(int index);
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated int getDnsResolversCount();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated java.util.List extends io.envoyproxy.envoy.config.core.v3.AddressOrBuilder>
getDnsResolversOrBuilderList();
/**
*
* If DNS resolvers are specified and the cluster type is either
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`
* and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`
* this setting is ignored.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.AddressOrBuilder getDnsResolversOrBuilder(
int index);
/**
*
* Always use TCP queries instead of UDP queries for DNS lookups.
* This field is deprecated in favor of ``dns_resolution_config``
* which aggregates all of the DNS resolver configuration in a single message.
*
*
* bool use_tcp_for_dns_lookups = 45 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.use_tcp_for_dns_lookups is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=993
* @return The useTcpForDnsLookups.
*/
@java.lang.Deprecated boolean getUseTcpForDnsLookups();
/**
*
* DNS resolution configuration which includes the underlying dns resolver addresses and options.
* This field is deprecated in favor of
* :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
*
*
* .envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=999
* @return Whether the dnsResolutionConfig field is set.
*/
@java.lang.Deprecated boolean hasDnsResolutionConfig();
/**
*
* DNS resolution configuration which includes the underlying dns resolver addresses and options.
* This field is deprecated in favor of
* :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
*
*
* .envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=999
* @return The dnsResolutionConfig.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.DnsResolutionConfig getDnsResolutionConfig();
/**
*
* DNS resolution configuration which includes the underlying dns resolver addresses and options.
* This field is deprecated in favor of
* :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
*
*
* .envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.core.v3.DnsResolutionConfigOrBuilder getDnsResolutionConfigOrBuilder();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* configuration.
* During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists,
* when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``.
* When ``typed_dns_resolver_config`` is missing, the default behavior is in place.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
* @return Whether the typedDnsResolverConfig field is set.
*/
boolean hasTypedDnsResolverConfig();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* configuration.
* During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists,
* when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``.
* When ``typed_dns_resolver_config`` is missing, the default behavior is in place.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
* @return The typedDnsResolverConfig.
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfig getTypedDnsResolverConfig();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* configuration.
* During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists,
* when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``.
* When ``typed_dns_resolver_config`` is missing, the default behavior is in place.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfigOrBuilder getTypedDnsResolverConfigOrBuilder();
/**
*
* Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`,
* or :ref:`Redis Cluster<arch_overview_redis>`.
* If true, cluster readiness blocks on warm-up. If false, the cluster will complete
* initialization whether or not warm-up has completed. Defaults to true.
*
*
* .google.protobuf.BoolValue wait_for_warm_on_init = 54;
* @return Whether the waitForWarmOnInit field is set.
*/
boolean hasWaitForWarmOnInit();
/**
*
* Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`,
* or :ref:`Redis Cluster<arch_overview_redis>`.
* If true, cluster readiness blocks on warm-up. If false, the cluster will complete
* initialization whether or not warm-up has completed. Defaults to true.
*
*
* .google.protobuf.BoolValue wait_for_warm_on_init = 54;
* @return The waitForWarmOnInit.
*/
com.google.protobuf.BoolValue getWaitForWarmOnInit();
/**
*
* Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for
* :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`,
* or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`,
* or :ref:`Redis Cluster<arch_overview_redis>`.
* If true, cluster readiness blocks on warm-up. If false, the cluster will complete
* initialization whether or not warm-up has completed. Defaults to true.
*
*
* .google.protobuf.BoolValue wait_for_warm_on_init = 54;
*/
com.google.protobuf.BoolValueOrBuilder getWaitForWarmOnInitOrBuilder();
/**
*
* 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.config.cluster.v3.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.config.cluster.v3.OutlierDetection outlier_detection = 19;
* @return The outlierDetection.
*/
io.envoyproxy.envoy.config.cluster.v3.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.config.cluster.v3.OutlierDetection outlier_detection = 19;
*/
io.envoyproxy.envoy.config.cluster.v3.OutlierDetectionOrBuilder getOutlierDetectionOrBuilder();
/**
*
* The interval for removing stale hosts from a cluster type
* :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.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_v3_api_enum_value_config.cluster.v3.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.config.core.v3.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.config.core.v3.BindConfig upstream_bind_config = 21;
* @return The upstreamBindConfig.
*/
io.envoyproxy.envoy.config.core.v3.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.config.core.v3.BindConfig upstream_bind_config = 21;
*/
io.envoyproxy.envoy.config.core.v3.BindConfigOrBuilder getUpstreamBindConfigOrBuilder();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
* @return Whether the lbSubsetConfig field is set.
*/
boolean hasLbSubsetConfig();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
* @return The lbSubsetConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.LbSubsetConfig getLbSubsetConfig();
/**
*
* Configuration for load balancing subsetting.
*
*
* .envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder();
/**
*
* Optional configuration for the Ring Hash load balancing policy.
*
*
* .envoy.config.cluster.v3.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.config.cluster.v3.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
* @return The ringHashLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.RingHashLbConfig getRingHashLbConfig();
/**
*
* Optional configuration for the Ring Hash load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder();
/**
*
* Optional configuration for the Maglev load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
* @return Whether the maglevLbConfig field is set.
*/
boolean hasMaglevLbConfig();
/**
*
* Optional configuration for the Maglev load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
* @return The maglevLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.MaglevLbConfig getMaglevLbConfig();
/**
*
* Optional configuration for the Maglev load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.MaglevLbConfigOrBuilder getMaglevLbConfigOrBuilder();
/**
*
* Optional configuration for the Original Destination load balancing policy.
*
*
* .envoy.config.cluster.v3.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.config.cluster.v3.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
* @return The originalDstLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.OriginalDstLbConfig getOriginalDstLbConfig();
/**
*
* Optional configuration for the Original Destination load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder();
/**
*
* Optional configuration for the LeastRequest load balancing policy.
*
*
* .envoy.config.cluster.v3.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.config.cluster.v3.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
* @return The leastRequestLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.LeastRequestLbConfig getLeastRequestLbConfig();
/**
*
* Optional configuration for the LeastRequest load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder();
/**
*
* Optional configuration for the RoundRobin load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
* @return Whether the roundRobinLbConfig field is set.
*/
boolean hasRoundRobinLbConfig();
/**
*
* Optional configuration for the RoundRobin load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
* @return The roundRobinLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.RoundRobinLbConfig getRoundRobinLbConfig();
/**
*
* Optional configuration for the RoundRobin load balancing policy.
*
*
* .envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.RoundRobinLbConfigOrBuilder getRoundRobinLbConfigOrBuilder();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
* @return Whether the commonLbConfig field is set.
*/
boolean hasCommonLbConfig();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
* @return The commonLbConfig.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.CommonLbConfig getCommonLbConfig();
/**
*
* Common configuration for all load balancer implementations.
*
*
* .envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder();
/**
*
* Optional custom transport socket implementation to use for upstream connections.
* To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and
* :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.config.core.v3.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 ``envoy.transport_sockets.tls`` and
* :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.config.core.v3.TransportSocket transport_socket = 24;
* @return The transportSocket.
*/
io.envoyproxy.envoy.config.core.v3.TransportSocket getTransportSocket();
/**
*
* Optional custom transport socket implementation to use for upstream connections.
* To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and
* :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``.
* If no transport socket configuration is specified, new connections
* will be set up with plaintext.
*
*
* .envoy.config.core.v3.TransportSocket transport_socket = 24;
*/
io.envoyproxy.envoy.config.core.v3.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.config.core.v3.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.config.core.v3.Metadata metadata = 25;
* @return The metadata.
*/
io.envoyproxy.envoy.config.core.v3.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.config.core.v3.Metadata metadata = 25;
*/
io.envoyproxy.envoy.config.core.v3.MetadataOrBuilder getMetadataOrBuilder();
/**
*
* Determines how Envoy selects the protocol used to speak to upstream hosts.
* This has been deprecated in favor of setting explicit protocol selection
* in the :ref:`http_protocol_options
* <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
*
*
* .envoy.config.cluster.v3.Cluster.ClusterProtocolSelection protocol_selection = 26 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.protocol_selection is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=1099
* @return The enum numeric value on the wire for protocolSelection.
*/
@java.lang.Deprecated int getProtocolSelectionValue();
/**
*
* Determines how Envoy selects the protocol used to speak to upstream hosts.
* This has been deprecated in favor of setting explicit protocol selection
* in the :ref:`http_protocol_options
* <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message.
* http_protocol_options can be set via the cluster's
* :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
*
*
* .envoy.config.cluster.v3.Cluster.ClusterProtocolSelection protocol_selection = 26 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.protocol_selection is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=1099
* @return The protocolSelection.
*/
@java.lang.Deprecated io.envoyproxy.envoy.config.cluster.v3.Cluster.ClusterProtocolSelection getProtocolSelection();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
* @return Whether the upstreamConnectionOptions field is set.
*/
boolean hasUpstreamConnectionOptions();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
* @return The upstreamConnectionOptions.
*/
io.envoyproxy.envoy.config.cluster.v3.UpstreamConnectionOptions getUpstreamConnectionOptions();
/**
*
* Optional options for upstream connections.
*
*
* .envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
*/
io.envoyproxy.envoy.config.cluster.v3.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 ignore_health_on_host_removal = 32;
* @return The ignoreHealthOnHostRemoval.
*/
boolean getIgnoreHealthOnHostRemoval();
/**
*
* 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.config.cluster.v3.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.config.cluster.v3.Filter filters = 40;
*/
io.envoyproxy.envoy.config.cluster.v3.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.config.cluster.v3.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.config.cluster.v3.Filter filters = 40;
*/
java.util.List extends io.envoyproxy.envoy.config.cluster.v3.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.config.cluster.v3.Filter filters = 40;
*/
io.envoyproxy.envoy.config.cluster.v3.FilterOrBuilder getFiltersOrBuilder(
int index);
/**
*
* If this field is set and is supported by the client, it will supersede the value of
* :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
*
*
* .envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
* @return Whether the loadBalancingPolicy field is set.
*/
boolean hasLoadBalancingPolicy();
/**
*
* If this field is set and is supported by the client, it will supersede the value of
* :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
*
*
* .envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
* @return The loadBalancingPolicy.
*/
io.envoyproxy.envoy.config.cluster.v3.LoadBalancingPolicy getLoadBalancingPolicy();
/**
*
* If this field is set and is supported by the client, it will supersede the value of
* :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
*
*
* .envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
*/
io.envoyproxy.envoy.config.cluster.v3.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.config.core.v3.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.config.core.v3.ConfigSource lrs_server = 42;
* @return The lrsServer.
*/
io.envoyproxy.envoy.config.core.v3.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.config.core.v3.ConfigSource lrs_server = 42;
*/
io.envoyproxy.envoy.config.core.v3.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.
* .. attention::
* This field has been deprecated in favor of ``timeout_budgets``, part of
* :ref:`track_cluster_stats <envoy_v3_api_field_config.cluster.v3.Cluster.track_cluster_stats>`.
*
*
* bool track_timeout_budgets = 47 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
* @deprecated envoy.config.cluster.v3.Cluster.track_timeout_budgets is deprecated.
* See envoy/config/cluster/v3/cluster.proto;l=1160
* @return The trackTimeoutBudgets.
*/
@java.lang.Deprecated boolean getTrackTimeoutBudgets();
/**
*
* Optional customization and configuration of upstream connection pool, and upstream type.
* Currently this field only applies for HTTP traffic but is designed for eventual use for custom
* TCP upstreams.
* For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream
* HTTP, using the http connection pool and the codec from ``http2_protocol_options``
* For routes where CONNECT termination is configured, Envoy will take downstream CONNECT
* requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool.
* The default pool used is the generic connection pool which creates the HTTP upstream for most
* HTTP requests, and the TCP upstream if CONNECT termination is configured.
* If users desire custom connection pool or upstream behavior, for example terminating
* CONNECT only if a custom filter indicates it is appropriate, the custom factories
* can be registered and configured here.
* [#extension-category: envoy.upstreams]
*
*
* .envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
* @return Whether the upstreamConfig field is set.
*/
boolean hasUpstreamConfig();
/**
*
* Optional customization and configuration of upstream connection pool, and upstream type.
* Currently this field only applies for HTTP traffic but is designed for eventual use for custom
* TCP upstreams.
* For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream
* HTTP, using the http connection pool and the codec from ``http2_protocol_options``
* For routes where CONNECT termination is configured, Envoy will take downstream CONNECT
* requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool.
* The default pool used is the generic connection pool which creates the HTTP upstream for most
* HTTP requests, and the TCP upstream if CONNECT termination is configured.
* If users desire custom connection pool or upstream behavior, for example terminating
* CONNECT only if a custom filter indicates it is appropriate, the custom factories
* can be registered and configured here.
* [#extension-category: envoy.upstreams]
*
*
* .envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
* @return The upstreamConfig.
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfig getUpstreamConfig();
/**
*
* Optional customization and configuration of upstream connection pool, and upstream type.
* Currently this field only applies for HTTP traffic but is designed for eventual use for custom
* TCP upstreams.
* For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream
* HTTP, using the http connection pool and the codec from ``http2_protocol_options``
* For routes where CONNECT termination is configured, Envoy will take downstream CONNECT
* requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool.
* The default pool used is the generic connection pool which creates the HTTP upstream for most
* HTTP requests, and the TCP upstream if CONNECT termination is configured.
* If users desire custom connection pool or upstream behavior, for example terminating
* CONNECT only if a custom filter indicates it is appropriate, the custom factories
* can be registered and configured here.
* [#extension-category: envoy.upstreams]
*
*
* .envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfigOrBuilder getUpstreamConfigOrBuilder();
/**
*
* Configuration to track optional cluster stats.
*
*
* .envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
* @return Whether the trackClusterStats field is set.
*/
boolean hasTrackClusterStats();
/**
*
* Configuration to track optional cluster stats.
*
*
* .envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
* @return The trackClusterStats.
*/
io.envoyproxy.envoy.config.cluster.v3.TrackClusterStats getTrackClusterStats();
/**
*
* Configuration to track optional cluster stats.
*
*
* .envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
*/
io.envoyproxy.envoy.config.cluster.v3.TrackClusterStatsOrBuilder getTrackClusterStatsOrBuilder();
/**
*
* Preconnect configuration for this cluster.
*
*
* .envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
* @return Whether the preconnectPolicy field is set.
*/
boolean hasPreconnectPolicy();
/**
*
* Preconnect configuration for this cluster.
*
*
* .envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
* @return The preconnectPolicy.
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.PreconnectPolicy getPreconnectPolicy();
/**
*
* Preconnect configuration for this cluster.
*
*
* .envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
*/
io.envoyproxy.envoy.config.cluster.v3.Cluster.PreconnectPolicyOrBuilder getPreconnectPolicyOrBuilder();
/**
*
* If ``connection_pool_per_downstream_connection`` is true, the cluster will use a separate
* connection pool for every downstream connection
*
*
* bool connection_pool_per_downstream_connection = 51;
* @return The connectionPoolPerDownstreamConnection.
*/
boolean getConnectionPoolPerDownstreamConnection();
public io.envoyproxy.envoy.config.cluster.v3.Cluster.ClusterDiscoveryTypeCase getClusterDiscoveryTypeCase();
public io.envoyproxy.envoy.config.cluster.v3.Cluster.LbConfigCase getLbConfigCase();
}