Package io.envoyproxy.envoy.api.v2
Class Cluster
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- io.envoyproxy.envoy.api.v2.Cluster
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,ClusterOrBuilder,Serializable
public final class Cluster extends com.google.protobuf.GeneratedMessageV3 implements ClusterOrBuilder
Configuration for a single upstream cluster. [#next-free-field: 48]
Protobuf typeenvoy.api.v2.Cluster- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCluster.BuilderConfiguration for a single upstream cluster.static classCluster.ClusterDiscoveryTypeCasestatic classCluster.ClusterProtocolSelectionProtobuf enumenvoy.api.v2.Cluster.ClusterProtocolSelectionstatic classCluster.CommonLbConfigCommon configuration for all load balancer implementations.static interfaceCluster.CommonLbConfigOrBuilderstatic classCluster.CustomClusterTypeExtended cluster type.static interfaceCluster.CustomClusterTypeOrBuilderstatic classCluster.DiscoveryTypeRefer to :ref:`service discovery type <arch_overview_service_discovery_types>` for an explanation on each type.static classCluster.DnsLookupFamilyWhen V4_ONLY is selected, the DNS resolver will only perform a lookup for addresses in the IPv4 family.static classCluster.EdsClusterConfigOnly valid when discovery type is EDS.static interfaceCluster.EdsClusterConfigOrBuilderstatic classCluster.LbConfigCasestatic classCluster.LbPolicyRefer to :ref:`load balancer type <arch_overview_load_balancing_types>` architecture overview section for information on each type.static classCluster.LbSubsetConfigOptionally divide the endpoints in this cluster into subsets defined by endpoint metadata and selected by route and weighted cluster metadata.static interfaceCluster.LbSubsetConfigOrBuilderstatic classCluster.LeastRequestLbConfigSpecific configuration for the LeastRequest load balancing policy.static interfaceCluster.LeastRequestLbConfigOrBuilderstatic classCluster.OriginalDstLbConfigSpecific configuration for the :ref:`Original Destination <arch_overview_load_balancing_types_original_destination>` load balancing policy.static interfaceCluster.OriginalDstLbConfigOrBuilderstatic classCluster.RefreshRateProtobuf typeenvoy.api.v2.Cluster.RefreshRatestatic interfaceCluster.RefreshRateOrBuilderstatic classCluster.RingHashLbConfigSpecific configuration for the :ref:`RingHash<arch_overview_load_balancing_types_ring_hash>` load balancing policy.static interfaceCluster.RingHashLbConfigOrBuilderstatic classCluster.TransportSocketMatchTransportSocketMatch specifies what transport socket config will be used when the match conditions are satisfied.static interfaceCluster.TransportSocketMatchOrBuilder-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleancontainsExtensionProtocolOptions(String key)Deprecated.booleancontainsTypedExtensionProtocolOptions(String key)The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections.booleanequals(Object obj)StringgetAltStatName()An optional alternative to the cluster name to be used while emitting stats.com.google.protobuf.ByteStringgetAltStatNameBytes()An optional alternative to the cluster name to be used while emitting stats.CircuitBreakersgetCircuitBreakers()Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.CircuitBreakersOrBuildergetCircuitBreakersOrBuilder()Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.com.google.protobuf.DurationgetCleanupInterval()The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.com.google.protobuf.DurationOrBuildergetCleanupIntervalOrBuilder()The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.booleangetCloseConnectionsOnHostHealthFailure()If an upstream host becomes unhealthy (as determined by the configured health checks or outlier detection), immediately close all connections to the failed host. .. note:: This is currently only supported for connections created by tcp_proxy. .. note:: The current implementation of this feature closes all connections immediately when the unhealthy status is detected.Cluster.ClusterDiscoveryTypeCasegetClusterDiscoveryTypeCase()Cluster.CustomClusterTypegetClusterType()The custom cluster type.Cluster.CustomClusterTypeOrBuildergetClusterTypeOrBuilder()The custom cluster type.HttpProtocolOptionsgetCommonHttpProtocolOptions()Additional options when handling HTTP requests upstream.HttpProtocolOptionsOrBuildergetCommonHttpProtocolOptionsOrBuilder()Additional options when handling HTTP requests upstream.Cluster.CommonLbConfiggetCommonLbConfig()Common configuration for all load balancer implementations.Cluster.CommonLbConfigOrBuildergetCommonLbConfigOrBuilder()Common configuration for all load balancer implementations.com.google.protobuf.DurationgetConnectTimeout()The timeout for new network connections to hosts in the cluster.com.google.protobuf.DurationOrBuildergetConnectTimeoutOrBuilder()The timeout for new network connections to hosts in the cluster.static ClustergetDefaultInstance()ClustergetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()Cluster.RefreshRategetDnsFailureRefreshRate()If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.Cluster.RefreshRateOrBuildergetDnsFailureRefreshRateOrBuilder()If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.Cluster.DnsLookupFamilygetDnsLookupFamily()The DNS IP address resolution policy.intgetDnsLookupFamilyValue()The DNS IP address resolution policy.com.google.protobuf.DurationgetDnsRefreshRate()If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.com.google.protobuf.DurationOrBuildergetDnsRefreshRateOrBuilder()If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.AddressgetDnsResolvers(int index)If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers.intgetDnsResolversCount()If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers.List<Address>getDnsResolversList()If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers.AddressOrBuildergetDnsResolversOrBuilder(int index)If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers.List<? extends AddressOrBuilder>getDnsResolversOrBuilderList()If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers.booleangetDrainConnectionsOnHostRemoval()If set to true, Envoy will ignore the health value of a host when processing its removal from service discovery.Cluster.EdsClusterConfiggetEdsClusterConfig()Configuration to use for EDS updates for the Cluster.Cluster.EdsClusterConfigOrBuildergetEdsClusterConfigOrBuilder()Configuration to use for EDS updates for the Cluster.Map<String,com.google.protobuf.Struct>getExtensionProtocolOptions()Deprecated.intgetExtensionProtocolOptionsCount()Deprecated.Map<String,com.google.protobuf.Struct>getExtensionProtocolOptionsMap()Deprecated.com.google.protobuf.StructgetExtensionProtocolOptionsOrDefault(String key, com.google.protobuf.Struct defaultValue)Deprecated.com.google.protobuf.StructgetExtensionProtocolOptionsOrThrow(String key)Deprecated.FiltergetFilters(int index)An (optional) network filter chain, listed in the order the filters should be applied.intgetFiltersCount()An (optional) network filter chain, listed in the order the filters should be applied.List<Filter>getFiltersList()An (optional) network filter chain, listed in the order the filters should be applied.FilterOrBuildergetFiltersOrBuilder(int index)An (optional) network filter chain, listed in the order the filters should be applied.List<? extends FilterOrBuilder>getFiltersOrBuilderList()An (optional) network filter chain, listed in the order the filters should be applied.HealthCheckgetHealthChecks(int index)Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.intgetHealthChecksCount()Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.List<HealthCheck>getHealthChecksList()Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.HealthCheckOrBuildergetHealthChecksOrBuilder(int index)Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.List<? extends HealthCheckOrBuilder>getHealthChecksOrBuilderList()Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster.AddressgetHosts(int index)Deprecated.intgetHostsCount()Deprecated.List<Address>getHostsList()Deprecated.AddressOrBuildergetHostsOrBuilder(int index)Deprecated.List<? extends AddressOrBuilder>getHostsOrBuilderList()Deprecated.Http2ProtocolOptionsgetHttp2ProtocolOptions()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.Http2ProtocolOptionsOrBuildergetHttp2ProtocolOptionsOrBuilder()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.Http1ProtocolOptionsgetHttpProtocolOptions()Additional options when handling HTTP1 requests.Http1ProtocolOptionsOrBuildergetHttpProtocolOptionsOrBuilder()Additional options when handling HTTP1 requests.Cluster.LbConfigCasegetLbConfigCase()Cluster.LbPolicygetLbPolicy()The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.intgetLbPolicyValue()The :ref:`load balancer type <arch_overview_load_balancing_types>` to use when picking a host in the cluster.Cluster.LbSubsetConfiggetLbSubsetConfig()Configuration for load balancing subsetting.Cluster.LbSubsetConfigOrBuildergetLbSubsetConfigOrBuilder()Configuration for load balancing subsetting.Cluster.LeastRequestLbConfiggetLeastRequestLbConfig()Optional configuration for the LeastRequest load balancing policy.Cluster.LeastRequestLbConfigOrBuildergetLeastRequestLbConfigOrBuilder()Optional configuration for the LeastRequest load balancing policy.ClusterLoadAssignmentgetLoadAssignment()Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.ClusterLoadAssignmentOrBuildergetLoadAssignmentOrBuilder()Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.LoadBalancingPolicygetLoadBalancingPolicy()[#not-implemented-hide:] New mechanism for LB policy configuration.LoadBalancingPolicyOrBuildergetLoadBalancingPolicyOrBuilder()[#not-implemented-hide:] New mechanism for LB policy configuration.ConfigSourcegetLrsServer()[#not-implemented-hide:] If present, tells the client where to send load reports via LRS.ConfigSourceOrBuildergetLrsServerOrBuilder()[#not-implemented-hide:] If present, tells the client where to send load reports via LRS.com.google.protobuf.UInt32ValuegetMaxRequestsPerConnection()Optional maximum requests for a single upstream connection.com.google.protobuf.UInt32ValueOrBuildergetMaxRequestsPerConnectionOrBuilder()Optional maximum requests for a single upstream connection.MetadatagetMetadata()The Metadata field can be used to provide additional information about the cluster.MetadataOrBuildergetMetadataOrBuilder()The Metadata field can be used to provide additional information about the cluster.StringgetName()Supplies the name of the cluster which must be unique across all clusters.com.google.protobuf.ByteStringgetNameBytes()Supplies the name of the cluster which must be unique across all clusters.Cluster.OriginalDstLbConfiggetOriginalDstLbConfig()Optional configuration for the Original Destination load balancing policy.Cluster.OriginalDstLbConfigOrBuildergetOriginalDstLbConfigOrBuilder()Optional configuration for the Original Destination load balancing policy.OutlierDetectiongetOutlierDetection()If specified, outlier detection will be enabled for this upstream cluster.OutlierDetectionOrBuildergetOutlierDetectionOrBuilder()If specified, outlier detection will be enabled for this upstream cluster.com.google.protobuf.Parser<Cluster>getParserForType()com.google.protobuf.UInt32ValuegetPerConnectionBufferLimitBytes()Soft limit on size of the cluster’s connections read and write buffers.com.google.protobuf.UInt32ValueOrBuildergetPerConnectionBufferLimitBytesOrBuilder()Soft limit on size of the cluster’s connections read and write buffers.Cluster.ClusterProtocolSelectiongetProtocolSelection()Determines how Envoy selects the protocol used to speak to upstream hosts.intgetProtocolSelectionValue()Determines how Envoy selects the protocol used to speak to upstream hosts.booleangetRespectDnsTtl()Optional configuration for setting cluster's DNS refresh rate.Cluster.RingHashLbConfiggetRingHashLbConfig()Optional configuration for the Ring Hash load balancing policy.Cluster.RingHashLbConfigOrBuildergetRingHashLbConfigOrBuilder()Optional configuration for the Ring Hash load balancing policy.intgetSerializedSize()UpstreamTlsContextgetTlsContext()Deprecated.envoy.api.v2.Cluster.tls_context is deprecated.UpstreamTlsContextOrBuildergetTlsContextOrBuilder()Deprecated.booleangetTrackTimeoutBudgets()If track_timeout_budgets is true, the :ref:`timeout budget histograms <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each request.TransportSocketgetTransportSocket()Optional custom transport socket implementation to use for upstream connections.Cluster.TransportSocketMatchgetTransportSocketMatches(int index)Configuration to use different transport sockets for different endpoints.intgetTransportSocketMatchesCount()Configuration to use different transport sockets for different endpoints.List<Cluster.TransportSocketMatch>getTransportSocketMatchesList()Configuration to use different transport sockets for different endpoints.Cluster.TransportSocketMatchOrBuildergetTransportSocketMatchesOrBuilder(int index)Configuration to use different transport sockets for different endpoints.List<? extends Cluster.TransportSocketMatchOrBuilder>getTransportSocketMatchesOrBuilderList()Configuration to use different transport sockets for different endpoints.TransportSocketOrBuildergetTransportSocketOrBuilder()Optional custom transport socket implementation to use for upstream connections.Cluster.DiscoveryTypegetType()The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.Map<String,com.google.protobuf.Any>getTypedExtensionProtocolOptions()Deprecated.intgetTypedExtensionProtocolOptionsCount()The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections.Map<String,com.google.protobuf.Any>getTypedExtensionProtocolOptionsMap()The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections.com.google.protobuf.AnygetTypedExtensionProtocolOptionsOrDefault(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.AnygetTypedExtensionProtocolOptionsOrThrow(String key)The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections.intgetTypeValue()The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.com.google.protobuf.UnknownFieldSetgetUnknownFields()BindConfiggetUpstreamBindConfig()Optional configuration used to bind newly established upstream connections.BindConfigOrBuildergetUpstreamBindConfigOrBuilder()Optional configuration used to bind newly established upstream connections.UpstreamConnectionOptionsgetUpstreamConnectionOptions()Optional options for upstream connections.UpstreamConnectionOptionsOrBuildergetUpstreamConnectionOptionsOrBuilder()Optional options for upstream connections.UpstreamHttpProtocolOptionsgetUpstreamHttpProtocolOptions()HTTP protocol options that are applied only to upstream HTTP connections.UpstreamHttpProtocolOptionsOrBuildergetUpstreamHttpProtocolOptionsOrBuilder()HTTP protocol options that are applied only to upstream HTTP connections.booleangetUseTcpForDnsLookups()[#next-major-version: Reconcile DNS options in a single message.]booleanhasCircuitBreakers()Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.booleanhasCleanupInterval()The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.booleanhasClusterType()The custom cluster type.booleanhasCommonHttpProtocolOptions()Additional options when handling HTTP requests upstream.booleanhasCommonLbConfig()Common configuration for all load balancer implementations.booleanhasConnectTimeout()The timeout for new network connections to hosts in the cluster.booleanhasDnsFailureRefreshRate()If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing.booleanhasDnsRefreshRate()If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate.booleanhasEdsClusterConfig()Configuration to use for EDS updates for the Cluster.inthashCode()booleanhasHttp2ProtocolOptions()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.booleanhasHttpProtocolOptions()Additional options when handling HTTP1 requests.booleanhasLbSubsetConfig()Configuration for load balancing subsetting.booleanhasLeastRequestLbConfig()Optional configuration for the LeastRequest load balancing policy.booleanhasLoadAssignment()Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.booleanhasLoadBalancingPolicy()[#not-implemented-hide:] New mechanism for LB policy configuration.booleanhasLrsServer()[#not-implemented-hide:] If present, tells the client where to send load reports via LRS.booleanhasMaxRequestsPerConnection()Optional maximum requests for a single upstream connection.booleanhasMetadata()The Metadata field can be used to provide additional information about the cluster.booleanhasOriginalDstLbConfig()Optional configuration for the Original Destination load balancing policy.booleanhasOutlierDetection()If specified, outlier detection will be enabled for this upstream cluster.booleanhasPerConnectionBufferLimitBytes()Soft limit on size of the cluster’s connections read and write buffers.booleanhasRingHashLbConfig()Optional configuration for the Ring Hash load balancing policy.booleanhasTlsContext()Deprecated.envoy.api.v2.Cluster.tls_context is deprecated.booleanhasTransportSocket()Optional custom transport socket implementation to use for upstream connections.booleanhasType()The :ref:`service discovery type <arch_overview_service_discovery_types>` to use for resolving the cluster.booleanhasUpstreamBindConfig()Optional configuration used to bind newly established upstream connections.booleanhasUpstreamConnectionOptions()Optional options for upstream connections.booleanhasUpstreamHttpProtocolOptions()HTTP protocol options that are applied only to upstream HTTP connections.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()protected com.google.protobuf.MapFieldinternalGetMapField(int number)booleanisInitialized()static Cluster.BuildernewBuilder()static Cluster.BuildernewBuilder(Cluster prototype)Cluster.BuildernewBuilderForType()protected Cluster.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static ClusterparseDelimitedFrom(InputStream input)static ClusterparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static ClusterparseFrom(byte[] data)static ClusterparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static ClusterparseFrom(com.google.protobuf.ByteString data)static ClusterparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static ClusterparseFrom(com.google.protobuf.CodedInputStream input)static ClusterparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static ClusterparseFrom(InputStream input)static ClusterparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static ClusterparseFrom(ByteBuffer data)static ClusterparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<Cluster>parser()Cluster.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
TRANSPORT_SOCKET_MATCHES_FIELD_NUMBER
public static final int TRANSPORT_SOCKET_MATCHES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ALT_STAT_NAME_FIELD_NUMBER
public static final int ALT_STAT_NAME_FIELD_NUMBER
- See Also:
- Constant Field Values
-
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
-
CONNECT_TIMEOUT_FIELD_NUMBER
public static final int CONNECT_TIMEOUT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PER_CONNECTION_BUFFER_LIMIT_BYTES_FIELD_NUMBER
public static final int PER_CONNECTION_BUFFER_LIMIT_BYTES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LB_POLICY_FIELD_NUMBER
public static final int LB_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HOSTS_FIELD_NUMBER
public static final int HOSTS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LOAD_ASSIGNMENT_FIELD_NUMBER
public static final int LOAD_ASSIGNMENT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HEALTH_CHECKS_FIELD_NUMBER
public static final int HEALTH_CHECKS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
MAX_REQUESTS_PER_CONNECTION_FIELD_NUMBER
public static final int MAX_REQUESTS_PER_CONNECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CIRCUIT_BREAKERS_FIELD_NUMBER
public static final int CIRCUIT_BREAKERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TLS_CONTEXT_FIELD_NUMBER
public static final int TLS_CONTEXT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
UPSTREAM_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int UPSTREAM_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int COMMON_HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int HTTP2_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TYPED_EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
public static final int TYPED_EXTENSION_PROTOCOL_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DNS_REFRESH_RATE_FIELD_NUMBER
public static final int DNS_REFRESH_RATE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DNS_FAILURE_REFRESH_RATE_FIELD_NUMBER
public static final int DNS_FAILURE_REFRESH_RATE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
RESPECT_DNS_TTL_FIELD_NUMBER
public static final int RESPECT_DNS_TTL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DNS_LOOKUP_FAMILY_FIELD_NUMBER
public static final int DNS_LOOKUP_FAMILY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
DNS_RESOLVERS_FIELD_NUMBER
public static final int DNS_RESOLVERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
USE_TCP_FOR_DNS_LOOKUPS_FIELD_NUMBER
public static final int USE_TCP_FOR_DNS_LOOKUPS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
OUTLIER_DETECTION_FIELD_NUMBER
public static final int OUTLIER_DETECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
CLEANUP_INTERVAL_FIELD_NUMBER
public static final int CLEANUP_INTERVAL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
UPSTREAM_BIND_CONFIG_FIELD_NUMBER
public static final int UPSTREAM_BIND_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LB_SUBSET_CONFIG_FIELD_NUMBER
public static final int LB_SUBSET_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
RING_HASH_LB_CONFIG_FIELD_NUMBER
public static final int RING_HASH_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
-
COMMON_LB_CONFIG_FIELD_NUMBER
public static final int COMMON_LB_CONFIG_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TRANSPORT_SOCKET_FIELD_NUMBER
public static final int TRANSPORT_SOCKET_FIELD_NUMBER
- See Also:
- Constant Field Values
-
METADATA_FIELD_NUMBER
public static final int METADATA_FIELD_NUMBER
- See Also:
- Constant Field Values
-
PROTOCOL_SELECTION_FIELD_NUMBER
public static final int PROTOCOL_SELECTION_FIELD_NUMBER
- See Also:
- Constant Field Values
-
UPSTREAM_CONNECTION_OPTIONS_FIELD_NUMBER
public static final int UPSTREAM_CONNECTION_OPTIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
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
-
DRAIN_CONNECTIONS_ON_HOST_REMOVAL_FIELD_NUMBER
public static final int DRAIN_CONNECTIONS_ON_HOST_REMOVAL_FIELD_NUMBER
- See Also:
- Constant Field Values
-
FILTERS_FIELD_NUMBER
public static final int FILTERS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LOAD_BALANCING_POLICY_FIELD_NUMBER
public static final int LOAD_BALANCING_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
LRS_SERVER_FIELD_NUMBER
public static final int LRS_SERVER_FIELD_NUMBER
- See Also:
- Constant Field Values
-
TRACK_TIMEOUT_BUDGETS_FIELD_NUMBER
public static final int TRACK_TIMEOUT_BUDGETS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetMapField
protected com.google.protobuf.MapField internalGetMapField(int number)
- Overrides:
internalGetMapFieldin classcom.google.protobuf.GeneratedMessageV3
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getClusterDiscoveryTypeCase
public Cluster.ClusterDiscoveryTypeCase getClusterDiscoveryTypeCase()
- Specified by:
getClusterDiscoveryTypeCasein interfaceClusterOrBuilder
-
getLbConfigCase
public Cluster.LbConfigCase getLbConfigCase()
- Specified by:
getLbConfigCasein interfaceClusterOrBuilder
-
getTransportSocketMatchesList
public List<Cluster.TransportSocketMatch> getTransportSocketMatchesList()
Configuration to use different transport sockets for different endpoints. The entry of *envoy.transport_socket_match* in the :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. The first :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under *envoy.transport_socket_match* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under *envoy.transport_socket_match* does not match any *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or *transport_socket* specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding *TransportSocketMatch* in this field. Other client Envoys receive CDS without *transport_socket_match* set, and still send plain text traffic to the same cluster. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;- Specified by:
getTransportSocketMatchesListin interfaceClusterOrBuilder
-
getTransportSocketMatchesOrBuilderList
public List<? extends Cluster.TransportSocketMatchOrBuilder> getTransportSocketMatchesOrBuilderList()
Configuration to use different transport sockets for different endpoints. The entry of *envoy.transport_socket_match* in the :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. The first :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under *envoy.transport_socket_match* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under *envoy.transport_socket_match* does not match any *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or *transport_socket* specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding *TransportSocketMatch* in this field. Other client Envoys receive CDS without *transport_socket_match* set, and still send plain text traffic to the same cluster. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;- Specified by:
getTransportSocketMatchesOrBuilderListin 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_api_field_endpoint.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. The first :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under *envoy.transport_socket_match* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under *envoy.transport_socket_match* does not match any *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or *transport_socket* specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding *TransportSocketMatch* in this field. Other client Envoys receive CDS without *transport_socket_match* set, and still send plain text traffic to the same cluster. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;- Specified by:
getTransportSocketMatchesCountin 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_api_field_endpoint.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. The first :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under *envoy.transport_socket_match* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under *envoy.transport_socket_match* does not match any *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or *transport_socket* specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding *TransportSocketMatch* in this field. Other client Envoys receive CDS without *transport_socket_match* set, and still send plain text traffic to the same cluster. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;- Specified by:
getTransportSocketMatchesin 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_api_field_endpoint.LbEndpoint.metadata>` is used to match against the transport sockets as they appear in the list. The first :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used. For example, with the following match .. code-block:: yaml transport_socket_matches: - name: "enableMTLS" match: acceptMTLS: true transport_socket: name: envoy.transport_sockets.tls config: { ... } # tls socket configuration - name: "defaultToPlaintext" match: {} transport_socket: name: envoy.transport_sockets.raw_buffer Connections to the endpoints whose metadata value under *envoy.transport_socket_match* having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration. If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext" socket match in case above. If an endpoint metadata's value under *envoy.transport_socket_match* does not match any *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or *transport_socket* specified in this cluster. This field allows gradual and flexible transport socket configuration changes. The metadata of endpoints in EDS can indicate transport socket capabilities. For example, an endpoint's metadata can have two key value pairs as "acceptMTLS": "true", "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic has "acceptPlaintext": "true" metadata information. Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS traffic for endpoints with "acceptMTLS": "true", by adding a corresponding *TransportSocketMatch* in this field. Other client Envoys receive CDS without *transport_socket_match* set, and still send plain text traffic to the same cluster. [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;- Specified by:
getTransportSocketMatchesOrBuilderin interfaceClusterOrBuilder
-
getName
public String getName()
Supplies the name of the cluster which must be unique across all clusters. The cluster name is used when emitting :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name <envoy_api_field_Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNamein 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_api_field_Cluster.alt_stat_name>` is not provided. Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
string name = 1 [(.validate.rules) = { ... }- Specified by:
getNameBytesin interfaceClusterOrBuilder- Returns:
- The bytes for name.
-
getAltStatName
public String getAltStatName()
An optional alternative to the cluster name to be used while emitting stats. Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28;- Specified by:
getAltStatNamein interfaceClusterOrBuilder- Returns:
- The altStatName.
-
getAltStatNameBytes
public com.google.protobuf.ByteString getAltStatNameBytes()
An optional alternative to the cluster name to be used while emitting stats. Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be confused with :ref:`Router Filter Header <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
string alt_stat_name = 28;- Specified by:
getAltStatNameBytesin 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.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }- Specified by:
hasTypein 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.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }- Specified by:
getTypeValuein 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.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }- Specified by:
getTypein interfaceClusterOrBuilder- Returns:
- The type.
-
hasClusterType
public boolean hasClusterType()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;- Specified by:
hasClusterTypein interfaceClusterOrBuilder- Returns:
- Whether the clusterType field is set.
-
getClusterType
public Cluster.CustomClusterType getClusterType()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;- Specified by:
getClusterTypein interfaceClusterOrBuilder- Returns:
- The clusterType.
-
getClusterTypeOrBuilder
public Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder()
The custom cluster type.
.envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;- Specified by:
getClusterTypeOrBuilderin interfaceClusterOrBuilder
-
hasEdsClusterConfig
public boolean hasEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;- Specified by:
hasEdsClusterConfigin interfaceClusterOrBuilder- Returns:
- Whether the edsClusterConfig field is set.
-
getEdsClusterConfig
public Cluster.EdsClusterConfig getEdsClusterConfig()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;- Specified by:
getEdsClusterConfigin interfaceClusterOrBuilder- Returns:
- The edsClusterConfig.
-
getEdsClusterConfigOrBuilder
public Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder()
Configuration to use for EDS updates for the Cluster.
.envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;- Specified by:
getEdsClusterConfigOrBuilderin interfaceClusterOrBuilder
-
hasConnectTimeout
public boolean hasConnectTimeout()
The timeout for new network connections to hosts in the cluster.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }- Specified by:
hasConnectTimeoutin 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.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }- Specified by:
getConnectTimeoutin interfaceClusterOrBuilder- Returns:
- The connectTimeout.
-
getConnectTimeoutOrBuilder
public com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder()
The timeout for new network connections to hosts in the cluster.
.google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }- Specified by:
getConnectTimeoutOrBuilderin 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;- Specified by:
hasPerConnectionBufferLimitBytesin 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;- Specified by:
getPerConnectionBufferLimitBytesin 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;- Specified by:
getPerConnectionBufferLimitBytesOrBuilderin 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.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }- Specified by:
getLbPolicyValuein 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.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }- Specified by:
getLbPolicyin interfaceClusterOrBuilder- Returns:
- The lbPolicy.
-
getHostsList
@Deprecated public List<Address> getHostsList()
Deprecated.If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];- Specified by:
getHostsListin interfaceClusterOrBuilder
-
getHostsOrBuilderList
@Deprecated public List<? extends AddressOrBuilder> getHostsOrBuilderList()
Deprecated.If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];- Specified by:
getHostsOrBuilderListin interfaceClusterOrBuilder
-
getHostsCount
@Deprecated public int getHostsCount()
Deprecated.If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];- Specified by:
getHostsCountin interfaceClusterOrBuilder
-
getHosts
@Deprecated public Address getHosts(int index)
Deprecated.If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];- Specified by:
getHostsin interfaceClusterOrBuilder
-
getHostsOrBuilder
@Deprecated public AddressOrBuilder getHostsOrBuilder(int index)
Deprecated.If the service discovery type is :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, then hosts is required. .. attention:: **This field is deprecated**. Set the :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];- Specified by:
getHostsOrBuilderin interfaceClusterOrBuilder
-
hasLoadAssignment
public boolean hasLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;- Specified by:
hasLoadAssignmentin interfaceClusterOrBuilder- Returns:
- Whether the loadAssignment field is set.
-
getLoadAssignment
public ClusterLoadAssignment getLoadAssignment()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;- Specified by:
getLoadAssignmentin interfaceClusterOrBuilder- Returns:
- The loadAssignment.
-
getLoadAssignmentOrBuilder
public ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder()
Setting this is required for specifying members of :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`, :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters. This field supersedes the *hosts* field in the v2 API. .. attention:: Setting this allows non-EDS cluster types to contain embedded EDS equivalent :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
.envoy.api.v2.ClusterLoadAssignment load_assignment = 33;- Specified by:
getLoadAssignmentOrBuilderin interfaceClusterOrBuilder
-
getHealthChecksList
public List<HealthCheck> getHealthChecksList()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;- Specified by:
getHealthChecksListin interfaceClusterOrBuilder
-
getHealthChecksOrBuilderList
public List<? extends HealthCheckOrBuilder> getHealthChecksOrBuilderList()
Optional :ref:`active health checking <arch_overview_health_checking>` configuration for the cluster. If no configuration is specified no health checking will be done and all cluster members will be considered healthy at all times.
repeated .envoy.api.v2.core.HealthCheck health_checks = 8;- Specified by:
getHealthChecksOrBuilderListin 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.api.v2.core.HealthCheck health_checks = 8;- Specified by:
getHealthChecksCountin 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.api.v2.core.HealthCheck health_checks = 8;- Specified by:
getHealthChecksin 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.api.v2.core.HealthCheck health_checks = 8;- Specified by:
getHealthChecksOrBuilderin interfaceClusterOrBuilder
-
hasMaxRequestsPerConnection
public boolean hasMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;- Specified by:
hasMaxRequestsPerConnectionin interfaceClusterOrBuilder- Returns:
- Whether the maxRequestsPerConnection field is set.
-
getMaxRequestsPerConnection
public com.google.protobuf.UInt32Value getMaxRequestsPerConnection()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;- Specified by:
getMaxRequestsPerConnectionin interfaceClusterOrBuilder- Returns:
- The maxRequestsPerConnection.
-
getMaxRequestsPerConnectionOrBuilder
public com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder()
Optional maximum requests for a single upstream connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 connection pool implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.
.google.protobuf.UInt32Value max_requests_per_connection = 9;- Specified by:
getMaxRequestsPerConnectionOrBuilderin interfaceClusterOrBuilder
-
hasCircuitBreakers
public boolean hasCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;- Specified by:
hasCircuitBreakersin interfaceClusterOrBuilder- Returns:
- Whether the circuitBreakers field is set.
-
getCircuitBreakers
public CircuitBreakers getCircuitBreakers()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;- Specified by:
getCircuitBreakersin interfaceClusterOrBuilder- Returns:
- The circuitBreakers.
-
getCircuitBreakersOrBuilder
public CircuitBreakersOrBuilder getCircuitBreakersOrBuilder()
Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
.envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;- Specified by:
getCircuitBreakersOrBuilderin interfaceClusterOrBuilder
-
hasTlsContext
@Deprecated public boolean hasTlsContext()
Deprecated.envoy.api.v2.Cluster.tls_context is deprecated. See envoy/api/v2/cluster.proto;l=607The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
hasTlsContextin interfaceClusterOrBuilder- Returns:
- Whether the tlsContext field is set.
-
getTlsContext
@Deprecated public UpstreamTlsContext getTlsContext()
Deprecated.envoy.api.v2.Cluster.tls_context is deprecated. See envoy/api/v2/cluster.proto;l=607The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getTlsContextin interfaceClusterOrBuilder- Returns:
- The tlsContext.
-
getTlsContextOrBuilder
@Deprecated public UpstreamTlsContextOrBuilder getTlsContextOrBuilder()
Deprecated.The TLS configuration for connections to the upstream cluster. .. attention:: **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are set, `transport_socket` takes priority.
.envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getTlsContextOrBuilderin interfaceClusterOrBuilder
-
hasUpstreamHttpProtocolOptions
public boolean hasUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;- Specified by:
hasUpstreamHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- Whether the upstreamHttpProtocolOptions field is set.
-
getUpstreamHttpProtocolOptions
public UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;- Specified by:
getUpstreamHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- The upstreamHttpProtocolOptions.
-
getUpstreamHttpProtocolOptionsOrBuilder
public UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder()
HTTP protocol options that are applied only to upstream HTTP connections. These options apply to all HTTP versions.
.envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;- Specified by:
getUpstreamHttpProtocolOptionsOrBuilderin interfaceClusterOrBuilder
-
hasCommonHttpProtocolOptions
public boolean hasCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;- Specified by:
hasCommonHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- Whether the commonHttpProtocolOptions field is set.
-
getCommonHttpProtocolOptions
public HttpProtocolOptions getCommonHttpProtocolOptions()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;- Specified by:
getCommonHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- The commonHttpProtocolOptions.
-
getCommonHttpProtocolOptionsOrBuilder
public HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP requests upstream. These options will be applicable to both HTTP1 and HTTP2 requests.
.envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;- Specified by:
getCommonHttpProtocolOptionsOrBuilderin interfaceClusterOrBuilder
-
hasHttpProtocolOptions
public boolean hasHttpProtocolOptions()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;- Specified by:
hasHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- Whether the httpProtocolOptions field is set.
-
getHttpProtocolOptions
public Http1ProtocolOptions getHttpProtocolOptions()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;- Specified by:
getHttpProtocolOptionsin interfaceClusterOrBuilder- Returns:
- The httpProtocolOptions.
-
getHttpProtocolOptionsOrBuilder
public Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
Additional options when handling HTTP1 requests.
.envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;- Specified by:
getHttpProtocolOptionsOrBuilderin interfaceClusterOrBuilder
-
hasHttp2ProtocolOptions
public boolean hasHttp2ProtocolOptions()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;- Specified by:
hasHttp2ProtocolOptionsin interfaceClusterOrBuilder- Returns:
- Whether the http2ProtocolOptions field is set.
-
getHttp2ProtocolOptions
public Http2ProtocolOptions getHttp2ProtocolOptions()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;- Specified by:
getHttp2ProtocolOptionsin interfaceClusterOrBuilder- Returns:
- The http2ProtocolOptions.
-
getHttp2ProtocolOptionsOrBuilder
public Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
Even if default HTTP2 protocol options are desired, this field must be set so that Envoy will assume that the upstream supports HTTP/2 when making new HTTP connection pool connections. Currently, Envoy only supports prior knowledge for upstream connections. Even if TLS is used with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2 connections to happen over plain text.
.envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;- Specified by:
getHttp2ProtocolOptionsOrBuilderin interfaceClusterOrBuilder
-
getExtensionProtocolOptionsCount
@Deprecated public int getExtensionProtocolOptionsCount()
Deprecated.Description copied from interface:ClusterOrBuilderThe extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getExtensionProtocolOptionsCountin interfaceClusterOrBuilder
-
containsExtensionProtocolOptions
@Deprecated public boolean containsExtensionProtocolOptions(String key)
Deprecated.The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
containsExtensionProtocolOptionsin interfaceClusterOrBuilder
-
getExtensionProtocolOptions
@Deprecated public Map<String,com.google.protobuf.Struct> getExtensionProtocolOptions()
Deprecated.UsegetExtensionProtocolOptionsMap()instead.- Specified by:
getExtensionProtocolOptionsin interfaceClusterOrBuilder
-
getExtensionProtocolOptionsMap
@Deprecated public Map<String,com.google.protobuf.Struct> getExtensionProtocolOptionsMap()
Deprecated.The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getExtensionProtocolOptionsMapin interfaceClusterOrBuilder
-
getExtensionProtocolOptionsOrDefault
@Deprecated public com.google.protobuf.Struct getExtensionProtocolOptionsOrDefault(String key, com.google.protobuf.Struct defaultValue)
Deprecated.The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getExtensionProtocolOptionsOrDefaultin interfaceClusterOrBuilder
-
getExtensionProtocolOptionsOrThrow
@Deprecated public com.google.protobuf.Struct getExtensionProtocolOptionsOrThrow(String key)
Deprecated.The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];- Specified by:
getExtensionProtocolOptionsOrThrowin interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsCount
public int getTypedExtensionProtocolOptionsCount()
Description copied from interface:ClusterOrBuilderThe extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;- Specified by:
getTypedExtensionProtocolOptionsCountin interfaceClusterOrBuilder
-
containsTypedExtensionProtocolOptions
public boolean containsTypedExtensionProtocolOptions(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;- Specified by:
containsTypedExtensionProtocolOptionsin interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptions
@Deprecated public Map<String,com.google.protobuf.Any> getTypedExtensionProtocolOptions()
Deprecated.UsegetTypedExtensionProtocolOptionsMap()instead.- Specified by:
getTypedExtensionProtocolOptionsin interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsMap
public Map<String,com.google.protobuf.Any> getTypedExtensionProtocolOptionsMap()
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;- Specified by:
getTypedExtensionProtocolOptionsMapin interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsOrDefault
public com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault(String key, com.google.protobuf.Any defaultValue)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;- Specified by:
getTypedExtensionProtocolOptionsOrDefaultin interfaceClusterOrBuilder
-
getTypedExtensionProtocolOptionsOrThrow
public com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow(String key)
The extension_protocol_options field is used to provide extension-specific protocol options for upstream connections. The key should match the extension filter name, such as "envoy.filters.network.thrift_proxy". See the extension's documentation for details on specific options.
map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;- Specified by:
getTypedExtensionProtocolOptionsOrThrowin interfaceClusterOrBuilder
-
hasDnsRefreshRate
public boolean hasDnsRefreshRate()
If the DNS refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }- Specified by:
hasDnsRefreshRatein 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_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }- Specified by:
getDnsRefreshRatein 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_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used as the cluster’s DNS refresh rate. The value configured must be at least 1ms. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }- Specified by:
getDnsRefreshRateOrBuilderin interfaceClusterOrBuilder
-
hasDnsFailureRefreshRate
public boolean hasDnsFailureRefreshRate()
If the DNS failure refresh rate is specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;- Specified by:
hasDnsFailureRefreshRatein 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_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;- Specified by:
getDnsFailureRefreshRatein 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_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored.
.envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;- Specified by:
getDnsFailureRefreshRateOrBuilderin 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:
getRespectDnsTtlin 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_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
.envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }- Specified by:
getDnsLookupFamilyValuein 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_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
.envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }- Specified by:
getDnsLookupFamilyin interfaceClusterOrBuilder- Returns:
- The dnsLookupFamily.
-
getDnsResolversList
public List<Address> getDnsResolversList()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;- Specified by:
getDnsResolversListin interfaceClusterOrBuilder
-
getDnsResolversOrBuilderList
public List<? extends AddressOrBuilder> getDnsResolversOrBuilderList()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;- Specified by:
getDnsResolversOrBuilderListin interfaceClusterOrBuilder
-
getDnsResolversCount
public int getDnsResolversCount()
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;- Specified by:
getDnsResolversCountin interfaceClusterOrBuilder
-
getDnsResolvers
public Address getDnsResolvers(int index)
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;- Specified by:
getDnsResolversin interfaceClusterOrBuilder
-
getDnsResolversOrBuilder
public AddressOrBuilder getDnsResolversOrBuilder(int index)
If DNS resolvers are specified and the cluster type is either :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`, or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`, this value is used to specify the cluster’s dns resolvers. If this setting is not specified, the value defaults to the default resolver, which uses /etc/resolv.conf for configuration. For cluster types other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is ignored. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple's API only allows overriding DNS resolvers via system settings.
repeated .envoy.api.v2.core.Address dns_resolvers = 18;- Specified by:
getDnsResolversOrBuilderin interfaceClusterOrBuilder
-
getUseTcpForDnsLookups
public boolean getUseTcpForDnsLookups()
[#next-major-version: Reconcile DNS options in a single message.] Always use TCP queries instead of UDP queries for DNS lookups. Setting this value causes failure if the ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during server startup. Apple' API only uses UDP for DNS resolution.
bool use_tcp_for_dns_lookups = 45;- Specified by:
getUseTcpForDnsLookupsin interfaceClusterOrBuilder- Returns:
- The useTcpForDnsLookups.
-
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.api.v2.cluster.OutlierDetection outlier_detection = 19;- Specified by:
hasOutlierDetectionin 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.api.v2.cluster.OutlierDetection outlier_detection = 19;- Specified by:
getOutlierDetectionin 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.api.v2.cluster.OutlierDetection outlier_detection = 19;- Specified by:
getOutlierDetectionOrBuilderin interfaceClusterOrBuilder
-
hasCleanupInterval
public boolean hasCleanupInterval()
The interval for removing stale hosts from a cluster type :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }- Specified by:
hasCleanupIntervalin 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_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }- Specified by:
getCleanupIntervalin 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_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`. Hosts are considered stale if they have not been used as upstream destinations during this interval. New hosts are added to original destination clusters on demand as new connections are redirected to Envoy, causing the number of hosts in the cluster to grow over time. Hosts that are not stale (they are actively used as destinations) are kept in the cluster, which allows connections to them remain open, saving the latency that would otherwise be spent on opening new connections. If this setting is not specified, the value defaults to 5000ms. For cluster types other than :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>` this setting is ignored.
.google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }- Specified by:
getCleanupIntervalOrBuilderin 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.api.v2.core.BindConfig upstream_bind_config = 21;- Specified by:
hasUpstreamBindConfigin 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.api.v2.core.BindConfig upstream_bind_config = 21;- Specified by:
getUpstreamBindConfigin 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.api.v2.core.BindConfig upstream_bind_config = 21;- Specified by:
getUpstreamBindConfigOrBuilderin interfaceClusterOrBuilder
-
hasLbSubsetConfig
public boolean hasLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;- Specified by:
hasLbSubsetConfigin interfaceClusterOrBuilder- Returns:
- Whether the lbSubsetConfig field is set.
-
getLbSubsetConfig
public Cluster.LbSubsetConfig getLbSubsetConfig()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;- Specified by:
getLbSubsetConfigin interfaceClusterOrBuilder- Returns:
- The lbSubsetConfig.
-
getLbSubsetConfigOrBuilder
public Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder()
Configuration for load balancing subsetting.
.envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;- Specified by:
getLbSubsetConfigOrBuilderin interfaceClusterOrBuilder
-
hasRingHashLbConfig
public boolean hasRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;- Specified by:
hasRingHashLbConfigin interfaceClusterOrBuilder- Returns:
- Whether the ringHashLbConfig field is set.
-
getRingHashLbConfig
public Cluster.RingHashLbConfig getRingHashLbConfig()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;- Specified by:
getRingHashLbConfigin interfaceClusterOrBuilder- Returns:
- The ringHashLbConfig.
-
getRingHashLbConfigOrBuilder
public Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder()
Optional configuration for the Ring Hash load balancing policy.
.envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;- Specified by:
getRingHashLbConfigOrBuilderin interfaceClusterOrBuilder
-
hasOriginalDstLbConfig
public boolean hasOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;- Specified by:
hasOriginalDstLbConfigin interfaceClusterOrBuilder- Returns:
- Whether the originalDstLbConfig field is set.
-
getOriginalDstLbConfig
public Cluster.OriginalDstLbConfig getOriginalDstLbConfig()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;- Specified by:
getOriginalDstLbConfigin interfaceClusterOrBuilder- Returns:
- The originalDstLbConfig.
-
getOriginalDstLbConfigOrBuilder
public Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder()
Optional configuration for the Original Destination load balancing policy.
.envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;- Specified by:
getOriginalDstLbConfigOrBuilderin interfaceClusterOrBuilder
-
hasLeastRequestLbConfig
public boolean hasLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;- Specified by:
hasLeastRequestLbConfigin interfaceClusterOrBuilder- Returns:
- Whether the leastRequestLbConfig field is set.
-
getLeastRequestLbConfig
public Cluster.LeastRequestLbConfig getLeastRequestLbConfig()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;- Specified by:
getLeastRequestLbConfigin interfaceClusterOrBuilder- Returns:
- The leastRequestLbConfig.
-
getLeastRequestLbConfigOrBuilder
public Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder()
Optional configuration for the LeastRequest load balancing policy.
.envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;- Specified by:
getLeastRequestLbConfigOrBuilderin interfaceClusterOrBuilder
-
hasCommonLbConfig
public boolean hasCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;- Specified by:
hasCommonLbConfigin interfaceClusterOrBuilder- Returns:
- Whether the commonLbConfig field is set.
-
getCommonLbConfig
public Cluster.CommonLbConfig getCommonLbConfig()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;- Specified by:
getCommonLbConfigin interfaceClusterOrBuilder- Returns:
- The commonLbConfig.
-
getCommonLbConfigOrBuilder
public Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder()
Common configuration for all load balancer implementations.
.envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;- Specified by:
getCommonLbConfigOrBuilderin interfaceClusterOrBuilder
-
hasTransportSocket
public boolean hasTransportSocket()
Optional custom transport socket implementation to use for upstream connections. To setup TLS, set a transport socket with name `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;- Specified by:
hasTransportSocketin 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 `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;- Specified by:
getTransportSocketin 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 `tls` and :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`. If no transport socket configuration is specified, new connections will be set up with plaintext.
.envoy.api.v2.core.TransportSocket transport_socket = 24;- Specified by:
getTransportSocketOrBuilderin 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.api.v2.core.Metadata metadata = 25;- Specified by:
hasMetadatain 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.api.v2.core.Metadata metadata = 25;- Specified by:
getMetadatain 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.api.v2.core.Metadata metadata = 25;- Specified by:
getMetadataOrBuilderin interfaceClusterOrBuilder
-
getProtocolSelectionValue
public int getProtocolSelectionValue()
Determines how Envoy selects the protocol used to speak to upstream hosts.
.envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;- Specified by:
getProtocolSelectionValuein interfaceClusterOrBuilder- Returns:
- The enum numeric value on the wire for protocolSelection.
-
getProtocolSelection
public Cluster.ClusterProtocolSelection getProtocolSelection()
Determines how Envoy selects the protocol used to speak to upstream hosts.
.envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;- Specified by:
getProtocolSelectionin interfaceClusterOrBuilder- Returns:
- The protocolSelection.
-
hasUpstreamConnectionOptions
public boolean hasUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;- Specified by:
hasUpstreamConnectionOptionsin interfaceClusterOrBuilder- Returns:
- Whether the upstreamConnectionOptions field is set.
-
getUpstreamConnectionOptions
public UpstreamConnectionOptions getUpstreamConnectionOptions()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;- Specified by:
getUpstreamConnectionOptionsin interfaceClusterOrBuilder- Returns:
- The upstreamConnectionOptions.
-
getUpstreamConnectionOptionsOrBuilder
public UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder()
Optional options for upstream connections.
.envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;- Specified by:
getUpstreamConnectionOptionsOrBuilderin 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:
getCloseConnectionsOnHostHealthFailurein interfaceClusterOrBuilder- Returns:
- The closeConnectionsOnHostHealthFailure.
-
getDrainConnectionsOnHostRemoval
public boolean getDrainConnectionsOnHostRemoval()
If set to true, Envoy will ignore the health value of a host when processing its removal from service discovery. This means that if active health checking is used, Envoy will *not* wait for the endpoint to go unhealthy before removing it.
bool drain_connections_on_host_removal = 32 [(.udpa.annotations.field_migrate) = { ... }- Specified by:
getDrainConnectionsOnHostRemovalin interfaceClusterOrBuilder- Returns:
- The drainConnectionsOnHostRemoval.
-
getFiltersList
public List<Filter> getFiltersList()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;- Specified by:
getFiltersListin interfaceClusterOrBuilder
-
getFiltersOrBuilderList
public List<? extends FilterOrBuilder> getFiltersOrBuilderList()
An (optional) network filter chain, listed in the order the filters should be applied. The chain will be applied to all outgoing connections that Envoy makes to the upstream servers of this cluster.
repeated .envoy.api.v2.cluster.Filter filters = 40;- Specified by:
getFiltersOrBuilderListin 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.api.v2.cluster.Filter filters = 40;- Specified by:
getFiltersCountin 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.api.v2.cluster.Filter filters = 40;- Specified by:
getFiltersin 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.api.v2.cluster.Filter filters = 40;- Specified by:
getFiltersOrBuilderin interfaceClusterOrBuilder
-
hasLoadBalancingPolicy
public boolean hasLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;- Specified by:
hasLoadBalancingPolicyin interfaceClusterOrBuilder- Returns:
- Whether the loadBalancingPolicy field is set.
-
getLoadBalancingPolicy
public LoadBalancingPolicy getLoadBalancingPolicy()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;- Specified by:
getLoadBalancingPolicyin interfaceClusterOrBuilder- Returns:
- The loadBalancingPolicy.
-
getLoadBalancingPolicyOrBuilder
public LoadBalancingPolicyOrBuilder getLoadBalancingPolicyOrBuilder()
[#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
.envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;- Specified by:
getLoadBalancingPolicyOrBuilderin 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.api.v2.core.ConfigSource lrs_server = 42;- Specified by:
hasLrsServerin 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.api.v2.core.ConfigSource lrs_server = 42;- Specified by:
getLrsServerin 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.api.v2.core.ConfigSource lrs_server = 42;- Specified by:
getLrsServerOrBuilderin interfaceClusterOrBuilder
-
getTrackTimeoutBudgets
public boolean getTrackTimeoutBudgets()
If track_timeout_budgets is true, the :ref:`timeout budget histograms <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each request. These show what percentage of a request's per try and global timeout was used. A value of 0 would indicate that none of the timeout was used or that the timeout was infinite. A value of 100 would indicate that the request took the entirety of the timeout given to it.
bool track_timeout_budgets = 47;- Specified by:
getTrackTimeoutBudgetsin interfaceClusterOrBuilder- Returns:
- The trackTimeoutBudgets.
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static Cluster parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster parseFrom(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(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static Cluster parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static Cluster parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static Cluster parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static Cluster parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public Cluster.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein 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:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected Cluster.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static Cluster getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<Cluster> parser()
-
getParserForType
public com.google.protobuf.Parser<Cluster> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public Cluster getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-