Class Cluster
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessage
-
- io.envoyproxy.envoy.config.cluster.v3.Cluster
-
- All Implemented Interfaces:
com.google.protobuf.Message
,com.google.protobuf.MessageLite
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,ClusterOrBuilder
,java.io.Serializable
public final class Cluster extends com.google.protobuf.GeneratedMessage implements ClusterOrBuilder
Configuration for a single upstream cluster. [#next-free-field: 57]
Protobuf typeenvoy.config.cluster.v3.Cluster
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Cluster.Builder
Configuration for a single upstream cluster.static class
Cluster.ClusterDiscoveryTypeCase
static class
Cluster.ClusterProtocolSelection
Protobuf enumenvoy.config.cluster.v3.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.MaglevLbConfig
Specific configuration for the :ref:`Maglev<arch_overview_load_balancing_types_maglev>` load balancing policy.static interface
Cluster.MaglevLbConfigOrBuilder
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.PreconnectPolicy
Protobuf typeenvoy.config.cluster.v3.Cluster.PreconnectPolicy
static interface
Cluster.PreconnectPolicyOrBuilder
static class
Cluster.RefreshRate
Protobuf typeenvoy.config.cluster.v3.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.RoundRobinLbConfig
Specific configuration for the RoundRobin load balancing policy.static interface
Cluster.RoundRobinLbConfigOrBuilder
static class
Cluster.SlowStartConfig
Configuration for :ref:`slow start mode <arch_overview_load_balancing_slow_start>`.static interface
Cluster.SlowStartConfigOrBuilder
static class
Cluster.TransportSocketMatch
TransportSocketMatch specifies what transport socket config will be used when the match conditions are satisfied.static interface
Cluster.TransportSocketMatchOrBuilder
private static class
Cluster.TypedExtensionProtocolOptionsDefaultEntryHolder
-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,T extends java.lang.Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter
-
-
Field Summary
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
containsTypedExtensionProtocolOptions(java.lang.String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections.boolean
equals(java.lang.Object obj)
java.lang.String
getAltStatName()
An optional alternative to the cluster name to be used for observability.com.google.protobuf.ByteString
getAltStatNameBytes()
An optional alternative to the cluster name to be used for observability.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`.com.google.protobuf.DurationOrBuilder
getCleanupIntervalOrBuilder()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`.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.Cluster.ClusterDiscoveryTypeCase
getClusterDiscoveryTypeCase()
Cluster.CustomClusterType
getClusterType()
The custom cluster type.Cluster.CustomClusterTypeOrBuilder
getClusterTypeOrBuilder()
The custom cluster type.HttpProtocolOptions
getCommonHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated.HttpProtocolOptionsOrBuilder
getCommonHttpProtocolOptionsOrBuilder()
Deprecated.Cluster.CommonLbConfig
getCommonLbConfig()
Common configuration for all load balancer implementations.Cluster.CommonLbConfigOrBuilder
getCommonLbConfigOrBuilder()
Common configuration for all load balancer implementations.boolean
getConnectionPoolPerDownstreamConnection()
If ``connection_pool_per_downstream_connection`` is true, the cluster will use a separate connection pool for every downstream connectioncom.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.Cluster.RefreshRateOrBuilder
getDnsFailureRefreshRateOrBuilder()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.com.google.protobuf.DurationOrBuilder
getDnsRefreshRateOrBuilder()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.DnsResolutionConfig
getDnsResolutionConfig()
Deprecated.envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated.DnsResolutionConfigOrBuilder
getDnsResolutionConfigOrBuilder()
Deprecated.Address
getDnsResolvers(int index)
Deprecated.int
getDnsResolversCount()
Deprecated.java.util.List<Address>
getDnsResolversList()
Deprecated.AddressOrBuilder
getDnsResolversOrBuilder(int index)
Deprecated.java.util.List<? extends AddressOrBuilder>
getDnsResolversOrBuilderList()
Deprecated.Cluster.EdsClusterConfig
getEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.Cluster.EdsClusterConfigOrBuilder
getEdsClusterConfigOrBuilder()
Configuration to use for EDS updates for the Cluster.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.java.util.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.java.util.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.java.util.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.java.util.List<? extends HealthCheckOrBuilder>
getHealthChecksOrBuilderList()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.Http2ProtocolOptions
getHttp2ProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated.Http2ProtocolOptionsOrBuilder
getHttp2ProtocolOptionsOrBuilder()
Deprecated.Http1ProtocolOptions
getHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated.Http1ProtocolOptionsOrBuilder
getHttpProtocolOptionsOrBuilder()
Deprecated.boolean
getIgnoreHealthOnHostRemoval()
If set to true, Envoy will ignore the health value of a host when processing its removal from service discovery.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters.ClusterLoadAssignmentOrBuilder
getLoadAssignmentOrBuilder()
Setting this is required for specifying members of :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters.LoadBalancingPolicy
getLoadBalancingPolicy()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.LoadBalancingPolicyOrBuilder
getLoadBalancingPolicyOrBuilder()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.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.Cluster.MaglevLbConfig
getMaglevLbConfig()
Optional configuration for the Maglev load balancing policy.Cluster.MaglevLbConfigOrBuilder
getMaglevLbConfigOrBuilder()
Optional configuration for the Maglev load balancing policy.com.google.protobuf.UInt32Value
getMaxRequestsPerConnection()
Deprecated.envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated.com.google.protobuf.UInt32ValueOrBuilder
getMaxRequestsPerConnectionOrBuilder()
Deprecated.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.java.lang.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.PreconnectPolicy
getPreconnectPolicy()
Preconnect configuration for this cluster.Cluster.PreconnectPolicyOrBuilder
getPreconnectPolicyOrBuilder()
Preconnect configuration for this cluster.Cluster.ClusterProtocolSelection
getProtocolSelection()
Deprecated.envoy.config.cluster.v3.Cluster.protocol_selection is deprecated.int
getProtocolSelectionValue()
Deprecated.envoy.config.cluster.v3.Cluster.protocol_selection is deprecated.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.Cluster.RoundRobinLbConfig
getRoundRobinLbConfig()
Optional configuration for the RoundRobin load balancing policy.Cluster.RoundRobinLbConfigOrBuilder
getRoundRobinLbConfigOrBuilder()
Optional configuration for the RoundRobin load balancing policy.int
getSerializedSize()
TrackClusterStats
getTrackClusterStats()
Configuration to track optional cluster stats.TrackClusterStatsOrBuilder
getTrackClusterStatsOrBuilder()
Configuration to track optional cluster stats.boolean
getTrackTimeoutBudgets()
Deprecated.envoy.config.cluster.v3.Cluster.track_timeout_budgets is deprecated.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.java.util.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.java.util.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.TypedExtensionConfig
getTypedDnsResolverConfig()
DNS resolver type configuration extension.TypedExtensionConfigOrBuilder
getTypedDnsResolverConfigOrBuilder()
DNS resolver type configuration extension.java.util.Map<java.lang.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.java.util.Map<java.lang.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(java.lang.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(java.lang.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.BindConfig
getUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections.BindConfigOrBuilder
getUpstreamBindConfigOrBuilder()
Optional configuration used to bind newly established upstream connections.TypedExtensionConfig
getUpstreamConfig()
Optional customization and configuration of upstream connection pool, and upstream type.TypedExtensionConfigOrBuilder
getUpstreamConfigOrBuilder()
Optional customization and configuration of upstream connection pool, and upstream type.UpstreamConnectionOptions
getUpstreamConnectionOptions()
Optional options for upstream connections.UpstreamConnectionOptionsOrBuilder
getUpstreamConnectionOptionsOrBuilder()
Optional options for upstream connections.UpstreamHttpProtocolOptions
getUpstreamHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated.UpstreamHttpProtocolOptionsOrBuilder
getUpstreamHttpProtocolOptionsOrBuilder()
Deprecated.boolean
getUseTcpForDnsLookups()
Deprecated.envoy.config.cluster.v3.Cluster.use_tcp_for_dns_lookups is deprecated.com.google.protobuf.BoolValue
getWaitForWarmOnInit()
Optional configuration for having cluster readiness block on warm-up.com.google.protobuf.BoolValueOrBuilder
getWaitForWarmOnInitOrBuilder()
Optional configuration for having cluster readiness block on warm-up.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`.boolean
hasClusterType()
The custom cluster type.boolean
hasCommonHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.boolean
hasDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.boolean
hasDnsResolutionConfig()
Deprecated.envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated.boolean
hasEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.int
hashCode()
boolean
hasHttp2ProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated.boolean
hasHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated.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_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters.boolean
hasLoadBalancingPolicy()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.boolean
hasLrsServer()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS.boolean
hasMaglevLbConfig()
Optional configuration for the Maglev load balancing policy.boolean
hasMaxRequestsPerConnection()
Deprecated.envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated.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
hasPreconnectPolicy()
Preconnect configuration for this cluster.boolean
hasRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.boolean
hasRoundRobinLbConfig()
Optional configuration for the RoundRobin load balancing policy.boolean
hasTrackClusterStats()
Configuration to track optional cluster stats.boolean
hasTransportSocket()
Optional custom transport socket implementation to use for upstream connections.boolean
hasType()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.boolean
hasTypedDnsResolverConfig()
DNS resolver type configuration extension.boolean
hasUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections.boolean
hasUpstreamConfig()
Optional customization and configuration of upstream connection pool, and upstream type.boolean
hasUpstreamConnectionOptions()
Optional options for upstream connections.boolean
hasUpstreamHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated.boolean
hasWaitForWarmOnInit()
Optional configuration for having cluster readiness block on warm-up.protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable()
protected com.google.protobuf.MapFieldReflectionAccessor
internalGetMapFieldReflection(int number)
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any>
internalGetTypedExtensionProtocolOptions()
boolean
isInitialized()
static Cluster.Builder
newBuilder()
static Cluster.Builder
newBuilder(Cluster prototype)
Cluster.Builder
newBuilderForType()
protected Cluster.Builder
newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
static Cluster
parseDelimitedFrom(java.io.InputStream input)
static Cluster
parseDelimitedFrom(java.io.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(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(java.io.InputStream input)
static Cluster
parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster
parseFrom(java.nio.ByteBuffer data)
static Cluster
parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.protobuf.Parser<Cluster>
parser()
Cluster.Builder
toBuilder()
void
writeTo(com.google.protobuf.CodedOutputStream output)
-
Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
bitField0_
private int bitField0_
-
clusterDiscoveryTypeCase_
private int clusterDiscoveryTypeCase_
-
clusterDiscoveryType_
private java.lang.Object clusterDiscoveryType_
-
lbConfigCase_
private int lbConfigCase_
-
lbConfig_
private java.lang.Object lbConfig_
-
TRANSPORT_SOCKET_MATCHES_FIELD_NUMBER
public static final int TRANSPORT_SOCKET_MATCHES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
transportSocketMatches_
private java.util.List<Cluster.TransportSocketMatch> transportSocketMatches_
-
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
name_
private volatile java.lang.Object name_
-
ALT_STAT_NAME_FIELD_NUMBER
public static final int ALT_STAT_NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
altStatName_
private volatile java.lang.Object altStatName_
-
TYPE_FIELD_NUMBER
public static final int TYPE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CLUSTER_TYPE_FIELD_NUMBER
public static final int CLUSTER_TYPE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
EDS_CLUSTER_CONFIG_FIELD_NUMBER
public static final int EDS_CLUSTER_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
edsClusterConfig_
private Cluster.EdsClusterConfig edsClusterConfig_
-
CONNECT_TIMEOUT_FIELD_NUMBER
public static final int CONNECT_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
connectTimeout_
private com.google.protobuf.Duration connectTimeout_
-
PER_CONNECTION_BUFFER_LIMIT_BYTES_FIELD_NUMBER
public static final int PER_CONNECTION_BUFFER_LIMIT_BYTES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
perConnectionBufferLimitBytes_
private com.google.protobuf.UInt32Value perConnectionBufferLimitBytes_
-
LB_POLICY_FIELD_NUMBER
public static final int LB_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
lbPolicy_
private int lbPolicy_
-
LOAD_ASSIGNMENT_FIELD_NUMBER
public static final int LOAD_ASSIGNMENT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
loadAssignment_
private ClusterLoadAssignment loadAssignment_
-
HEALTH_CHECKS_FIELD_NUMBER
public static final int HEALTH_CHECKS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
healthChecks_
private java.util.List<HealthCheck> healthChecks_
-
MAX_REQUESTS_PER_CONNECTION_FIELD_NUMBER
public static final int MAX_REQUESTS_PER_CONNECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
maxRequestsPerConnection_
private com.google.protobuf.UInt32Value maxRequestsPerConnection_
-
CIRCUIT_BREAKERS_FIELD_NUMBER
public static final int CIRCUIT_BREAKERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
circuitBreakers_
private CircuitBreakers circuitBreakers_
-
UPSTREAM_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int UPSTREAM_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
upstreamHttpProtocolOptions_
private UpstreamHttpProtocolOptions upstreamHttpProtocolOptions_
-
COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
commonHttpProtocolOptions_
private HttpProtocolOptions commonHttpProtocolOptions_
-
HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
httpProtocolOptions_
private Http1ProtocolOptions httpProtocolOptions_
-
HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
http2ProtocolOptions_
private Http2ProtocolOptions http2ProtocolOptions_
-
TYPED_EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int TYPED_EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
typedExtensionProtocolOptions_
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any> typedExtensionProtocolOptions_
-
DNS_REFRESH_RATE_FIELD_NUMBER
public static final int DNS_REFRESH_RATE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
dnsRefreshRate_
private com.google.protobuf.Duration dnsRefreshRate_
-
DNS_FAILURE_REFRESH_RATE_FIELD_NUMBER
public static final int DNS_FAILURE_REFRESH_RATE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
dnsFailureRefreshRate_
private Cluster.RefreshRate dnsFailureRefreshRate_
-
RESPECT_DNS_TTL_FIELD_NUMBER
public static final int RESPECT_DNS_TTL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
respectDnsTtl_
private boolean respectDnsTtl_
-
DNS_LOOKUP_FAMILY_FIELD_NUMBER
public static final int DNS_LOOKUP_FAMILY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
dnsLookupFamily_
private int dnsLookupFamily_
-
DNS_RESOLVERS_FIELD_NUMBER
public static final int DNS_RESOLVERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
dnsResolvers_
private java.util.List<Address> dnsResolvers_
-
USE_TCP_FOR_DNS_LOOKUPS_FIELD_NUMBER
public static final int USE_TCP_FOR_DNS_LOOKUPS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
useTcpForDnsLookups_
private boolean useTcpForDnsLookups_
-
DNS_RESOLUTION_CONFIG_FIELD_NUMBER
public static final int DNS_RESOLUTION_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
dnsResolutionConfig_
private DnsResolutionConfig dnsResolutionConfig_
-
TYPED_DNS_RESOLVER_CONFIG_FIELD_NUMBER
public static final int TYPED_DNS_RESOLVER_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
typedDnsResolverConfig_
private TypedExtensionConfig typedDnsResolverConfig_
-
WAIT_FOR_WARM_ON_INIT_FIELD_NUMBER
public static final int WAIT_FOR_WARM_ON_INIT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
waitForWarmOnInit_
private com.google.protobuf.BoolValue waitForWarmOnInit_
-
OUTLIER_DETECTION_FIELD_NUMBER
public static final int OUTLIER_DETECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
outlierDetection_
private OutlierDetection outlierDetection_
-
CLEANUP_INTERVAL_FIELD_NUMBER
public static final int CLEANUP_INTERVAL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
cleanupInterval_
private com.google.protobuf.Duration cleanupInterval_
-
UPSTREAM_BIND_CONFIG_FIELD_NUMBER
public static final int UPSTREAM_BIND_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
upstreamBindConfig_
private BindConfig upstreamBindConfig_
-
LB_SUBSET_CONFIG_FIELD_NUMBER
public static final int LB_SUBSET_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
lbSubsetConfig_
private Cluster.LbSubsetConfig lbSubsetConfig_
-
RING_HASH_LB_CONFIG_FIELD_NUMBER
public static final int RING_HASH_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MAGLEV_LB_CONFIG_FIELD_NUMBER
public static final int MAGLEV_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ORIGINAL_DST_LB_CONFIG_FIELD_NUMBER
public static final int ORIGINAL_DST_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LEAST_REQUEST_LB_CONFIG_FIELD_NUMBER
public static final int LEAST_REQUEST_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ROUND_ROBIN_LB_CONFIG_FIELD_NUMBER
public static final int ROUND_ROBIN_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
COMMON_LB_CONFIG_FIELD_NUMBER
public static final int COMMON_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
commonLbConfig_
private Cluster.CommonLbConfig commonLbConfig_
-
TRANSPORT_SOCKET_FIELD_NUMBER
public static final int TRANSPORT_SOCKET_FIELD_NUMBER
- See Also:
- Constant Field Values
-
transportSocket_
private TransportSocket transportSocket_
-
METADATA_FIELD_NUMBER
public static final int METADATA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
metadata_
private Metadata metadata_
-
PROTOCOL_SELECTION_FIELD_NUMBER
public static final int PROTOCOL_SELECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
protocolSelection_
private int protocolSelection_
-
UPSTREAM_CONNECTION_OPTIONS_FIELD_NUMBER
public static final int UPSTREAM_CONNECTION_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
upstreamConnectionOptions_
private UpstreamConnectionOptions upstreamConnectionOptions_
-
CLOSE_CONNECTIONS_ON_HOST_HEALTH_FAILURE_FIELD_NUMBER
public static final int CLOSE_CONNECTIONS_ON_HOST_HEALTH_FAILURE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
closeConnectionsOnHostHealthFailure_
private boolean closeConnectionsOnHostHealthFailure_
-
IGNORE_HEALTH_ON_HOST_REMOVAL_FIELD_NUMBER
public static final int IGNORE_HEALTH_ON_HOST_REMOVAL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ignoreHealthOnHostRemoval_
private boolean ignoreHealthOnHostRemoval_
-
FILTERS_FIELD_NUMBER
public static final int FILTERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
filters_
private java.util.List<Filter> filters_
-
LOAD_BALANCING_POLICY_FIELD_NUMBER
public static final int LOAD_BALANCING_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
loadBalancingPolicy_
private LoadBalancingPolicy loadBalancingPolicy_
-
LRS_SERVER_FIELD_NUMBER
public static final int LRS_SERVER_FIELD_NUMBER
- See Also:
- Constant Field Values
-
lrsServer_
private ConfigSource lrsServer_
-
TRACK_TIMEOUT_BUDGETS_FIELD_NUMBER
public static final int TRACK_TIMEOUT_BUDGETS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
trackTimeoutBudgets_
private boolean trackTimeoutBudgets_
-
UPSTREAM_CONFIG_FIELD_NUMBER
public static final int UPSTREAM_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
upstreamConfig_
private TypedExtensionConfig upstreamConfig_
-
TRACK_CLUSTER_STATS_FIELD_NUMBER
public static final int TRACK_CLUSTER_STATS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
trackClusterStats_
private TrackClusterStats trackClusterStats_
-
PRECONNECT_POLICY_FIELD_NUMBER
public static final int PRECONNECT_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
preconnectPolicy_
private Cluster.PreconnectPolicy preconnectPolicy_
-
CONNECTION_POOL_PER_DOWNSTREAM_CONNECTION_FIELD_NUMBER
public static final int CONNECTION_POOL_PER_DOWNSTREAM_CONNECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
connectionPoolPerDownstreamConnection_
private boolean connectionPoolPerDownstreamConnection_
-
memoizedIsInitialized
private byte memoizedIsInitialized
-
DEFAULT_INSTANCE
private static final Cluster DEFAULT_INSTANCE
-
PARSER
private static final com.google.protobuf.Parser<Cluster> PARSER
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetMapFieldReflection
protected com.google.protobuf.MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
- Overrides:
internalGetMapFieldReflection
in classcom.google.protobuf.GeneratedMessage
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage
-
getClusterDiscoveryTypeCase
public Cluster.ClusterDiscoveryTypeCase getClusterDiscoveryTypeCase()
- Specified by:
getClusterDiscoveryTypeCase
in interfaceClusterOrBuilder
-
getLbConfigCase
public Cluster.LbConfigCase getLbConfigCase()
- Specified by:
getLbConfigCase
in interfaceClusterOrBuilder
-
getTransportSocketMatchesList
public java.util.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. If a match is not found, the search continues in :ref:`LocalityLbEndpoints.Metadata <envoy_v3_api_field_config.endpoint.v3.LocalityLbEndpoints.metadata>`. The first :ref:`match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under ``envoy.transport_socket_match`` having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under ``envoy.transport_socket_match`` does not match any ``TransportSocketMatch``, the locality metadata is then checked for a match. Barring any matches in the endpoint or locality metadata, the socket configuration fallbacks to use the ``tls_context`` or ``transport_socket`` specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding ``TransportSocketMatch`` in this field. Other client Envoys receive CDS without ``transport_socket_match`` set, and still send plain text traffic to the same cluster. This field can be used to specify custom transport socket configurations for health checks by adding matching key/value pairs in a health check's :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
- Specified by:
getTransportSocketMatchesList
in interfaceClusterOrBuilder
-
getTransportSocketMatchesOrBuilderList
public java.util.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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. If a match is not found, the search continues in :ref:`LocalityLbEndpoints.Metadata <envoy_v3_api_field_config.endpoint.v3.LocalityLbEndpoints.metadata>`. The first :ref:`match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under ``envoy.transport_socket_match`` having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under ``envoy.transport_socket_match`` does not match any ``TransportSocketMatch``, the locality metadata is then checked for a match. Barring any matches in the endpoint or locality metadata, the socket configuration fallbacks to use the ``tls_context`` or ``transport_socket`` specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding ``TransportSocketMatch`` in this field. Other client Envoys receive CDS without ``transport_socket_match`` set, and still send plain text traffic to the same cluster. This field can be used to specify custom transport socket configurations for health checks by adding matching key/value pairs in a health check's :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
- Specified by:
getTransportSocketMatchesOrBuilderList
in interfaceClusterOrBuilder
-
getTransportSocketMatchesCount
public int getTransportSocketMatchesCount()
Configuration to use different transport sockets for different endpoints. The entry of ``envoy.transport_socket_match`` in the :ref:`LbEndpoint.Metadata <envoy_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. If a match is not found, the search continues in :ref:`LocalityLbEndpoints.Metadata <envoy_v3_api_field_config.endpoint.v3.LocalityLbEndpoints.metadata>`. The first :ref:`match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under ``envoy.transport_socket_match`` having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under ``envoy.transport_socket_match`` does not match any ``TransportSocketMatch``, the locality metadata is then checked for a match. Barring any matches in the endpoint or locality metadata, the socket configuration fallbacks to use the ``tls_context`` or ``transport_socket`` specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding ``TransportSocketMatch`` in this field. Other client Envoys receive CDS without ``transport_socket_match`` set, and still send plain text traffic to the same cluster. This field can be used to specify custom transport socket configurations for health checks by adding matching key/value pairs in a health check's :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
- Specified by:
getTransportSocketMatchesCount
in interfaceClusterOrBuilder
-
getTransportSocketMatches
public Cluster.TransportSocketMatch getTransportSocketMatches(int index)
Configuration to use different transport sockets for different endpoints. The entry of ``envoy.transport_socket_match`` in the :ref:`LbEndpoint.Metadata <envoy_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. If a match is not found, the search continues in :ref:`LocalityLbEndpoints.Metadata <envoy_v3_api_field_config.endpoint.v3.LocalityLbEndpoints.metadata>`. The first :ref:`match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under ``envoy.transport_socket_match`` having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under ``envoy.transport_socket_match`` does not match any ``TransportSocketMatch``, the locality metadata is then checked for a match. Barring any matches in the endpoint or locality metadata, the socket configuration fallbacks to use the ``tls_context`` or ``transport_socket`` specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding ``TransportSocketMatch`` in this field. Other client Envoys receive CDS without ``transport_socket_match`` set, and still send plain text traffic to the same cluster. This field can be used to specify custom transport socket configurations for health checks by adding matching key/value pairs in a health check's :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
- Specified by:
getTransportSocketMatches
in interfaceClusterOrBuilder
-
getTransportSocketMatchesOrBuilder
public 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_v3_api_field_config.endpoint.v3.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. If a match is not found, the search continues in :ref:`LocalityLbEndpoints.Metadata <envoy_v3_api_field_config.endpoint.v3.LocalityLbEndpoints.metadata>`. The first :ref:`match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under ``envoy.transport_socket_match`` having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_v3_api_msg_config.cluster.v3.Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under ``envoy.transport_socket_match`` does not match any ``TransportSocketMatch``, the locality metadata is then checked for a match. Barring any matches in the endpoint or locality metadata, the socket configuration fallbacks to use the ``tls_context`` or ``transport_socket`` specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding ``TransportSocketMatch`` in this field. Other client Envoys receive CDS without ``transport_socket_match`` set, and still send plain text traffic to the same cluster. This field can be used to specify custom transport socket configurations for health checks by adding matching key/value pairs in a health check's :ref:`transport socket match criteria <envoy_v3_api_field_config.core.v3.HealthCheck.transport_socket_match_criteria>` field. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
repeated .envoy.config.cluster.v3.Cluster.TransportSocketMatch transport_socket_matches = 43;
- Specified by:
getTransportSocketMatchesOrBuilder
in interfaceClusterOrBuilder
-
getName
public java.lang.String getName()
Supplies the name of the cluster which must be unique across all clusters. The cluster name is used when emitting :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name <envoy_v3_api_field_config.cluster.v3.Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }
- Specified by:
getName
in interfaceClusterOrBuilder
- Returns:
- The name.
-
getNameBytes
public 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_v3_api_field_config.cluster.v3.Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }
- Specified by:
getNameBytes
in interfaceClusterOrBuilder
- Returns:
- The bytes for name.
-
getAltStatName
public java.lang.String getAltStatName()
An optional alternative to the cluster name to be used for observability. This name is used emitting stats for the cluster and access logging the cluster name. This will appear as additional information in configuration dumps of a cluster's current status as :ref:`observability_name <envoy_v3_api_field_admin.v3.ClusterStatus.observability_name>` and as an additional tag "upstream_cluster.name" while tracing. Note: Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getAltStatName
in interfaceClusterOrBuilder
- Returns:
- The altStatName.
-
getAltStatNameBytes
public com.google.protobuf.ByteString getAltStatNameBytes()
An optional alternative to the cluster name to be used for observability. This name is used emitting stats for the cluster and access logging the cluster name. This will appear as additional information in configuration dumps of a cluster's current status as :ref:`observability_name <envoy_v3_api_field_admin.v3.ClusterStatus.observability_name>` and as an additional tag "upstream_cluster.name" while tracing. Note: Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28 [(.udpa.annotations.field_migrate) = { ... }
- Specified by:
getAltStatNameBytes
in interfaceClusterOrBuilder
- Returns:
- The bytes for altStatName.
-
hasType
public boolean hasType()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.
.envoy.config.cluster.v3.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
- Specified by:
hasType
in interfaceClusterOrBuilder
- Returns:
- Whether the type field is set.
-
getTypeValue
public int getTypeValue()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.
.envoy.config.cluster.v3.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
- Specified by:
getTypeValue
in interfaceClusterOrBuilder
- Returns:
- The enum numeric value on the wire for type.
-
getType
public Cluster.DiscoveryType getType()
The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.
.envoy.config.cluster.v3.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
- Specified by:
getType
in interfaceClusterOrBuilder
- Returns:
- The type.
-
hasClusterType
public boolean hasClusterType()
The custom cluster type.
.envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
- Specified by:
hasClusterType
in interfaceClusterOrBuilder
- Returns:
- Whether the clusterType field is set.
-
getClusterType
public Cluster.CustomClusterType getClusterType()
The custom cluster type.
.envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
- Specified by:
getClusterType
in interfaceClusterOrBuilder
- Returns:
- The clusterType.
-
getClusterTypeOrBuilder
public Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder()
The custom cluster type.
.envoy.config.cluster.v3.Cluster.CustomClusterType cluster_type = 38;
- Specified by:
getClusterTypeOrBuilder
in interfaceClusterOrBuilder
-
hasEdsClusterConfig
public boolean hasEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.config.cluster.v3.Cluster.EdsClusterConfig eds_cluster_config = 3;
- Specified by:
hasEdsClusterConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the edsClusterConfig field is set.
-
getEdsClusterConfig
public Cluster.EdsClusterConfig getEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.config.cluster.v3.Cluster.EdsClusterConfig eds_cluster_config = 3;
- Specified by:
getEdsClusterConfig
in interfaceClusterOrBuilder
- Returns:
- The edsClusterConfig.
-
getEdsClusterConfigOrBuilder
public Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder()
Configuration to use for EDS updates for the Cluster.
.envoy.config.cluster.v3.Cluster.EdsClusterConfig eds_cluster_config = 3;
- Specified by:
getEdsClusterConfigOrBuilder
in interfaceClusterOrBuilder
-
hasConnectTimeout
public boolean hasConnectTimeout()
The timeout for new network connections to hosts in the cluster. If not set, a default value of 5s will be used.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
- Specified by:
hasConnectTimeout
in interfaceClusterOrBuilder
- Returns:
- Whether the connectTimeout field is set.
-
getConnectTimeout
public com.google.protobuf.Duration getConnectTimeout()
The timeout for new network connections to hosts in the cluster. If not set, a default value of 5s will be used.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
- Specified by:
getConnectTimeout
in interfaceClusterOrBuilder
- Returns:
- The connectTimeout.
-
getConnectTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder()
The timeout for new network connections to hosts in the cluster. If not set, a default value of 5s will be used.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
- Specified by:
getConnectTimeoutOrBuilder
in interfaceClusterOrBuilder
-
hasPerConnectionBufferLimitBytes
public boolean hasPerConnectionBufferLimitBytes()
Soft limit on size of the cluster’s connections read and write buffers. If unspecified, an implementation defined default is applied (1MiB).
.google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5 [(.udpa.annotations.security) = { ... }
- Specified by:
hasPerConnectionBufferLimitBytes
in interfaceClusterOrBuilder
- Returns:
- Whether the perConnectionBufferLimitBytes field is set.
-
getPerConnectionBufferLimitBytes
public com.google.protobuf.UInt32Value getPerConnectionBufferLimitBytes()
Soft limit on size of the cluster’s connections read and write buffers. If unspecified, an implementation defined default is applied (1MiB).
.google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5 [(.udpa.annotations.security) = { ... }
- Specified by:
getPerConnectionBufferLimitBytes
in interfaceClusterOrBuilder
- Returns:
- The perConnectionBufferLimitBytes.
-
getPerConnectionBufferLimitBytesOrBuilder
public 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 [(.udpa.annotations.security) = { ... }
- Specified by:
getPerConnectionBufferLimitBytesOrBuilder
in interfaceClusterOrBuilder
-
getLbPolicyValue
public int getLbPolicyValue()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.
.envoy.config.cluster.v3.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
- Specified by:
getLbPolicyValue
in interfaceClusterOrBuilder
- Returns:
- The enum numeric value on the wire for lbPolicy.
-
getLbPolicy
public Cluster.LbPolicy getLbPolicy()
The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.
.envoy.config.cluster.v3.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
- Specified by:
getLbPolicy
in interfaceClusterOrBuilder
- Returns:
- The lbPolicy.
-
hasLoadAssignment
public boolean hasLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the ``hosts`` field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
.envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
- Specified by:
hasLoadAssignment
in interfaceClusterOrBuilder
- Returns:
- Whether the loadAssignment field is set.
-
getLoadAssignment
public ClusterLoadAssignment getLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the ``hosts`` field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
.envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
- Specified by:
getLoadAssignment
in interfaceClusterOrBuilder
- Returns:
- The loadAssignment.
-
getLoadAssignmentOrBuilder
public ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder()
Setting this is required for specifying members of :ref:`STATIC<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the ``hosts`` field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_v3_api_msg_config.endpoint.v3.ClusterLoadAssignment>`.
.envoy.config.endpoint.v3.ClusterLoadAssignment load_assignment = 33;
- Specified by:
getLoadAssignmentOrBuilder
in interfaceClusterOrBuilder
-
getHealthChecksList
public java.util.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.config.core.v3.HealthCheck health_checks = 8;
- Specified by:
getHealthChecksList
in interfaceClusterOrBuilder
-
getHealthChecksOrBuilderList
public java.util.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.config.core.v3.HealthCheck health_checks = 8;
- Specified by:
getHealthChecksOrBuilderList
in interfaceClusterOrBuilder
-
getHealthChecksCount
public int getHealthChecksCount()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.config.core.v3.HealthCheck health_checks = 8;
- Specified by:
getHealthChecksCount
in interfaceClusterOrBuilder
-
getHealthChecks
public HealthCheck getHealthChecks(int index)
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.config.core.v3.HealthCheck health_checks = 8;
- Specified by:
getHealthChecks
in interfaceClusterOrBuilder
-
getHealthChecksOrBuilder
public 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.config.core.v3.HealthCheck health_checks = 8;
- Specified by:
getHealthChecksOrBuilder
in interfaceClusterOrBuilder
-
hasMaxRequestsPerConnection
@Deprecated public boolean hasMaxRequestsPerConnection()
Deprecated.envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated. See envoy/config/cluster/v3/cluster.proto;l=877Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive. .. attention:: This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
.google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasMaxRequestsPerConnection
in interfaceClusterOrBuilder
- Returns:
- Whether the maxRequestsPerConnection field is set.
-
getMaxRequestsPerConnection
@Deprecated public com.google.protobuf.UInt32Value getMaxRequestsPerConnection()
Deprecated.envoy.config.cluster.v3.Cluster.max_requests_per_connection is deprecated. See envoy/config/cluster/v3/cluster.proto;l=877Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive. .. attention:: This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
.google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMaxRequestsPerConnection
in interfaceClusterOrBuilder
- Returns:
- The maxRequestsPerConnection.
-
getMaxRequestsPerConnectionOrBuilder
@Deprecated public com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder()
Deprecated.Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive. .. attention:: This field has been deprecated in favor of the :ref:`max_requests_per_connection <envoy_v3_api_field_config.core.v3.HttpProtocolOptions.max_requests_per_connection>` field.
.google.protobuf.UInt32Value max_requests_per_connection = 9 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getMaxRequestsPerConnectionOrBuilder
in interfaceClusterOrBuilder
-
hasCircuitBreakers
public boolean hasCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.config.cluster.v3.CircuitBreakers circuit_breakers = 10;
- Specified by:
hasCircuitBreakers
in interfaceClusterOrBuilder
- Returns:
- Whether the circuitBreakers field is set.
-
getCircuitBreakers
public CircuitBreakers getCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.config.cluster.v3.CircuitBreakers circuit_breakers = 10;
- Specified by:
getCircuitBreakers
in interfaceClusterOrBuilder
- Returns:
- The circuitBreakers.
-
getCircuitBreakersOrBuilder
public CircuitBreakersOrBuilder getCircuitBreakersOrBuilder()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.config.cluster.v3.CircuitBreakers circuit_breakers = 10;
- Specified by:
getCircuitBreakersOrBuilder
in interfaceClusterOrBuilder
-
hasUpstreamHttpProtocolOptions
@Deprecated public boolean hasUpstreamHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=893HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions. This has been deprecated in favor of :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. upstream_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasUpstreamHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- Whether the upstreamHttpProtocolOptions field is set.
-
getUpstreamHttpProtocolOptions
@Deprecated public UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.upstream_http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=893HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions. This has been deprecated in favor of :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. upstream_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getUpstreamHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- The upstreamHttpProtocolOptions.
-
getUpstreamHttpProtocolOptionsOrBuilder
@Deprecated public UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder()
Deprecated.HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions. This has been deprecated in favor of :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. upstream_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getUpstreamHttpProtocolOptionsOrBuilder
in interfaceClusterOrBuilder
-
hasCommonHttpProtocolOptions
@Deprecated public boolean hasCommonHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=906Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests. This has been deprecated in favor of :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. common_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasCommonHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- Whether the commonHttpProtocolOptions field is set.
-
getCommonHttpProtocolOptions
@Deprecated public HttpProtocolOptions getCommonHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.common_http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=906Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests. This has been deprecated in favor of :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. common_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getCommonHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- The commonHttpProtocolOptions.
-
getCommonHttpProtocolOptionsOrBuilder
@Deprecated public HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
Deprecated.Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests. This has been deprecated in favor of :ref:`common_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.common_http_protocol_options>` in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. common_http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.HttpProtocolOptions common_http_protocol_options = 29 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getCommonHttpProtocolOptionsOrBuilder
in interfaceClusterOrBuilder
-
hasHttpProtocolOptions
@Deprecated public boolean hasHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=917Additional options when handling HTTP1 requests. This has been deprecated in favor of http_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- Whether the httpProtocolOptions field is set.
-
getHttpProtocolOptions
@Deprecated public Http1ProtocolOptions getHttpProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=917Additional options when handling HTTP1 requests. This has been deprecated in favor of http_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getHttpProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- The httpProtocolOptions.
-
getHttpProtocolOptionsOrBuilder
@Deprecated public Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
Deprecated.Additional options when handling HTTP1 requests. This has been deprecated in favor of http_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http1ProtocolOptions http_protocol_options = 13 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getHttpProtocolOptionsOrBuilder
in interfaceClusterOrBuilder
-
hasHttp2ProtocolOptions
@Deprecated public boolean hasHttp2ProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=933Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, ``http2_protocol_options`` must be specified. As an aside this allows HTTP/2 connections to happen over plain text. This has been deprecated in favor of http2_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http2_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
- Specified by:
hasHttp2ProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- Whether the http2ProtocolOptions field is set.
-
getHttp2ProtocolOptions
@Deprecated public Http2ProtocolOptions getHttp2ProtocolOptions()
Deprecated.envoy.config.cluster.v3.Cluster.http2_protocol_options is deprecated. See envoy/config/cluster/v3/cluster.proto;l=933Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, ``http2_protocol_options`` must be specified. As an aside this allows HTTP/2 connections to happen over plain text. This has been deprecated in favor of http2_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http2_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
- Specified by:
getHttp2ProtocolOptions
in interfaceClusterOrBuilder
- Returns:
- The http2ProtocolOptions.
-
getHttp2ProtocolOptionsOrBuilder
@Deprecated public Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
Deprecated.Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, ``http2_protocol_options`` must be specified. As an aside this allows HTTP/2 connections to happen over plain text. This has been deprecated in favor of http2_protocol_options fields in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http2_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`. See :ref:`upstream_http_protocol_options <envoy_v3_api_field_extensions.upstreams.http.v3.HttpProtocolOptions.upstream_http_protocol_options>` for example usage.
.envoy.config.core.v3.Http2ProtocolOptions http2_protocol_options = 14 [deprecated = true, (.udpa.annotations.security) = { ... }
- Specified by:
getHttp2ProtocolOptionsOrBuilder
in interfaceClusterOrBuilder
-
internalGetTypedExtensionProtocolOptions
private com.google.protobuf.MapField<java.lang.String,com.google.protobuf.Any> internalGetTypedExtensionProtocolOptions()
-
getTypedExtensionProtocolOptionsCount
public int getTypedExtensionProtocolOptionsCount()
Description copied from interface:ClusterOrBuilder
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options. [#next-major-version: make this a list of typed extensions.]
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
- Specified by:
getTypedExtensionProtocolOptionsCount
in interfaceClusterOrBuilder
-
containsTypedExtensionProtocolOptions
public boolean containsTypedExtensionProtocolOptions(java.lang.String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options. [#next-major-version: make this a list of typed extensions.]
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
- Specified by:
containsTypedExtensionProtocolOptions
in interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptions
@Deprecated public java.util.Map<java.lang.String,com.google.protobuf.Any> getTypedExtensionProtocolOptions()
Deprecated.UsegetTypedExtensionProtocolOptionsMap()
instead.- Specified by:
getTypedExtensionProtocolOptions
in interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsMap
public java.util.Map<java.lang.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. [#next-major-version: make this a list of typed extensions.]
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
- Specified by:
getTypedExtensionProtocolOptionsMap
in interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsOrDefault
public com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault(java.lang.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. [#next-major-version: make this a list of typed extensions.]
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
- Specified by:
getTypedExtensionProtocolOptionsOrDefault
in interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsOrThrow
public com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow(java.lang.String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options. [#next-major-version: make this a list of typed extensions.]
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
- Specified by:
getTypedExtensionProtocolOptionsOrThrow
in interfaceClusterOrBuilder
-
hasDnsRefreshRate
public boolean hasDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
- Specified by:
hasDnsRefreshRate
in interfaceClusterOrBuilder
- Returns:
- Whether the dnsRefreshRate field is set.
-
getDnsRefreshRate
public com.google.protobuf.Duration getDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
- Specified by:
getDnsRefreshRate
in interfaceClusterOrBuilder
- Returns:
- The dnsRefreshRate.
-
getDnsRefreshRateOrBuilder
public com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
- Specified by:
getDnsRefreshRateOrBuilder
in interfaceClusterOrBuilder
-
hasDnsFailureRefreshRate
public boolean hasDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.config.cluster.v3.Cluster.RefreshRate dns_failure_refresh_rate = 44;
- Specified by:
hasDnsFailureRefreshRate
in interfaceClusterOrBuilder
- Returns:
- Whether the dnsFailureRefreshRate field is set.
-
getDnsFailureRefreshRate
public Cluster.RefreshRate getDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.config.cluster.v3.Cluster.RefreshRate dns_failure_refresh_rate = 44;
- Specified by:
getDnsFailureRefreshRate
in interfaceClusterOrBuilder
- Returns:
- The dnsFailureRefreshRate.
-
getDnsFailureRefreshRateOrBuilder
public Cluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.config.cluster.v3.Cluster.RefreshRate dns_failure_refresh_rate = 44;
- Specified by:
getDnsFailureRefreshRateOrBuilder
in interfaceClusterOrBuilder
-
getRespectDnsTtl
public 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;
- Specified by:
getRespectDnsTtl
in interfaceClusterOrBuilder
- Returns:
- The respectDnsTtl.
-
getDnsLookupFamilyValue
public int getDnsLookupFamilyValue()
The DNS IP address resolution policy. If this setting is not specified, the value defaults to :ref:`AUTO<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DnsLookupFamily.AUTO>`.
.envoy.config.cluster.v3.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
- Specified by:
getDnsLookupFamilyValue
in interfaceClusterOrBuilder
- Returns:
- The enum numeric value on the wire for dnsLookupFamily.
-
getDnsLookupFamily
public Cluster.DnsLookupFamily getDnsLookupFamily()
The DNS IP address resolution policy. If this setting is not specified, the value defaults to :ref:`AUTO<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DnsLookupFamily.AUTO>`.
.envoy.config.cluster.v3.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
- Specified by:
getDnsLookupFamily
in interfaceClusterOrBuilder
- Returns:
- The dnsLookupFamily.
-
getDnsResolversList
@Deprecated public java.util.List<Address> getDnsResolversList()
Deprecated.If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolversList
in interfaceClusterOrBuilder
-
getDnsResolversOrBuilderList
@Deprecated public java.util.List<? extends AddressOrBuilder> getDnsResolversOrBuilderList()
Deprecated.If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolversOrBuilderList
in interfaceClusterOrBuilder
-
getDnsResolversCount
@Deprecated public int getDnsResolversCount()
Deprecated.If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolversCount
in interfaceClusterOrBuilder
-
getDnsResolvers
@Deprecated public Address getDnsResolvers(int index)
Deprecated.If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolvers
in interfaceClusterOrBuilder
-
getDnsResolversOrBuilder
@Deprecated public AddressOrBuilder getDnsResolversOrBuilder(int index)
Deprecated.If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
repeated .envoy.config.core.v3.Address dns_resolvers = 18 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolversOrBuilder
in interfaceClusterOrBuilder
-
getUseTcpForDnsLookups
@Deprecated public boolean getUseTcpForDnsLookups()
Deprecated.envoy.config.cluster.v3.Cluster.use_tcp_for_dns_lookups is deprecated. See envoy/config/cluster/v3/cluster.proto;l=996Always use TCP queries instead of UDP queries for DNS lookups. This field is deprecated in favor of ``dns_resolution_config`` which aggregates all of the DNS resolver configuration in a single message.
bool use_tcp_for_dns_lookups = 45 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getUseTcpForDnsLookups
in interfaceClusterOrBuilder
- Returns:
- The useTcpForDnsLookups.
-
hasDnsResolutionConfig
@Deprecated public boolean hasDnsResolutionConfig()
Deprecated.envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated. See envoy/config/cluster/v3/cluster.proto;l=1002DNS resolution configuration which includes the underlying dns resolver addresses and options. This field is deprecated in favor of :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
.envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
hasDnsResolutionConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the dnsResolutionConfig field is set.
-
getDnsResolutionConfig
@Deprecated public DnsResolutionConfig getDnsResolutionConfig()
Deprecated.envoy.config.cluster.v3.Cluster.dns_resolution_config is deprecated. See envoy/config/cluster/v3/cluster.proto;l=1002DNS resolution configuration which includes the underlying dns resolver addresses and options. This field is deprecated in favor of :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
.envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolutionConfig
in interfaceClusterOrBuilder
- Returns:
- The dnsResolutionConfig.
-
getDnsResolutionConfigOrBuilder
@Deprecated public DnsResolutionConfigOrBuilder getDnsResolutionConfigOrBuilder()
Deprecated.DNS resolution configuration which includes the underlying dns resolver addresses and options. This field is deprecated in favor of :ref:`typed_dns_resolver_config <envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
.envoy.config.core.v3.DnsResolutionConfig dns_resolution_config = 53 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getDnsResolutionConfigOrBuilder
in interfaceClusterOrBuilder
-
hasTypedDnsResolverConfig
public boolean hasTypedDnsResolverConfig()
DNS resolver type configuration extension. This extension can be used to configure c-ares, apple, or any other DNS resolver types and the related parameters. For example, an object of :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>` can be packed into this ``typed_dns_resolver_config``. This configuration replaces the :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>` configuration. During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists, when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``. When ``typed_dns_resolver_config`` is missing, the default behavior is in place. [#extension-category: envoy.network.dns_resolver]
.envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
- Specified by:
hasTypedDnsResolverConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the typedDnsResolverConfig field is set.
-
getTypedDnsResolverConfig
public TypedExtensionConfig getTypedDnsResolverConfig()
DNS resolver type configuration extension. This extension can be used to configure c-ares, apple, or any other DNS resolver types and the related parameters. For example, an object of :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>` can be packed into this ``typed_dns_resolver_config``. This configuration replaces the :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>` configuration. During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists, when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``. When ``typed_dns_resolver_config`` is missing, the default behavior is in place. [#extension-category: envoy.network.dns_resolver]
.envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
- Specified by:
getTypedDnsResolverConfig
in interfaceClusterOrBuilder
- Returns:
- The typedDnsResolverConfig.
-
getTypedDnsResolverConfigOrBuilder
public TypedExtensionConfigOrBuilder getTypedDnsResolverConfigOrBuilder()
DNS resolver type configuration extension. This extension can be used to configure c-ares, apple, or any other DNS resolver types and the related parameters. For example, an object of :ref:`CaresDnsResolverConfig <envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>` can be packed into this ``typed_dns_resolver_config``. This configuration replaces the :ref:`dns_resolution_config <envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>` configuration. During the transition period when both ``dns_resolution_config`` and ``typed_dns_resolver_config`` exists, when ``typed_dns_resolver_config`` is in place, Envoy will use it and ignore ``dns_resolution_config``. When ``typed_dns_resolver_config`` is missing, the default behavior is in place. [#extension-category: envoy.network.dns_resolver]
.envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 55;
- Specified by:
getTypedDnsResolverConfigOrBuilder
in interfaceClusterOrBuilder
-
hasWaitForWarmOnInit
public boolean hasWaitForWarmOnInit()
Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, or :ref:`Redis Cluster<arch_overview_redis>`. If true, cluster readiness blocks on warm-up. If false, the cluster will complete initialization whether or not warm-up has completed. Defaults to true.
.google.protobuf.BoolValue wait_for_warm_on_init = 54;
- Specified by:
hasWaitForWarmOnInit
in interfaceClusterOrBuilder
- Returns:
- Whether the waitForWarmOnInit field is set.
-
getWaitForWarmOnInit
public com.google.protobuf.BoolValue getWaitForWarmOnInit()
Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, or :ref:`Redis Cluster<arch_overview_redis>`. If true, cluster readiness blocks on warm-up. If false, the cluster will complete initialization whether or not warm-up has completed. Defaults to true.
.google.protobuf.BoolValue wait_for_warm_on_init = 54;
- Specified by:
getWaitForWarmOnInit
in interfaceClusterOrBuilder
- Returns:
- The waitForWarmOnInit.
-
getWaitForWarmOnInitOrBuilder
public com.google.protobuf.BoolValueOrBuilder getWaitForWarmOnInitOrBuilder()
Optional configuration for having cluster readiness block on warm-up. Currently, only applicable for :ref:`STRICT_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.LOGICAL_DNS>`, or :ref:`Redis Cluster<arch_overview_redis>`. If true, cluster readiness blocks on warm-up. If false, the cluster will complete initialization whether or not warm-up has completed. Defaults to true.
.google.protobuf.BoolValue wait_for_warm_on_init = 54;
- Specified by:
getWaitForWarmOnInitOrBuilder
in interfaceClusterOrBuilder
-
hasOutlierDetection
public boolean hasOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster. Each of the configuration values can be overridden via :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
.envoy.config.cluster.v3.OutlierDetection outlier_detection = 19;
- Specified by:
hasOutlierDetection
in interfaceClusterOrBuilder
- Returns:
- Whether the outlierDetection field is set.
-
getOutlierDetection
public OutlierDetection getOutlierDetection()
If specified, outlier detection will be enabled for this upstream cluster. Each of the configuration values can be overridden via :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
.envoy.config.cluster.v3.OutlierDetection outlier_detection = 19;
- Specified by:
getOutlierDetection
in interfaceClusterOrBuilder
- Returns:
- The outlierDetection.
-
getOutlierDetectionOrBuilder
public 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.config.cluster.v3.OutlierDetection outlier_detection = 19;
- Specified by:
getOutlierDetectionOrBuilder
in interfaceClusterOrBuilder
-
hasCleanupInterval
public boolean hasCleanupInterval()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
- Specified by:
hasCleanupInterval
in interfaceClusterOrBuilder
- Returns:
- Whether the cleanupInterval field is set.
-
getCleanupInterval
public com.google.protobuf.Duration getCleanupInterval()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
- Specified by:
getCleanupInterval
in interfaceClusterOrBuilder
- Returns:
- The cleanupInterval.
-
getCleanupIntervalOrBuilder
public com.google.protobuf.DurationOrBuilder getCleanupIntervalOrBuilder()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_v3_api_enum_value_config.cluster.v3.Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
- Specified by:
getCleanupIntervalOrBuilder
in interfaceClusterOrBuilder
-
hasUpstreamBindConfig
public boolean hasUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections. This overrides any bind_config specified in the bootstrap proto. If the address and port are empty, no bind will be performed.
.envoy.config.core.v3.BindConfig upstream_bind_config = 21;
- Specified by:
hasUpstreamBindConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the upstreamBindConfig field is set.
-
getUpstreamBindConfig
public BindConfig getUpstreamBindConfig()
Optional configuration used to bind newly established upstream connections. This overrides any bind_config specified in the bootstrap proto. If the address and port are empty, no bind will be performed.
.envoy.config.core.v3.BindConfig upstream_bind_config = 21;
- Specified by:
getUpstreamBindConfig
in interfaceClusterOrBuilder
- Returns:
- The upstreamBindConfig.
-
getUpstreamBindConfigOrBuilder
public 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.config.core.v3.BindConfig upstream_bind_config = 21;
- Specified by:
getUpstreamBindConfigOrBuilder
in interfaceClusterOrBuilder
-
hasLbSubsetConfig
public boolean hasLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
- Specified by:
hasLbSubsetConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the lbSubsetConfig field is set.
-
getLbSubsetConfig
public Cluster.LbSubsetConfig getLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
- Specified by:
getLbSubsetConfig
in interfaceClusterOrBuilder
- Returns:
- The lbSubsetConfig.
-
getLbSubsetConfigOrBuilder
public Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder()
Configuration for load balancing subsetting.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig lb_subset_config = 22;
- Specified by:
getLbSubsetConfigOrBuilder
in interfaceClusterOrBuilder
-
hasRingHashLbConfig
public boolean hasRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.config.cluster.v3.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
- Specified by:
hasRingHashLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the ringHashLbConfig field is set.
-
getRingHashLbConfig
public Cluster.RingHashLbConfig getRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.config.cluster.v3.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
- Specified by:
getRingHashLbConfig
in interfaceClusterOrBuilder
- Returns:
- The ringHashLbConfig.
-
getRingHashLbConfigOrBuilder
public Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder()
Optional configuration for the Ring Hash load balancing policy.
.envoy.config.cluster.v3.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
- Specified by:
getRingHashLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasMaglevLbConfig
public boolean hasMaglevLbConfig()
Optional configuration for the Maglev load balancing policy.
.envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
- Specified by:
hasMaglevLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the maglevLbConfig field is set.
-
getMaglevLbConfig
public Cluster.MaglevLbConfig getMaglevLbConfig()
Optional configuration for the Maglev load balancing policy.
.envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
- Specified by:
getMaglevLbConfig
in interfaceClusterOrBuilder
- Returns:
- The maglevLbConfig.
-
getMaglevLbConfigOrBuilder
public Cluster.MaglevLbConfigOrBuilder getMaglevLbConfigOrBuilder()
Optional configuration for the Maglev load balancing policy.
.envoy.config.cluster.v3.Cluster.MaglevLbConfig maglev_lb_config = 52;
- Specified by:
getMaglevLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasOriginalDstLbConfig
public boolean hasOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.config.cluster.v3.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
- Specified by:
hasOriginalDstLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the originalDstLbConfig field is set.
-
getOriginalDstLbConfig
public Cluster.OriginalDstLbConfig getOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.config.cluster.v3.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
- Specified by:
getOriginalDstLbConfig
in interfaceClusterOrBuilder
- Returns:
- The originalDstLbConfig.
-
getOriginalDstLbConfigOrBuilder
public Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder()
Optional configuration for the Original Destination load balancing policy.
.envoy.config.cluster.v3.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
- Specified by:
getOriginalDstLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasLeastRequestLbConfig
public boolean hasLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.config.cluster.v3.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
- Specified by:
hasLeastRequestLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the leastRequestLbConfig field is set.
-
getLeastRequestLbConfig
public Cluster.LeastRequestLbConfig getLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.config.cluster.v3.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
- Specified by:
getLeastRequestLbConfig
in interfaceClusterOrBuilder
- Returns:
- The leastRequestLbConfig.
-
getLeastRequestLbConfigOrBuilder
public Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder()
Optional configuration for the LeastRequest load balancing policy.
.envoy.config.cluster.v3.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
- Specified by:
getLeastRequestLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasRoundRobinLbConfig
public boolean hasRoundRobinLbConfig()
Optional configuration for the RoundRobin load balancing policy.
.envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
- Specified by:
hasRoundRobinLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the roundRobinLbConfig field is set.
-
getRoundRobinLbConfig
public Cluster.RoundRobinLbConfig getRoundRobinLbConfig()
Optional configuration for the RoundRobin load balancing policy.
.envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
- Specified by:
getRoundRobinLbConfig
in interfaceClusterOrBuilder
- Returns:
- The roundRobinLbConfig.
-
getRoundRobinLbConfigOrBuilder
public Cluster.RoundRobinLbConfigOrBuilder getRoundRobinLbConfigOrBuilder()
Optional configuration for the RoundRobin load balancing policy.
.envoy.config.cluster.v3.Cluster.RoundRobinLbConfig round_robin_lb_config = 56;
- Specified by:
getRoundRobinLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasCommonLbConfig
public boolean hasCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
- Specified by:
hasCommonLbConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the commonLbConfig field is set.
-
getCommonLbConfig
public Cluster.CommonLbConfig getCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
- Specified by:
getCommonLbConfig
in interfaceClusterOrBuilder
- Returns:
- The commonLbConfig.
-
getCommonLbConfigOrBuilder
public Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder()
Common configuration for all load balancer implementations.
.envoy.config.cluster.v3.Cluster.CommonLbConfig common_lb_config = 27;
- Specified by:
getCommonLbConfigOrBuilder
in interfaceClusterOrBuilder
-
hasTransportSocket
public boolean hasTransportSocket()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.config.core.v3.TransportSocket transport_socket = 24;
- Specified by:
hasTransportSocket
in interfaceClusterOrBuilder
- Returns:
- Whether the transportSocket field is set.
-
getTransportSocket
public TransportSocket getTransportSocket()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.config.core.v3.TransportSocket transport_socket = 24;
- Specified by:
getTransportSocket
in interfaceClusterOrBuilder
- Returns:
- The transportSocket.
-
getTransportSocketOrBuilder
public TransportSocketOrBuilder getTransportSocketOrBuilder()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name ``envoy.transport_sockets.tls`` and :ref:`UpstreamTlsContexts <envoy_v3_api_msg_extensions.transport_sockets.tls.v3.UpstreamTlsContext>` in the ``typed_config``. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.config.core.v3.TransportSocket transport_socket = 24;
- Specified by:
getTransportSocketOrBuilder
in interfaceClusterOrBuilder
-
hasMetadata
public boolean hasMetadata()
The Metadata field can be used to provide additional information about the cluster. It can be used for stats, logging, and varying filter behavior. Fields should use reverse DNS notation to denote which entity within Envoy will need the information. For instance, if the metadata is intended for the Router filter, the filter name should be specified as ``envoy.filters.http.router``.
.envoy.config.core.v3.Metadata metadata = 25;
- Specified by:
hasMetadata
in interfaceClusterOrBuilder
- Returns:
- Whether the metadata field is set.
-
getMetadata
public Metadata getMetadata()
The Metadata field can be used to provide additional information about the cluster. It can be used for stats, logging, and varying filter behavior. Fields should use reverse DNS notation to denote which entity within Envoy will need the information. For instance, if the metadata is intended for the Router filter, the filter name should be specified as ``envoy.filters.http.router``.
.envoy.config.core.v3.Metadata metadata = 25;
- Specified by:
getMetadata
in interfaceClusterOrBuilder
- Returns:
- The metadata.
-
getMetadataOrBuilder
public 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.config.core.v3.Metadata metadata = 25;
- Specified by:
getMetadataOrBuilder
in interfaceClusterOrBuilder
-
getProtocolSelectionValue
@Deprecated public int getProtocolSelectionValue()
Deprecated.envoy.config.cluster.v3.Cluster.protocol_selection is deprecated. See envoy/config/cluster/v3/cluster.proto;l=1102Determines how Envoy selects the protocol used to speak to upstream hosts. This has been deprecated in favor of setting explicit protocol selection in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
.envoy.config.cluster.v3.Cluster.ClusterProtocolSelection protocol_selection = 26 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getProtocolSelectionValue
in interfaceClusterOrBuilder
- Returns:
- The enum numeric value on the wire for protocolSelection.
-
getProtocolSelection
@Deprecated public Cluster.ClusterProtocolSelection getProtocolSelection()
Deprecated.envoy.config.cluster.v3.Cluster.protocol_selection is deprecated. See envoy/config/cluster/v3/cluster.proto;l=1102Determines how Envoy selects the protocol used to speak to upstream hosts. This has been deprecated in favor of setting explicit protocol selection in the :ref:`http_protocol_options <envoy_v3_api_msg_extensions.upstreams.http.v3.HttpProtocolOptions>` message. http_protocol_options can be set via the cluster's :ref:`extension_protocol_options<envoy_v3_api_field_config.cluster.v3.Cluster.typed_extension_protocol_options>`.
.envoy.config.cluster.v3.Cluster.ClusterProtocolSelection protocol_selection = 26 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getProtocolSelection
in interfaceClusterOrBuilder
- Returns:
- The protocolSelection.
-
hasUpstreamConnectionOptions
public boolean hasUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
- Specified by:
hasUpstreamConnectionOptions
in interfaceClusterOrBuilder
- Returns:
- Whether the upstreamConnectionOptions field is set.
-
getUpstreamConnectionOptions
public UpstreamConnectionOptions getUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
- Specified by:
getUpstreamConnectionOptions
in interfaceClusterOrBuilder
- Returns:
- The upstreamConnectionOptions.
-
getUpstreamConnectionOptionsOrBuilder
public UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder()
Optional options for upstream connections.
.envoy.config.cluster.v3.UpstreamConnectionOptions upstream_connection_options = 30;
- Specified by:
getUpstreamConnectionOptionsOrBuilder
in interfaceClusterOrBuilder
-
getCloseConnectionsOnHostHealthFailure
public 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;
- Specified by:
getCloseConnectionsOnHostHealthFailure
in interfaceClusterOrBuilder
- Returns:
- The closeConnectionsOnHostHealthFailure.
-
getIgnoreHealthOnHostRemoval
public boolean getIgnoreHealthOnHostRemoval()
If set to true, Envoy will ignore the health value of a host when processing its removal from service discovery. This means that if active health checking is used, Envoy will *not* wait for the endpoint to go unhealthy before removing it.
bool ignore_health_on_host_removal = 32;
- Specified by:
getIgnoreHealthOnHostRemoval
in interfaceClusterOrBuilder
- Returns:
- The ignoreHealthOnHostRemoval.
-
getFiltersList
public java.util.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.config.cluster.v3.Filter filters = 40;
- Specified by:
getFiltersList
in interfaceClusterOrBuilder
-
getFiltersOrBuilderList
public java.util.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.config.cluster.v3.Filter filters = 40;
- Specified by:
getFiltersOrBuilderList
in interfaceClusterOrBuilder
-
getFiltersCount
public int getFiltersCount()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.config.cluster.v3.Filter filters = 40;
- Specified by:
getFiltersCount
in interfaceClusterOrBuilder
-
getFilters
public Filter getFilters(int index)
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.config.cluster.v3.Filter filters = 40;
- Specified by:
getFilters
in interfaceClusterOrBuilder
-
getFiltersOrBuilder
public 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.config.cluster.v3.Filter filters = 40;
- Specified by:
getFiltersOrBuilder
in interfaceClusterOrBuilder
-
hasLoadBalancingPolicy
public boolean hasLoadBalancingPolicy()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
.envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
- Specified by:
hasLoadBalancingPolicy
in interfaceClusterOrBuilder
- Returns:
- Whether the loadBalancingPolicy field is set.
-
getLoadBalancingPolicy
public LoadBalancingPolicy getLoadBalancingPolicy()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
.envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
- Specified by:
getLoadBalancingPolicy
in interfaceClusterOrBuilder
- Returns:
- The loadBalancingPolicy.
-
getLoadBalancingPolicyOrBuilder
public LoadBalancingPolicyOrBuilder getLoadBalancingPolicyOrBuilder()
If this field is set and is supported by the client, it will supersede the value of :ref:`lb_policy<envoy_v3_api_field_config.cluster.v3.Cluster.lb_policy>`.
.envoy.config.cluster.v3.LoadBalancingPolicy load_balancing_policy = 41;
- Specified by:
getLoadBalancingPolicyOrBuilder
in interfaceClusterOrBuilder
-
hasLrsServer
public boolean hasLrsServer()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS. If not present, the client will fall back to a client-side default, which may be either (a) don't send any load reports or (b) send load reports for all clusters to a single default server (which may be configured in the bootstrap file). Note that if multiple clusters point to the same LRS server, the client may choose to create a separate stream for each cluster or it may choose to coalesce the data for multiple clusters onto a single stream. Either way, the client must make sure to send the data for any given cluster on no more than one stream. [#next-major-version: In the v3 API, we should consider restructuring this somehow, maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation from the LRS stream here.]
.envoy.config.core.v3.ConfigSource lrs_server = 42;
- Specified by:
hasLrsServer
in interfaceClusterOrBuilder
- Returns:
- Whether the lrsServer field is set.
-
getLrsServer
public ConfigSource getLrsServer()
[#not-implemented-hide:] If present, tells the client where to send load reports via LRS. If not present, the client will fall back to a client-side default, which may be either (a) don't send any load reports or (b) send load reports for all clusters to a single default server (which may be configured in the bootstrap file). Note that if multiple clusters point to the same LRS server, the client may choose to create a separate stream for each cluster or it may choose to coalesce the data for multiple clusters onto a single stream. Either way, the client must make sure to send the data for any given cluster on no more than one stream. [#next-major-version: In the v3 API, we should consider restructuring this somehow, maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation from the LRS stream here.]
.envoy.config.core.v3.ConfigSource lrs_server = 42;
- Specified by:
getLrsServer
in interfaceClusterOrBuilder
- Returns:
- The lrsServer.
-
getLrsServerOrBuilder
public 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.config.core.v3.ConfigSource lrs_server = 42;
- Specified by:
getLrsServerOrBuilder
in interfaceClusterOrBuilder
-
getTrackTimeoutBudgets
@Deprecated public boolean getTrackTimeoutBudgets()
Deprecated.envoy.config.cluster.v3.Cluster.track_timeout_budgets is deprecated. See envoy/config/cluster/v3/cluster.proto;l=1163If track_timeout_budgets is true, the :ref:`timeout budget histograms <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each request. These show what percentage of a request's per try and global timeout was used. A value of 0 would indicate that none of the timeout was used or that the timeout was infinite. A value of 100 would indicate that the request took the entirety of the timeout given to it. .. attention:: This field has been deprecated in favor of ``timeout_budgets``, part of :ref:`track_cluster_stats <envoy_v3_api_field_config.cluster.v3.Cluster.track_cluster_stats>`.
bool track_timeout_budgets = 47 [deprecated = true, (.envoy.annotations.deprecated_at_minor_version) = "3.0"];
- Specified by:
getTrackTimeoutBudgets
in interfaceClusterOrBuilder
- Returns:
- The trackTimeoutBudgets.
-
hasUpstreamConfig
public boolean hasUpstreamConfig()
Optional customization and configuration of upstream connection pool, and upstream type. Currently this field only applies for HTTP traffic but is designed for eventual use for custom TCP upstreams. For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream HTTP, using the http connection pool and the codec from ``http2_protocol_options`` For routes where CONNECT termination is configured, Envoy will take downstream CONNECT requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool. The default pool used is the generic connection pool which creates the HTTP upstream for most HTTP requests, and the TCP upstream if CONNECT termination is configured. If users desire custom connection pool or upstream behavior, for example terminating CONNECT only if a custom filter indicates it is appropriate, the custom factories can be registered and configured here. [#extension-category: envoy.upstreams]
.envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
- Specified by:
hasUpstreamConfig
in interfaceClusterOrBuilder
- Returns:
- Whether the upstreamConfig field is set.
-
getUpstreamConfig
public TypedExtensionConfig getUpstreamConfig()
Optional customization and configuration of upstream connection pool, and upstream type. Currently this field only applies for HTTP traffic but is designed for eventual use for custom TCP upstreams. For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream HTTP, using the http connection pool and the codec from ``http2_protocol_options`` For routes where CONNECT termination is configured, Envoy will take downstream CONNECT requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool. The default pool used is the generic connection pool which creates the HTTP upstream for most HTTP requests, and the TCP upstream if CONNECT termination is configured. If users desire custom connection pool or upstream behavior, for example terminating CONNECT only if a custom filter indicates it is appropriate, the custom factories can be registered and configured here. [#extension-category: envoy.upstreams]
.envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
- Specified by:
getUpstreamConfig
in interfaceClusterOrBuilder
- Returns:
- The upstreamConfig.
-
getUpstreamConfigOrBuilder
public TypedExtensionConfigOrBuilder getUpstreamConfigOrBuilder()
Optional customization and configuration of upstream connection pool, and upstream type. Currently this field only applies for HTTP traffic but is designed for eventual use for custom TCP upstreams. For HTTP traffic, Envoy will generally take downstream HTTP and send it upstream as upstream HTTP, using the http connection pool and the codec from ``http2_protocol_options`` For routes where CONNECT termination is configured, Envoy will take downstream CONNECT requests and forward the CONNECT payload upstream over raw TCP using the tcp connection pool. The default pool used is the generic connection pool which creates the HTTP upstream for most HTTP requests, and the TCP upstream if CONNECT termination is configured. If users desire custom connection pool or upstream behavior, for example terminating CONNECT only if a custom filter indicates it is appropriate, the custom factories can be registered and configured here. [#extension-category: envoy.upstreams]
.envoy.config.core.v3.TypedExtensionConfig upstream_config = 48;
- Specified by:
getUpstreamConfigOrBuilder
in interfaceClusterOrBuilder
-
hasTrackClusterStats
public boolean hasTrackClusterStats()
Configuration to track optional cluster stats.
.envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
- Specified by:
hasTrackClusterStats
in interfaceClusterOrBuilder
- Returns:
- Whether the trackClusterStats field is set.
-
getTrackClusterStats
public TrackClusterStats getTrackClusterStats()
Configuration to track optional cluster stats.
.envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
- Specified by:
getTrackClusterStats
in interfaceClusterOrBuilder
- Returns:
- The trackClusterStats.
-
getTrackClusterStatsOrBuilder
public TrackClusterStatsOrBuilder getTrackClusterStatsOrBuilder()
Configuration to track optional cluster stats.
.envoy.config.cluster.v3.TrackClusterStats track_cluster_stats = 49;
- Specified by:
getTrackClusterStatsOrBuilder
in interfaceClusterOrBuilder
-
hasPreconnectPolicy
public boolean hasPreconnectPolicy()
Preconnect configuration for this cluster.
.envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
- Specified by:
hasPreconnectPolicy
in interfaceClusterOrBuilder
- Returns:
- Whether the preconnectPolicy field is set.
-
getPreconnectPolicy
public Cluster.PreconnectPolicy getPreconnectPolicy()
Preconnect configuration for this cluster.
.envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
- Specified by:
getPreconnectPolicy
in interfaceClusterOrBuilder
- Returns:
- The preconnectPolicy.
-
getPreconnectPolicyOrBuilder
public Cluster.PreconnectPolicyOrBuilder getPreconnectPolicyOrBuilder()
Preconnect configuration for this cluster.
.envoy.config.cluster.v3.Cluster.PreconnectPolicy preconnect_policy = 50;
- Specified by:
getPreconnectPolicyOrBuilder
in interfaceClusterOrBuilder
-
getConnectionPoolPerDownstreamConnection
public boolean getConnectionPoolPerDownstreamConnection()
If ``connection_pool_per_downstream_connection`` is true, the cluster will use a separate connection pool for every downstream connection
bool connection_pool_per_downstream_connection = 51;
- Specified by:
getConnectionPoolPerDownstreamConnection
in interfaceClusterOrBuilder
- Returns:
- The connectionPoolPerDownstreamConnection.
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessage
- Throws:
java.io.IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessage
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static Cluster parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Cluster parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Cluster parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilderForType
public Cluster.Builder newBuilderForType()
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
public static Cluster.Builder newBuilder()
-
newBuilder
public static Cluster.Builder newBuilder(Cluster prototype)
-
toBuilder
public Cluster.Builder toBuilder()
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected Cluster.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
- Overrides:
newBuilderForType
in classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
public static Cluster getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<Cluster> parser()
-
getParserForType
public com.google.protobuf.Parser<Cluster> getParserForType()
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
public Cluster getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
-