public final class Cluster extends com.google.protobuf.GeneratedMessageV3 implements ClusterOrBuilder
Configuration for a single upstream cluster. [#next-free-field: 48]Protobuf type
envoy.api.v2.Cluster| Modifier and Type | Class and Description |
|---|---|
static class |
Cluster.Builder
Configuration for a single upstream cluster.
|
static class |
Cluster.ClusterDiscoveryTypeCase |
static class |
Cluster.ClusterProtocolSelection
Protobuf enum
envoy.api.v2.Cluster.ClusterProtocolSelection |
static class |
Cluster.CommonLbConfig
Common configuration for all load balancer implementations.
|
static interface |
Cluster.CommonLbConfigOrBuilder |
static class |
Cluster.CustomClusterType
Extended cluster type.
|
static interface |
Cluster.CustomClusterTypeOrBuilder |
static class |
Cluster.DiscoveryType
Refer to :ref:`service discovery type <arch_overview_service_discovery_types>`
for an explanation on each type.
|
static class |
Cluster.DnsLookupFamily
When V4_ONLY is selected, the DNS resolver will only perform a lookup for
addresses in the IPv4 family.
|
static class |
Cluster.EdsClusterConfig
Only valid when discovery type is EDS.
|
static interface |
Cluster.EdsClusterConfigOrBuilder |
static class |
Cluster.LbConfigCase |
static class |
Cluster.LbPolicy
Refer to :ref:`load balancer type <arch_overview_load_balancing_types>` architecture
overview section for information on each type.
|
static class |
Cluster.LbSubsetConfig
Optionally divide the endpoints in this cluster into subsets defined by
endpoint metadata and selected by route and weighted cluster metadata.
|
static interface |
Cluster.LbSubsetConfigOrBuilder |
static class |
Cluster.LeastRequestLbConfig
Specific configuration for the LeastRequest load balancing policy.
|
static interface |
Cluster.LeastRequestLbConfigOrBuilder |
static class |
Cluster.OriginalDstLbConfig
Specific configuration for the
:ref:`Original Destination <arch_overview_load_balancing_types_original_destination>`
load balancing policy.
|
static interface |
Cluster.OriginalDstLbConfigOrBuilder |
static class |
Cluster.RefreshRate
Protobuf type
envoy.api.v2.Cluster.RefreshRate |
static interface |
Cluster.RefreshRateOrBuilder |
static class |
Cluster.RingHashLbConfig
Specific configuration for the :ref:`RingHash<arch_overview_load_balancing_types_ring_hash>`
load balancing policy.
|
static interface |
Cluster.RingHashLbConfigOrBuilder |
static class |
Cluster.TransportSocketMatch
TransportSocketMatch specifies what transport socket config will be used
when the match conditions are satisfied.
|
static interface |
Cluster.TransportSocketMatchOrBuilder |
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter| Modifier and Type | Method and Description |
|---|---|
boolean |
containsExtensionProtocolOptions(String key)
Deprecated.
|
boolean |
containsTypedExtensionProtocolOptions(String key)
The extension_protocol_options field is used to provide extension-specific protocol options
for upstream connections.
|
boolean |
equals(Object obj) |
String |
getAltStatName()
An optional alternative to the cluster name to be used while emitting stats.
|
com.google.protobuf.ByteString |
getAltStatNameBytes()
An optional alternative to the cluster name to be used while emitting stats.
|
CircuitBreakers |
getCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
|
CircuitBreakersOrBuilder |
getCircuitBreakersOrBuilder()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
|
com.google.protobuf.Duration |
getCleanupInterval()
The interval for removing stale hosts from a cluster type
:ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
|
com.google.protobuf.DurationOrBuilder |
getCleanupIntervalOrBuilder()
The interval for removing stale hosts from a cluster type
:ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
|
boolean |
getCloseConnectionsOnHostHealthFailure()
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.
|
Cluster.ClusterDiscoveryTypeCase |
getClusterDiscoveryTypeCase() |
Cluster.CustomClusterType |
getClusterType()
The custom cluster type.
|
Cluster.CustomClusterTypeOrBuilder |
getClusterTypeOrBuilder()
The custom cluster type.
|
HttpProtocolOptions |
getCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream.
|
HttpProtocolOptionsOrBuilder |
getCommonHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP requests upstream.
|
Cluster.CommonLbConfig |
getCommonLbConfig()
Common configuration for all load balancer implementations.
|
Cluster.CommonLbConfigOrBuilder |
getCommonLbConfigOrBuilder()
Common configuration for all load balancer implementations.
|
com.google.protobuf.Duration |
getConnectTimeout()
The timeout for new network connections to hosts in the cluster.
|
com.google.protobuf.DurationOrBuilder |
getConnectTimeoutOrBuilder()
The timeout for new network connections to hosts in the cluster.
|
static Cluster |
getDefaultInstance() |
Cluster |
getDefaultInstanceForType() |
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
Cluster.RefreshRate |
getDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this is used as the cluster’s DNS refresh rate when requests are failing.
|
Cluster.RefreshRateOrBuilder |
getDnsFailureRefreshRateOrBuilder()
If the DNS failure refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this is used as the cluster’s DNS refresh rate when requests are failing.
|
Cluster.DnsLookupFamily |
getDnsLookupFamily()
The DNS IP address resolution policy.
|
int |
getDnsLookupFamilyValue()
The DNS IP address resolution policy.
|
com.google.protobuf.Duration |
getDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used as the cluster’s DNS refresh
rate.
|
com.google.protobuf.DurationOrBuilder |
getDnsRefreshRateOrBuilder()
If the DNS refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used as the cluster’s DNS refresh
rate.
|
Address |
getDnsResolvers(int index)
If DNS resolvers are specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used to specify the cluster’s dns resolvers.
|
int |
getDnsResolversCount()
If DNS resolvers are specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used to specify the cluster’s dns resolvers.
|
List<Address> |
getDnsResolversList()
If DNS resolvers are specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used to specify the cluster’s dns resolvers.
|
AddressOrBuilder |
getDnsResolversOrBuilder(int index)
If DNS resolvers are specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used to specify the cluster’s dns resolvers.
|
List<? extends AddressOrBuilder> |
getDnsResolversOrBuilderList()
If DNS resolvers are specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used to specify the cluster’s dns resolvers.
|
boolean |
getDrainConnectionsOnHostRemoval()
If set to true, Envoy will ignore the health value of a host when processing its removal
from service discovery.
|
Cluster.EdsClusterConfig |
getEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
|
Cluster.EdsClusterConfigOrBuilder |
getEdsClusterConfigOrBuilder()
Configuration to use for EDS updates for the Cluster.
|
Map<String,com.google.protobuf.Struct> |
getExtensionProtocolOptions()
Deprecated.
|
int |
getExtensionProtocolOptionsCount()
Deprecated.
|
Map<String,com.google.protobuf.Struct> |
getExtensionProtocolOptionsMap()
Deprecated.
|
com.google.protobuf.Struct |
getExtensionProtocolOptionsOrDefault(String key,
com.google.protobuf.Struct defaultValue)
Deprecated.
|
com.google.protobuf.Struct |
getExtensionProtocolOptionsOrThrow(String key)
Deprecated.
|
Filter |
getFilters(int index)
An (optional) network filter chain, listed in the order the filters should be applied.
|
int |
getFiltersCount()
An (optional) network filter chain, listed in the order the filters should be applied.
|
List<Filter> |
getFiltersList()
An (optional) network filter chain, listed in the order the filters should be applied.
|
FilterOrBuilder |
getFiltersOrBuilder(int index)
An (optional) network filter chain, listed in the order the filters should be applied.
|
List<? extends FilterOrBuilder> |
getFiltersOrBuilderList()
An (optional) network filter chain, listed in the order the filters should be applied.
|
HealthCheck |
getHealthChecks(int index)
Optional :ref:`active health checking <arch_overview_health_checking>`
configuration for the cluster.
|
int |
getHealthChecksCount()
Optional :ref:`active health checking <arch_overview_health_checking>`
configuration for the cluster.
|
List<HealthCheck> |
getHealthChecksList()
Optional :ref:`active health checking <arch_overview_health_checking>`
configuration for the cluster.
|
HealthCheckOrBuilder |
getHealthChecksOrBuilder(int index)
Optional :ref:`active health checking <arch_overview_health_checking>`
configuration for the cluster.
|
List<? extends HealthCheckOrBuilder> |
getHealthChecksOrBuilderList()
Optional :ref:`active health checking <arch_overview_health_checking>`
configuration for the cluster.
|
Address |
getHosts(int index)
Deprecated.
|
int |
getHostsCount()
Deprecated.
|
List<Address> |
getHostsList()
Deprecated.
|
AddressOrBuilder |
getHostsOrBuilder(int index)
Deprecated.
|
List<? extends AddressOrBuilder> |
getHostsOrBuilderList()
Deprecated.
|
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.
|
Http2ProtocolOptionsOrBuilder |
getHttp2ProtocolOptionsOrBuilder()
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.
|
Http1ProtocolOptions |
getHttpProtocolOptions()
Additional options when handling HTTP1 requests.
|
Http1ProtocolOptionsOrBuilder |
getHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP1 requests.
|
Cluster.LbConfigCase |
getLbConfigCase() |
Cluster.LbPolicy |
getLbPolicy()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
when picking a host in the cluster.
|
int |
getLbPolicyValue()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
when picking a host in the cluster.
|
Cluster.LbSubsetConfig |
getLbSubsetConfig()
Configuration for load balancing subsetting.
|
Cluster.LbSubsetConfigOrBuilder |
getLbSubsetConfigOrBuilder()
Configuration for load balancing subsetting.
|
Cluster.LeastRequestLbConfig |
getLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
|
Cluster.LeastRequestLbConfigOrBuilder |
getLeastRequestLbConfigOrBuilder()
Optional configuration for the LeastRequest load balancing policy.
|
ClusterLoadAssignment |
getLoadAssignment()
Setting this is required for specifying members of
:ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
|
ClusterLoadAssignmentOrBuilder |
getLoadAssignmentOrBuilder()
Setting this is required for specifying members of
:ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
|
LoadBalancingPolicy |
getLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration.
|
LoadBalancingPolicyOrBuilder |
getLoadBalancingPolicyOrBuilder()
[#not-implemented-hide:] New mechanism for LB policy configuration.
|
ConfigSource |
getLrsServer()
[#not-implemented-hide:]
If present, tells the client where to send load reports via LRS.
|
ConfigSourceOrBuilder |
getLrsServerOrBuilder()
[#not-implemented-hide:]
If present, tells the client where to send load reports via LRS.
|
com.google.protobuf.UInt32Value |
getMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection.
|
com.google.protobuf.UInt32ValueOrBuilder |
getMaxRequestsPerConnectionOrBuilder()
Optional maximum requests for a single upstream connection.
|
Metadata |
getMetadata()
The Metadata field can be used to provide additional information about the
cluster.
|
MetadataOrBuilder |
getMetadataOrBuilder()
The Metadata field can be used to provide additional information about the
cluster.
|
String |
getName()
Supplies the name of the cluster which must be unique across all clusters.
|
com.google.protobuf.ByteString |
getNameBytes()
Supplies the name of the cluster which must be unique across all clusters.
|
Cluster.OriginalDstLbConfig |
getOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
|
Cluster.OriginalDstLbConfigOrBuilder |
getOriginalDstLbConfigOrBuilder()
Optional configuration for the Original Destination load balancing policy.
|
OutlierDetection |
getOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster.
|
OutlierDetectionOrBuilder |
getOutlierDetectionOrBuilder()
If specified, outlier detection will be enabled for this upstream cluster.
|
com.google.protobuf.Parser<Cluster> |
getParserForType() |
com.google.protobuf.UInt32Value |
getPerConnectionBufferLimitBytes()
Soft limit on size of the cluster’s connections read and write buffers.
|
com.google.protobuf.UInt32ValueOrBuilder |
getPerConnectionBufferLimitBytesOrBuilder()
Soft limit on size of the cluster’s connections read and write buffers.
|
Cluster.ClusterProtocolSelection |
getProtocolSelection()
Determines how Envoy selects the protocol used to speak to upstream hosts.
|
int |
getProtocolSelectionValue()
Determines how Envoy selects the protocol used to speak to upstream hosts.
|
boolean |
getRespectDnsTtl()
Optional configuration for setting cluster's DNS refresh rate.
|
Cluster.RingHashLbConfig |
getRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
|
Cluster.RingHashLbConfigOrBuilder |
getRingHashLbConfigOrBuilder()
Optional configuration for the Ring Hash load balancing policy.
|
int |
getSerializedSize() |
UpstreamTlsContext |
getTlsContext()
Deprecated.
|
UpstreamTlsContextOrBuilder |
getTlsContextOrBuilder()
Deprecated.
|
boolean |
getTrackTimeoutBudgets()
If track_timeout_budgets is true, the :ref:`timeout budget histograms
<config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each
request.
|
TransportSocket |
getTransportSocket()
Optional custom transport socket implementation to use for upstream connections.
|
Cluster.TransportSocketMatch |
getTransportSocketMatches(int index)
Configuration to use different transport sockets for different endpoints.
|
int |
getTransportSocketMatchesCount()
Configuration to use different transport sockets for different endpoints.
|
List<Cluster.TransportSocketMatch> |
getTransportSocketMatchesList()
Configuration to use different transport sockets for different endpoints.
|
Cluster.TransportSocketMatchOrBuilder |
getTransportSocketMatchesOrBuilder(int index)
Configuration to use different transport sockets for different endpoints.
|
List<? extends Cluster.TransportSocketMatchOrBuilder> |
getTransportSocketMatchesOrBuilderList()
Configuration to use different transport sockets for different endpoints.
|
TransportSocketOrBuilder |
getTransportSocketOrBuilder()
Optional custom transport socket implementation to use for upstream connections.
|
Cluster.DiscoveryType |
getType()
The :ref:`service discovery type <arch_overview_service_discovery_types>`
to use for resolving the cluster.
|
Map<String,com.google.protobuf.Any> |
getTypedExtensionProtocolOptions()
Deprecated.
|
int |
getTypedExtensionProtocolOptionsCount()
The extension_protocol_options field is used to provide extension-specific protocol options
for upstream connections.
|
Map<String,com.google.protobuf.Any> |
getTypedExtensionProtocolOptionsMap()
The extension_protocol_options field is used to provide extension-specific protocol options
for upstream connections.
|
com.google.protobuf.Any |
getTypedExtensionProtocolOptionsOrDefault(String key,
com.google.protobuf.Any defaultValue)
The extension_protocol_options field is used to provide extension-specific protocol options
for upstream connections.
|
com.google.protobuf.Any |
getTypedExtensionProtocolOptionsOrThrow(String key)
The extension_protocol_options field is used to provide extension-specific protocol options
for upstream connections.
|
int |
getTypeValue()
The :ref:`service discovery type <arch_overview_service_discovery_types>`
to use for resolving the cluster.
|
com.google.protobuf.UnknownFieldSet |
getUnknownFields() |
BindConfig |
getUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections.
|
BindConfigOrBuilder |
getUpstreamBindConfigOrBuilder()
Optional configuration used to bind newly established upstream connections.
|
UpstreamConnectionOptions |
getUpstreamConnectionOptions()
Optional options for upstream connections.
|
UpstreamConnectionOptionsOrBuilder |
getUpstreamConnectionOptionsOrBuilder()
Optional options for upstream connections.
|
UpstreamHttpProtocolOptions |
getUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections.
|
UpstreamHttpProtocolOptionsOrBuilder |
getUpstreamHttpProtocolOptionsOrBuilder()
HTTP protocol options that are applied only to upstream HTTP connections.
|
boolean |
getUseTcpForDnsLookups()
[#next-major-version: Reconcile DNS options in a single message.]
|
boolean |
hasCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
|
boolean |
hasCleanupInterval()
The interval for removing stale hosts from a cluster type
:ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
|
boolean |
hasClusterType()
The custom cluster type.
|
boolean |
hasCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream.
|
boolean |
hasCommonLbConfig()
Common configuration for all load balancer implementations.
|
boolean |
hasConnectTimeout()
The timeout for new network connections to hosts in the cluster.
|
boolean |
hasDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this is used as the cluster’s DNS refresh rate when requests are failing.
|
boolean |
hasDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
this value is used as the cluster’s DNS refresh
rate.
|
boolean |
hasEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
|
int |
hashCode() |
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.
|
boolean |
hasHttpProtocolOptions()
Additional options when handling HTTP1 requests.
|
boolean |
hasLbSubsetConfig()
Configuration for load balancing subsetting.
|
boolean |
hasLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
|
boolean |
hasLoadAssignment()
Setting this is required for specifying members of
:ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
:ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
|
boolean |
hasLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration.
|
boolean |
hasLrsServer()
[#not-implemented-hide:]
If present, tells the client where to send load reports via LRS.
|
boolean |
hasMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection.
|
boolean |
hasMetadata()
The Metadata field can be used to provide additional information about the
cluster.
|
boolean |
hasOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
|
boolean |
hasOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster.
|
boolean |
hasPerConnectionBufferLimitBytes()
Soft limit on size of the cluster’s connections read and write buffers.
|
boolean |
hasRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
|
boolean |
hasTlsContext()
Deprecated.
|
boolean |
hasTransportSocket()
Optional custom transport socket implementation to use for upstream connections.
|
boolean |
hasUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections.
|
boolean |
hasUpstreamConnectionOptions()
Optional options for upstream connections.
|
boolean |
hasUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections.
|
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
protected com.google.protobuf.MapField |
internalGetMapField(int number) |
boolean |
isInitialized() |
static Cluster.Builder |
newBuilder() |
static Cluster.Builder |
newBuilder(Cluster prototype) |
Cluster.Builder |
newBuilderForType() |
protected Cluster.Builder |
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) |
protected Object |
newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused) |
static Cluster |
parseDelimitedFrom(InputStream input) |
static Cluster |
parseDelimitedFrom(InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Cluster |
parseFrom(byte[] data) |
static Cluster |
parseFrom(byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Cluster |
parseFrom(ByteBuffer data) |
static Cluster |
parseFrom(ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Cluster |
parseFrom(com.google.protobuf.ByteString data) |
static Cluster |
parseFrom(com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Cluster |
parseFrom(com.google.protobuf.CodedInputStream input) |
static Cluster |
parseFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static Cluster |
parseFrom(InputStream input) |
static Cluster |
parseFrom(InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
static com.google.protobuf.Parser<Cluster> |
parser() |
Cluster.Builder |
toBuilder() |
void |
writeTo(com.google.protobuf.CodedOutputStream output) |
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTagfindInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toStringaddAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToclone, finalize, getClass, notify, notifyAll, wait, wait, waitpublic static final int TRANSPORT_SOCKET_MATCHES_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
public static final int ALT_STAT_NAME_FIELD_NUMBER
public static final int TYPE_FIELD_NUMBER
public static final int CLUSTER_TYPE_FIELD_NUMBER
public static final int EDS_CLUSTER_CONFIG_FIELD_NUMBER
public static final int CONNECT_TIMEOUT_FIELD_NUMBER
public static final int PER_CONNECTION_BUFFER_LIMIT_BYTES_FIELD_NUMBER
public static final int LB_POLICY_FIELD_NUMBER
public static final int HOSTS_FIELD_NUMBER
public static final int LOAD_ASSIGNMENT_FIELD_NUMBER
public static final int HEALTH_CHECKS_FIELD_NUMBER
public static final int MAX_REQUESTS_PER_CONNECTION_FIELD_NUMBER
public static final int CIRCUIT_BREAKERS_FIELD_NUMBER
public static final int TLS_CONTEXT_FIELD_NUMBER
public static final int UPSTREAM_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int TYPED_EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int DNS_REFRESH_RATE_FIELD_NUMBER
public static final int DNS_FAILURE_REFRESH_RATE_FIELD_NUMBER
public static final int RESPECT_DNS_TTL_FIELD_NUMBER
public static final int DNS_LOOKUP_FAMILY_FIELD_NUMBER
public static final int DNS_RESOLVERS_FIELD_NUMBER
public static final int USE_TCP_FOR_DNS_LOOKUPS_FIELD_NUMBER
public static final int OUTLIER_DETECTION_FIELD_NUMBER
public static final int CLEANUP_INTERVAL_FIELD_NUMBER
public static final int UPSTREAM_BIND_CONFIG_FIELD_NUMBER
public static final int LB_SUBSET_CONFIG_FIELD_NUMBER
public static final int RING_HASH_LB_CONFIG_FIELD_NUMBER
public static final int ORIGINAL_DST_LB_CONFIG_FIELD_NUMBER
public static final int LEAST_REQUEST_LB_CONFIG_FIELD_NUMBER
public static final int COMMON_LB_CONFIG_FIELD_NUMBER
public static final int TRANSPORT_SOCKET_FIELD_NUMBER
public static final int METADATA_FIELD_NUMBER
public static final int PROTOCOL_SELECTION_FIELD_NUMBER
public static final int UPSTREAM_CONNECTION_OPTIONS_FIELD_NUMBER
public static final int CLOSE_CONNECTIONS_ON_HOST_HEALTH_FAILURE_FIELD_NUMBER
public static final int DRAIN_CONNECTIONS_ON_HOST_REMOVAL_FIELD_NUMBER
public static final int FILTERS_FIELD_NUMBER
public static final int LOAD_BALANCING_POLICY_FIELD_NUMBER
public static final int LRS_SERVER_FIELD_NUMBER
public static final int TRACK_TIMEOUT_BUDGETS_FIELD_NUMBER
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
newInstance in class com.google.protobuf.GeneratedMessageV3public final com.google.protobuf.UnknownFieldSet getUnknownFields()
getUnknownFields in interface com.google.protobuf.MessageOrBuildergetUnknownFields in class com.google.protobuf.GeneratedMessageV3public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.MapField internalGetMapField(int number)
internalGetMapField in class com.google.protobuf.GeneratedMessageV3protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3public Cluster.ClusterDiscoveryTypeCase getClusterDiscoveryTypeCase()
getClusterDiscoveryTypeCase in interface ClusterOrBuilderpublic Cluster.LbConfigCase getLbConfigCase()
getLbConfigCase in interface ClusterOrBuilderpublic List<Cluster.TransportSocketMatch> getTransportSocketMatchesList()
Configuration to use different transport sockets for different endpoints.
The entry of *envoy.transport_socket_match* in the
:ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
is used to match against the transport sockets as they appear in the list. The first
:ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
For example, with the following match
.. code-block:: yaml
transport_socket_matches:
- name: "enableMTLS"
match:
acceptMTLS: true
transport_socket:
name: envoy.transport_sockets.tls
config: { ... } # tls socket configuration
- name: "defaultToPlaintext"
match: {}
transport_socket:
name: envoy.transport_sockets.raw_buffer
Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
socket match in case above.
If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
*TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
*transport_socket* specified in this cluster.
This field allows gradual and flexible transport socket configuration changes.
The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
"acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
has "acceptPlaintext": "true" metadata information.
Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
*TransportSocketMatch* in this field. Other client Envoys receive CDS without
*transport_socket_match* set, and still send plain text traffic to the same cluster.
[#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;getTransportSocketMatchesList in interface ClusterOrBuilderpublic List<? extends Cluster.TransportSocketMatchOrBuilder> getTransportSocketMatchesOrBuilderList()
Configuration to use different transport sockets for different endpoints.
The entry of *envoy.transport_socket_match* in the
:ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
is used to match against the transport sockets as they appear in the list. The first
:ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
For example, with the following match
.. code-block:: yaml
transport_socket_matches:
- name: "enableMTLS"
match:
acceptMTLS: true
transport_socket:
name: envoy.transport_sockets.tls
config: { ... } # tls socket configuration
- name: "defaultToPlaintext"
match: {}
transport_socket:
name: envoy.transport_sockets.raw_buffer
Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
socket match in case above.
If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
*TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
*transport_socket* specified in this cluster.
This field allows gradual and flexible transport socket configuration changes.
The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
"acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
has "acceptPlaintext": "true" metadata information.
Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
*TransportSocketMatch* in this field. Other client Envoys receive CDS without
*transport_socket_match* set, and still send plain text traffic to the same cluster.
[#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;getTransportSocketMatchesOrBuilderList in interface ClusterOrBuilderpublic int getTransportSocketMatchesCount()
Configuration to use different transport sockets for different endpoints.
The entry of *envoy.transport_socket_match* in the
:ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
is used to match against the transport sockets as they appear in the list. The first
:ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
For example, with the following match
.. code-block:: yaml
transport_socket_matches:
- name: "enableMTLS"
match:
acceptMTLS: true
transport_socket:
name: envoy.transport_sockets.tls
config: { ... } # tls socket configuration
- name: "defaultToPlaintext"
match: {}
transport_socket:
name: envoy.transport_sockets.raw_buffer
Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
socket match in case above.
If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
*TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
*transport_socket* specified in this cluster.
This field allows gradual and flexible transport socket configuration changes.
The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
"acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
has "acceptPlaintext": "true" metadata information.
Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
*TransportSocketMatch* in this field. Other client Envoys receive CDS without
*transport_socket_match* set, and still send plain text traffic to the same cluster.
[#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;getTransportSocketMatchesCount in interface ClusterOrBuilderpublic Cluster.TransportSocketMatch getTransportSocketMatches(int index)
Configuration to use different transport sockets for different endpoints.
The entry of *envoy.transport_socket_match* in the
:ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
is used to match against the transport sockets as they appear in the list. The first
:ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
For example, with the following match
.. code-block:: yaml
transport_socket_matches:
- name: "enableMTLS"
match:
acceptMTLS: true
transport_socket:
name: envoy.transport_sockets.tls
config: { ... } # tls socket configuration
- name: "defaultToPlaintext"
match: {}
transport_socket:
name: envoy.transport_sockets.raw_buffer
Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
socket match in case above.
If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
*TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
*transport_socket* specified in this cluster.
This field allows gradual and flexible transport socket configuration changes.
The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
"acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
has "acceptPlaintext": "true" metadata information.
Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
*TransportSocketMatch* in this field. Other client Envoys receive CDS without
*transport_socket_match* set, and still send plain text traffic to the same cluster.
[#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;getTransportSocketMatches in interface ClusterOrBuilderpublic Cluster.TransportSocketMatchOrBuilder getTransportSocketMatchesOrBuilder(int index)
Configuration to use different transport sockets for different endpoints.
The entry of *envoy.transport_socket_match* in the
:ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
is used to match against the transport sockets as they appear in the list. The first
:ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
For example, with the following match
.. code-block:: yaml
transport_socket_matches:
- name: "enableMTLS"
match:
acceptMTLS: true
transport_socket:
name: envoy.transport_sockets.tls
config: { ... } # tls socket configuration
- name: "defaultToPlaintext"
match: {}
transport_socket:
name: envoy.transport_sockets.raw_buffer
Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
socket match in case above.
If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
*TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
*transport_socket* specified in this cluster.
This field allows gradual and flexible transport socket configuration changes.
The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
"acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
has "acceptPlaintext": "true" metadata information.
Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
*TransportSocketMatch* in this field. Other client Envoys receive CDS without
*transport_socket_match* set, and still send plain text traffic to the same cluster.
[#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;getTransportSocketMatchesOrBuilder in interface ClusterOrBuilderpublic String getName()
Supplies the name of the cluster which must be unique across all clusters. The cluster name is used when emitting :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name <envoy_api_field_Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }getName in interface ClusterOrBuilderpublic com.google.protobuf.ByteString getNameBytes()
Supplies the name of the cluster which must be unique across all clusters. The cluster name is used when emitting :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name <envoy_api_field_Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }getNameBytes in interface ClusterOrBuilderpublic String getAltStatName()
An optional alternative to the cluster name to be used while emitting stats. Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28;getAltStatName in interface ClusterOrBuilderpublic com.google.protobuf.ByteString getAltStatNameBytes()
An optional alternative to the cluster name to be used while emitting stats. Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28;getAltStatNameBytes in interface ClusterOrBuilderpublic int getTypeValue()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.
.envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }getTypeValue in interface ClusterOrBuilderpublic Cluster.DiscoveryType getType()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.
.envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }getType in interface ClusterOrBuilderpublic boolean hasClusterType()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;hasClusterType in interface ClusterOrBuilderpublic Cluster.CustomClusterType getClusterType()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;getClusterType in interface ClusterOrBuilderpublic Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;getClusterTypeOrBuilder in interface ClusterOrBuilderpublic boolean hasEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;hasEdsClusterConfig in interface ClusterOrBuilderpublic Cluster.EdsClusterConfig getEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;getEdsClusterConfig in interface ClusterOrBuilderpublic Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;getEdsClusterConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasConnectTimeout()
The timeout for new network connections to hosts in the cluster.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }hasConnectTimeout in interface ClusterOrBuilderpublic com.google.protobuf.Duration getConnectTimeout()
The timeout for new network connections to hosts in the cluster.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }getConnectTimeout in interface ClusterOrBuilderpublic com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder()
The timeout for new network connections to hosts in the cluster.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }getConnectTimeoutOrBuilder in interface ClusterOrBuilderpublic 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;hasPerConnectionBufferLimitBytes in interface ClusterOrBuilderpublic 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;getPerConnectionBufferLimitBytes in interface ClusterOrBuilderpublic com.google.protobuf.UInt32ValueOrBuilder getPerConnectionBufferLimitBytesOrBuilder()
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;getPerConnectionBufferLimitBytesOrBuilder in interface ClusterOrBuilderpublic int getLbPolicyValue()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.
.envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }getLbPolicyValue in interface ClusterOrBuilderpublic Cluster.LbPolicy getLbPolicy()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.
.envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }getLbPolicy in interface ClusterOrBuilder@Deprecated public List<Address> getHostsList()
If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];getHostsList in interface ClusterOrBuilder@Deprecated public List<? extends AddressOrBuilder> getHostsOrBuilderList()
If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];getHostsOrBuilderList in interface ClusterOrBuilder@Deprecated public int getHostsCount()
If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];getHostsCount in interface ClusterOrBuilder@Deprecated public Address getHosts(int index)
If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];getHosts in interface ClusterOrBuilder@Deprecated public AddressOrBuilder getHostsOrBuilder(int index)
If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];getHostsOrBuilder in interface ClusterOrBuilderpublic boolean hasLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;hasLoadAssignment in interface ClusterOrBuilderpublic ClusterLoadAssignment getLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;getLoadAssignment in interface ClusterOrBuilderpublic ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;getLoadAssignmentOrBuilder in interface ClusterOrBuilderpublic List<HealthCheck> getHealthChecksList()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;getHealthChecksList in interface ClusterOrBuilderpublic List<? extends HealthCheckOrBuilder> getHealthChecksOrBuilderList()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;getHealthChecksOrBuilderList in interface ClusterOrBuilderpublic int getHealthChecksCount()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;getHealthChecksCount in interface ClusterOrBuilderpublic HealthCheck getHealthChecks(int index)
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;getHealthChecks in interface ClusterOrBuilderpublic HealthCheckOrBuilder getHealthChecksOrBuilder(int index)
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;getHealthChecksOrBuilder in interface ClusterOrBuilderpublic boolean hasMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;hasMaxRequestsPerConnection in interface ClusterOrBuilderpublic com.google.protobuf.UInt32Value getMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;getMaxRequestsPerConnection in interface ClusterOrBuilderpublic com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;getMaxRequestsPerConnectionOrBuilder in interface ClusterOrBuilderpublic boolean hasCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;hasCircuitBreakers in interface ClusterOrBuilderpublic CircuitBreakers getCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;getCircuitBreakers in interface ClusterOrBuilderpublic CircuitBreakersOrBuilder getCircuitBreakersOrBuilder()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;getCircuitBreakersOrBuilder in interface ClusterOrBuilder@Deprecated public boolean hasTlsContext()
The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];hasTlsContext in interface ClusterOrBuilder@Deprecated public UpstreamTlsContext getTlsContext()
The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getTlsContext in interface ClusterOrBuilder@Deprecated public UpstreamTlsContextOrBuilder getTlsContextOrBuilder()
The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getTlsContextOrBuilder in interface ClusterOrBuilderpublic boolean hasUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;hasUpstreamHttpProtocolOptions in interface ClusterOrBuilderpublic UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;getUpstreamHttpProtocolOptions in interface ClusterOrBuilderpublic UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;getUpstreamHttpProtocolOptionsOrBuilder in interface ClusterOrBuilderpublic boolean hasCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;hasCommonHttpProtocolOptions in interface ClusterOrBuilderpublic HttpProtocolOptions getCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;getCommonHttpProtocolOptions in interface ClusterOrBuilderpublic HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;getCommonHttpProtocolOptionsOrBuilder in interface ClusterOrBuilderpublic boolean hasHttpProtocolOptions()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;hasHttpProtocolOptions in interface ClusterOrBuilderpublic Http1ProtocolOptions getHttpProtocolOptions()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;getHttpProtocolOptions in interface ClusterOrBuilderpublic Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;getHttpProtocolOptionsOrBuilder in interface ClusterOrBuilderpublic boolean hasHttp2ProtocolOptions()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;hasHttp2ProtocolOptions in interface ClusterOrBuilderpublic Http2ProtocolOptions getHttp2ProtocolOptions()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;getHttp2ProtocolOptions in interface ClusterOrBuilderpublic Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;getHttp2ProtocolOptionsOrBuilder in interface ClusterOrBuilder@Deprecated public int getExtensionProtocolOptionsCount()
ClusterOrBuilderThe extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getExtensionProtocolOptionsCount in interface ClusterOrBuilder@Deprecated public boolean containsExtensionProtocolOptions(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];containsExtensionProtocolOptions in interface ClusterOrBuilder@Deprecated public Map<String,com.google.protobuf.Struct> getExtensionProtocolOptions()
getExtensionProtocolOptionsMap() instead.getExtensionProtocolOptions in interface ClusterOrBuilder@Deprecated public Map<String,com.google.protobuf.Struct> getExtensionProtocolOptionsMap()
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getExtensionProtocolOptionsMap in interface ClusterOrBuilder@Deprecated public com.google.protobuf.Struct getExtensionProtocolOptionsOrDefault(String key, com.google.protobuf.Struct defaultValue)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getExtensionProtocolOptionsOrDefault in interface ClusterOrBuilder@Deprecated public com.google.protobuf.Struct getExtensionProtocolOptionsOrThrow(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];getExtensionProtocolOptionsOrThrow in interface ClusterOrBuilderpublic int getTypedExtensionProtocolOptionsCount()
ClusterOrBuilderThe extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;getTypedExtensionProtocolOptionsCount in interface ClusterOrBuilderpublic boolean containsTypedExtensionProtocolOptions(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;containsTypedExtensionProtocolOptions in interface ClusterOrBuilder@Deprecated public Map<String,com.google.protobuf.Any> getTypedExtensionProtocolOptions()
getTypedExtensionProtocolOptionsMap() instead.getTypedExtensionProtocolOptions in interface ClusterOrBuilderpublic Map<String,com.google.protobuf.Any> getTypedExtensionProtocolOptionsMap()
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;getTypedExtensionProtocolOptionsMap in interface ClusterOrBuilderpublic com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault(String key, com.google.protobuf.Any defaultValue)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;getTypedExtensionProtocolOptionsOrDefault in interface ClusterOrBuilderpublic com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;getTypedExtensionProtocolOptionsOrThrow in interface ClusterOrBuilderpublic boolean hasDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }hasDnsRefreshRate in interface ClusterOrBuilderpublic com.google.protobuf.Duration getDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }getDnsRefreshRate in interface ClusterOrBuilderpublic com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }getDnsRefreshRateOrBuilder in interface ClusterOrBuilderpublic boolean hasDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;hasDnsFailureRefreshRate in interface ClusterOrBuilderpublic Cluster.RefreshRate getDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;getDnsFailureRefreshRate in interface ClusterOrBuilderpublic Cluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;getDnsFailureRefreshRateOrBuilder in interface ClusterOrBuilderpublic boolean getRespectDnsTtl()
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;getRespectDnsTtl in interface ClusterOrBuilderpublic int getDnsLookupFamilyValue()
The DNS IP address resolution policy. If this setting is not specified, the value defaults to :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
.envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }getDnsLookupFamilyValue in interface ClusterOrBuilderpublic Cluster.DnsLookupFamily getDnsLookupFamily()
The DNS IP address resolution policy. If this setting is not specified, the value defaults to :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
.envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }getDnsLookupFamily in interface ClusterOrBuilderpublic List<Address> getDnsResolversList()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;getDnsResolversList in interface ClusterOrBuilderpublic List<? extends AddressOrBuilder> getDnsResolversOrBuilderList()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;getDnsResolversOrBuilderList in interface ClusterOrBuilderpublic int getDnsResolversCount()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;getDnsResolversCount in interface ClusterOrBuilderpublic Address getDnsResolvers(int index)
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;getDnsResolvers in interface ClusterOrBuilderpublic AddressOrBuilder getDnsResolversOrBuilder(int index)
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;getDnsResolversOrBuilder in interface ClusterOrBuilderpublic boolean getUseTcpForDnsLookups()
[#next-major-version: Reconcile DNS options in a single message.] Always use TCP queries instead of UDP queries for DNS lookups. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple' API only uses UDP for DNS resolution.
bool use_tcp_for_dns_lookups = 45;getUseTcpForDnsLookups in interface ClusterOrBuilderpublic boolean hasOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster. Each of the configuration values can be overridden via :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
.envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;hasOutlierDetection in interface ClusterOrBuilderpublic OutlierDetection getOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster. Each of the configuration values can be overridden via :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
.envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;getOutlierDetection in interface ClusterOrBuilderpublic OutlierDetectionOrBuilder getOutlierDetectionOrBuilder()
If specified, outlier detection will be enabled for this upstream cluster. Each of the configuration values can be overridden via :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
.envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;getOutlierDetectionOrBuilder in interface ClusterOrBuilderpublic boolean hasCleanupInterval()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }hasCleanupInterval in interface ClusterOrBuilderpublic com.google.protobuf.Duration getCleanupInterval()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }getCleanupInterval in interface ClusterOrBuilderpublic com.google.protobuf.DurationOrBuilder getCleanupIntervalOrBuilder()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }getCleanupIntervalOrBuilder in interface ClusterOrBuilderpublic boolean hasUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections. This overrides any bind_config specified in the bootstrap proto. If the address and port are empty, no bind will be performed.
.envoy.api.v2.core.BindConfig upstream_bind_config = 21;hasUpstreamBindConfig in interface ClusterOrBuilderpublic BindConfig getUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections. This overrides any bind_config specified in the bootstrap proto. If the address and port are empty, no bind will be performed.
.envoy.api.v2.core.BindConfig upstream_bind_config = 21;getUpstreamBindConfig in interface ClusterOrBuilderpublic BindConfigOrBuilder getUpstreamBindConfigOrBuilder()
Optional configuration used to bind newly established upstream connections. This overrides any bind_config specified in the bootstrap proto. If the address and port are empty, no bind will be performed.
.envoy.api.v2.core.BindConfig upstream_bind_config = 21;getUpstreamBindConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;hasLbSubsetConfig in interface ClusterOrBuilderpublic Cluster.LbSubsetConfig getLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;getLbSubsetConfig in interface ClusterOrBuilderpublic Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;getLbSubsetConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;hasRingHashLbConfig in interface ClusterOrBuilderpublic Cluster.RingHashLbConfig getRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;getRingHashLbConfig in interface ClusterOrBuilderpublic Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;getRingHashLbConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;hasOriginalDstLbConfig in interface ClusterOrBuilderpublic Cluster.OriginalDstLbConfig getOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;getOriginalDstLbConfig in interface ClusterOrBuilderpublic Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;getOriginalDstLbConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;hasLeastRequestLbConfig in interface ClusterOrBuilderpublic Cluster.LeastRequestLbConfig getLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;getLeastRequestLbConfig in interface ClusterOrBuilderpublic Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;getLeastRequestLbConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;hasCommonLbConfig in interface ClusterOrBuilderpublic Cluster.CommonLbConfig getCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;getCommonLbConfig in interface ClusterOrBuilderpublic Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;getCommonLbConfigOrBuilder in interface ClusterOrBuilderpublic boolean hasTransportSocket()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;hasTransportSocket in interface ClusterOrBuilderpublic TransportSocket getTransportSocket()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;getTransportSocket in interface ClusterOrBuilderpublic TransportSocketOrBuilder getTransportSocketOrBuilder()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;getTransportSocketOrBuilder in interface ClusterOrBuilderpublic boolean hasMetadata()
The Metadata field can be used to provide additional information about the cluster. It can be used for stats, logging, and varying filter behavior. Fields should use reverse DNS notation to denote which entity within Envoy will need the information. For instance, if the metadata is intended for the Router filter, the filter name should be specified as *envoy.filters.http.router*.
.envoy.api.v2.core.Metadata metadata = 25;hasMetadata in interface ClusterOrBuilderpublic Metadata getMetadata()
The Metadata field can be used to provide additional information about the cluster. It can be used for stats, logging, and varying filter behavior. Fields should use reverse DNS notation to denote which entity within Envoy will need the information. For instance, if the metadata is intended for the Router filter, the filter name should be specified as *envoy.filters.http.router*.
.envoy.api.v2.core.Metadata metadata = 25;getMetadata in interface ClusterOrBuilderpublic MetadataOrBuilder getMetadataOrBuilder()
The Metadata field can be used to provide additional information about the cluster. It can be used for stats, logging, and varying filter behavior. Fields should use reverse DNS notation to denote which entity within Envoy will need the information. For instance, if the metadata is intended for the Router filter, the filter name should be specified as *envoy.filters.http.router*.
.envoy.api.v2.core.Metadata metadata = 25;getMetadataOrBuilder in interface ClusterOrBuilderpublic int getProtocolSelectionValue()
Determines how Envoy selects the protocol used to speak to upstream hosts.
.envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;getProtocolSelectionValue in interface ClusterOrBuilderpublic Cluster.ClusterProtocolSelection getProtocolSelection()
Determines how Envoy selects the protocol used to speak to upstream hosts.
.envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;getProtocolSelection in interface ClusterOrBuilderpublic boolean hasUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;hasUpstreamConnectionOptions in interface ClusterOrBuilderpublic UpstreamConnectionOptions getUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;getUpstreamConnectionOptions in interface ClusterOrBuilderpublic UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;getUpstreamConnectionOptionsOrBuilder in interface ClusterOrBuilderpublic boolean getCloseConnectionsOnHostHealthFailure()
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;getCloseConnectionsOnHostHealthFailure in interface ClusterOrBuilderpublic boolean getDrainConnectionsOnHostRemoval()
If set to true, Envoy will ignore the health value of a host when processing its removal from service discovery. This means that if active health checking is used, Envoy will *not* wait for the endpoint to go unhealthy before removing it.
bool drain_connections_on_host_removal = 32 [(.udpa.annotations.field_migrate) = { ... }getDrainConnectionsOnHostRemoval in interface ClusterOrBuilderpublic List<Filter> getFiltersList()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;getFiltersList in interface ClusterOrBuilderpublic List<? extends FilterOrBuilder> getFiltersOrBuilderList()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;getFiltersOrBuilderList in interface ClusterOrBuilderpublic int getFiltersCount()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;getFiltersCount in interface ClusterOrBuilderpublic Filter getFilters(int index)
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;getFilters in interface ClusterOrBuilderpublic FilterOrBuilder getFiltersOrBuilder(int index)
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;getFiltersOrBuilder in interface ClusterOrBuilderpublic boolean hasLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;hasLoadBalancingPolicy in interface ClusterOrBuilderpublic LoadBalancingPolicy getLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;getLoadBalancingPolicy in interface ClusterOrBuilderpublic LoadBalancingPolicyOrBuilder getLoadBalancingPolicyOrBuilder()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;getLoadBalancingPolicyOrBuilder in interface ClusterOrBuilderpublic boolean hasLrsServer()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS. If not present, the client will fall back to a client-side default, which may be either (a) don't send any load reports or (b) send load reports for all clusters to a single default server (which may be configured in the bootstrap file). Note that if multiple clusters point to the same LRS server, the client may choose to create a separate stream for each cluster or it may choose to coalesce the data for multiple clusters onto a single stream. Either way, the client must make sure to send the data for any given cluster on no more than one stream. [#next-major-version: In the v3 API, we should consider restructuring this somehow, maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation from the LRS stream here.]
.envoy.api.v2.core.ConfigSource lrs_server = 42;hasLrsServer in interface ClusterOrBuilderpublic ConfigSource getLrsServer()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS. If not present, the client will fall back to a client-side default, which may be either (a) don't send any load reports or (b) send load reports for all clusters to a single default server (which may be configured in the bootstrap file). Note that if multiple clusters point to the same LRS server, the client may choose to create a separate stream for each cluster or it may choose to coalesce the data for multiple clusters onto a single stream. Either way, the client must make sure to send the data for any given cluster on no more than one stream. [#next-major-version: In the v3 API, we should consider restructuring this somehow, maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation from the LRS stream here.]
.envoy.api.v2.core.ConfigSource lrs_server = 42;getLrsServer in interface ClusterOrBuilderpublic ConfigSourceOrBuilder getLrsServerOrBuilder()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS. If not present, the client will fall back to a client-side default, which may be either (a) don't send any load reports or (b) send load reports for all clusters to a single default server (which may be configured in the bootstrap file). Note that if multiple clusters point to the same LRS server, the client may choose to create a separate stream for each cluster or it may choose to coalesce the data for multiple clusters onto a single stream. Either way, the client must make sure to send the data for any given cluster on no more than one stream. [#next-major-version: In the v3 API, we should consider restructuring this somehow, maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation from the LRS stream here.]
.envoy.api.v2.core.ConfigSource lrs_server = 42;getLrsServerOrBuilder in interface ClusterOrBuilderpublic boolean getTrackTimeoutBudgets()
If track_timeout_budgets is true, the :ref:`timeout budget histograms <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each request. These show what percentage of a request's per try and global timeout was used. A value of 0 would indicate that none of the timeout was used or that the timeout was infinite. A value of 100 would indicate that the request took the entirety of the timeout given to it.
bool track_timeout_budgets = 47;getTrackTimeoutBudgets in interface ClusterOrBuilderpublic final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3public void writeTo(com.google.protobuf.CodedOutputStream output)
throws IOException
writeTo in interface com.google.protobuf.MessageLitewriteTo in class com.google.protobuf.GeneratedMessageV3IOExceptionpublic int getSerializedSize()
getSerializedSize in interface com.google.protobuf.MessageLitegetSerializedSize in class com.google.protobuf.GeneratedMessageV3public boolean equals(Object obj)
equals in interface com.google.protobuf.Messageequals in class com.google.protobuf.AbstractMessagepublic int hashCode()
hashCode in interface com.google.protobuf.MessagehashCode in class com.google.protobuf.AbstractMessagepublic static Cluster parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
com.google.protobuf.InvalidProtocolBufferExceptionpublic static Cluster parseFrom(InputStream input) throws IOException
IOExceptionpublic static Cluster parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
IOExceptionpublic static Cluster parseDelimitedFrom(InputStream input) throws IOException
IOExceptionpublic static Cluster parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
IOExceptionpublic static Cluster parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
IOExceptionpublic static Cluster parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
IOExceptionpublic Cluster.Builder newBuilderForType()
newBuilderForType in interface com.google.protobuf.MessagenewBuilderForType in interface com.google.protobuf.MessageLitepublic static Cluster.Builder newBuilder()
public static Cluster.Builder newBuilder(Cluster prototype)
public Cluster.Builder toBuilder()
toBuilder in interface com.google.protobuf.MessagetoBuilder in interface com.google.protobuf.MessageLiteprotected Cluster.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
newBuilderForType in class com.google.protobuf.GeneratedMessageV3public static Cluster getDefaultInstance()
public static com.google.protobuf.Parser<Cluster> parser()
public com.google.protobuf.Parser<Cluster> getParserForType()
getParserForType in interface com.google.protobuf.MessagegetParserForType in interface com.google.protobuf.MessageLitegetParserForType in class com.google.protobuf.GeneratedMessageV3public Cluster getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderCopyright © 2018–2021 The Envoy Project. All rights reserved.