Class Cluster.LbSubsetConfig
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessage
-
- io.envoyproxy.envoy.config.cluster.v3.Cluster.LbSubsetConfig
-
- All Implemented Interfaces:
com.google.protobuf.Message
,com.google.protobuf.MessageLite
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,Cluster.LbSubsetConfigOrBuilder
,java.io.Serializable
- Enclosing class:
- Cluster
public static final class Cluster.LbSubsetConfig extends com.google.protobuf.GeneratedMessage implements Cluster.LbSubsetConfigOrBuilder
Optionally divide the endpoints in this cluster into subsets defined by endpoint metadata and selected by route and weighted cluster metadata. [#next-free-field: 9]
Protobuf typeenvoy.config.cluster.v3.Cluster.LbSubsetConfig
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Cluster.LbSubsetConfig.Builder
Optionally divide the endpoints in this cluster into subsets defined by endpoint metadata and selected by route and weighted cluster metadata.static class
Cluster.LbSubsetConfig.LbSubsetFallbackPolicy
If NO_FALLBACK is selected, a result equivalent to no healthy hosts is reported.static class
Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy
Protobuf enumenvoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy
static class
Cluster.LbSubsetConfig.LbSubsetSelector
Specifications for subsets.static interface
Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,T extends java.lang.Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description private int
bitField0_
private static Cluster.LbSubsetConfig
DEFAULT_INSTANCE
static int
DEFAULT_SUBSET_FIELD_NUMBER
private com.google.protobuf.Struct
defaultSubset_
static int
FALLBACK_POLICY_FIELD_NUMBER
private int
fallbackPolicy_
static int
LIST_AS_ANY_FIELD_NUMBER
private boolean
listAsAny_
static int
LOCALITY_WEIGHT_AWARE_FIELD_NUMBER
private boolean
localityWeightAware_
private byte
memoizedIsInitialized
static int
METADATA_FALLBACK_POLICY_FIELD_NUMBER
private int
metadataFallbackPolicy_
static int
PANIC_MODE_ANY_FIELD_NUMBER
private boolean
panicModeAny_
private static com.google.protobuf.Parser<Cluster.LbSubsetConfig>
PARSER
static int
SCALE_LOCALITY_WEIGHT_FIELD_NUMBER
private boolean
scaleLocalityWeight_
private static long
serialVersionUID
static int
SUBSET_SELECTORS_FIELD_NUMBER
private java.util.List<Cluster.LbSubsetConfig.LbSubsetSelector>
subsetSelectors_
-
Constructor Summary
Constructors Modifier Constructor Description private
LbSubsetConfig()
private
LbSubsetConfig(com.google.protobuf.GeneratedMessage.Builder<?> builder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
static Cluster.LbSubsetConfig
getDefaultInstance()
Cluster.LbSubsetConfig
getDefaultInstanceForType()
com.google.protobuf.Struct
getDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.com.google.protobuf.StructOrBuilder
getDefaultSubsetOrBuilder()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.static com.google.protobuf.Descriptors.Descriptor
getDescriptor()
Cluster.LbSubsetConfig.LbSubsetFallbackPolicy
getFallbackPolicy()
The behavior used when no endpoint subset matches the selected route's metadata.int
getFallbackPolicyValue()
The behavior used when no endpoint subset matches the selected route's metadata.boolean
getListAsAny()
If true, metadata specified for a metadata key will be matched against the corresponding endpoint metadata if the endpoint metadata matches the value exactly OR it is a list value and any of the elements in the list matches the criteria.boolean
getLocalityWeightAware()
If true, routing to subsets will take into account the localities and locality weights of the endpoints when making the routing decision.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy
getMetadataFallbackPolicy()
Fallback mechanism that allows to try different route metadata until a host is found.int
getMetadataFallbackPolicyValue()
Fallback mechanism that allows to try different route metadata until a host is found.boolean
getPanicModeAny()
If true, when a fallback policy is configured and its corresponding subset fails to find a host this will cause any host to be selected instead.com.google.protobuf.Parser<Cluster.LbSubsetConfig>
getParserForType()
boolean
getScaleLocalityWeight()
When used with locality_weight_aware, scales the weight of each locality by the ratio of hosts in the subset vs hosts in the original subset.int
getSerializedSize()
Cluster.LbSubsetConfig.LbSubsetSelector
getSubsetSelectors(int index)
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value.int
getSubsetSelectorsCount()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value.java.util.List<Cluster.LbSubsetConfig.LbSubsetSelector>
getSubsetSelectorsList()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value.Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder
getSubsetSelectorsOrBuilder(int index)
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value.java.util.List<? extends Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder>
getSubsetSelectorsOrBuilderList()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value.boolean
hasDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.int
hashCode()
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable()
boolean
isInitialized()
static Cluster.LbSubsetConfig.Builder
newBuilder()
static Cluster.LbSubsetConfig.Builder
newBuilder(Cluster.LbSubsetConfig prototype)
Cluster.LbSubsetConfig.Builder
newBuilderForType()
protected Cluster.LbSubsetConfig.Builder
newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
static Cluster.LbSubsetConfig
parseDelimitedFrom(java.io.InputStream input)
static Cluster.LbSubsetConfig
parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster.LbSubsetConfig
parseFrom(byte[] data)
static Cluster.LbSubsetConfig
parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster.LbSubsetConfig
parseFrom(com.google.protobuf.ByteString data)
static Cluster.LbSubsetConfig
parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster.LbSubsetConfig
parseFrom(com.google.protobuf.CodedInputStream input)
static Cluster.LbSubsetConfig
parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster.LbSubsetConfig
parseFrom(java.io.InputStream input)
static Cluster.LbSubsetConfig
parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Cluster.LbSubsetConfig
parseFrom(java.nio.ByteBuffer data)
static Cluster.LbSubsetConfig
parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.protobuf.Parser<Cluster.LbSubsetConfig>
parser()
Cluster.LbSubsetConfig.Builder
toBuilder()
void
writeTo(com.google.protobuf.CodedOutputStream output)
-
Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
bitField0_
private int bitField0_
-
FALLBACK_POLICY_FIELD_NUMBER
public static final int FALLBACK_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
fallbackPolicy_
private int fallbackPolicy_
-
DEFAULT_SUBSET_FIELD_NUMBER
public static final int DEFAULT_SUBSET_FIELD_NUMBER
- See Also:
- Constant Field Values
-
defaultSubset_
private com.google.protobuf.Struct defaultSubset_
-
SUBSET_SELECTORS_FIELD_NUMBER
public static final int SUBSET_SELECTORS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
subsetSelectors_
private java.util.List<Cluster.LbSubsetConfig.LbSubsetSelector> subsetSelectors_
-
LOCALITY_WEIGHT_AWARE_FIELD_NUMBER
public static final int LOCALITY_WEIGHT_AWARE_FIELD_NUMBER
- See Also:
- Constant Field Values
-
localityWeightAware_
private boolean localityWeightAware_
-
SCALE_LOCALITY_WEIGHT_FIELD_NUMBER
public static final int SCALE_LOCALITY_WEIGHT_FIELD_NUMBER
- See Also:
- Constant Field Values
-
scaleLocalityWeight_
private boolean scaleLocalityWeight_
-
PANIC_MODE_ANY_FIELD_NUMBER
public static final int PANIC_MODE_ANY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
panicModeAny_
private boolean panicModeAny_
-
LIST_AS_ANY_FIELD_NUMBER
public static final int LIST_AS_ANY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
listAsAny_
private boolean listAsAny_
-
METADATA_FALLBACK_POLICY_FIELD_NUMBER
public static final int METADATA_FALLBACK_POLICY_FIELD_NUMBER
- See Also:
- Constant Field Values
-
metadataFallbackPolicy_
private int metadataFallbackPolicy_
-
memoizedIsInitialized
private byte memoizedIsInitialized
-
DEFAULT_INSTANCE
private static final Cluster.LbSubsetConfig DEFAULT_INSTANCE
-
PARSER
private static final com.google.protobuf.Parser<Cluster.LbSubsetConfig> PARSER
-
-
Method Detail
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage
-
getFallbackPolicyValue
public int getFallbackPolicyValue()
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }
- Specified by:
getFallbackPolicyValue
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The enum numeric value on the wire for fallbackPolicy.
-
getFallbackPolicy
public Cluster.LbSubsetConfig.LbSubsetFallbackPolicy getFallbackPolicy()
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }
- Specified by:
getFallbackPolicy
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The fallbackPolicy.
-
hasDefaultSubset
public boolean hasDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`. Each field in default_subset is compared to the matching LbEndpoint.Metadata under the ``envoy.lb`` namespace. It is valid for no hosts to match, in which case the behavior is the same as a fallback_policy of :ref:`NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;
- Specified by:
hasDefaultSubset
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- Whether the defaultSubset field is set.
-
getDefaultSubset
public com.google.protobuf.Struct getDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`. Each field in default_subset is compared to the matching LbEndpoint.Metadata under the ``envoy.lb`` namespace. It is valid for no hosts to match, in which case the behavior is the same as a fallback_policy of :ref:`NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;
- Specified by:
getDefaultSubset
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The defaultSubset.
-
getDefaultSubsetOrBuilder
public com.google.protobuf.StructOrBuilder getDefaultSubsetOrBuilder()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`. Each field in default_subset is compared to the matching LbEndpoint.Metadata under the ``envoy.lb`` namespace. It is valid for no hosts to match, in which case the behavior is the same as a fallback_policy of :ref:`NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;
- Specified by:
getDefaultSubsetOrBuilder
in interfaceCluster.LbSubsetConfigOrBuilder
-
getSubsetSelectorsList
public java.util.List<Cluster.LbSubsetConfig.LbSubsetSelector> getSubsetSelectorsList()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value. For example: .. code-block:: json { "subset_selectors": [ { "keys": [ "version" ] }, { "keys": [ "stage", "hardware_type" ] } ]} A subset is matched when the metadata from the selected route and weighted cluster contains the same keys and values as the subset's metadata. The same host may appear in multiple subsets.
repeated .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;
- Specified by:
getSubsetSelectorsList
in interfaceCluster.LbSubsetConfigOrBuilder
-
getSubsetSelectorsOrBuilderList
public java.util.List<? extends Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder> getSubsetSelectorsOrBuilderList()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value. For example: .. code-block:: json { "subset_selectors": [ { "keys": [ "version" ] }, { "keys": [ "stage", "hardware_type" ] } ]} A subset is matched when the metadata from the selected route and weighted cluster contains the same keys and values as the subset's metadata. The same host may appear in multiple subsets.
repeated .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;
- Specified by:
getSubsetSelectorsOrBuilderList
in interfaceCluster.LbSubsetConfigOrBuilder
-
getSubsetSelectorsCount
public int getSubsetSelectorsCount()
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value. For example: .. code-block:: json { "subset_selectors": [ { "keys": [ "version" ] }, { "keys": [ "stage", "hardware_type" ] } ]} A subset is matched when the metadata from the selected route and weighted cluster contains the same keys and values as the subset's metadata. The same host may appear in multiple subsets.
repeated .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;
- Specified by:
getSubsetSelectorsCount
in interfaceCluster.LbSubsetConfigOrBuilder
-
getSubsetSelectors
public Cluster.LbSubsetConfig.LbSubsetSelector getSubsetSelectors(int index)
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value. For example: .. code-block:: json { "subset_selectors": [ { "keys": [ "version" ] }, { "keys": [ "stage", "hardware_type" ] } ]} A subset is matched when the metadata from the selected route and weighted cluster contains the same keys and values as the subset's metadata. The same host may appear in multiple subsets.
repeated .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;
- Specified by:
getSubsetSelectors
in interfaceCluster.LbSubsetConfigOrBuilder
-
getSubsetSelectorsOrBuilder
public Cluster.LbSubsetConfig.LbSubsetSelectorOrBuilder getSubsetSelectorsOrBuilder(int index)
For each entry, LbEndpoint.Metadata's ``envoy.lb`` namespace is traversed and a subset is created for each unique combination of key and value. For example: .. code-block:: json { "subset_selectors": [ { "keys": [ "version" ] }, { "keys": [ "stage", "hardware_type" ] } ]} A subset is matched when the metadata from the selected route and weighted cluster contains the same keys and values as the subset's metadata. The same host may appear in multiple subsets.
repeated .envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;
- Specified by:
getSubsetSelectorsOrBuilder
in interfaceCluster.LbSubsetConfigOrBuilder
-
getLocalityWeightAware
public boolean getLocalityWeightAware()
If true, routing to subsets will take into account the localities and locality weights of the endpoints when making the routing decision. There are some potential pitfalls associated with enabling this feature, as the resulting traffic split after applying both a subset match and locality weights might be undesirable. Consider for example a situation in which you have 50/50 split across two localities X/Y which have 100 hosts each without subsetting. If the subset LB results in X having only 1 host selected but Y having 100, then a lot more load is being dumped on the single host in X than originally anticipated in the load balancing assignment delivered via EDS.
bool locality_weight_aware = 4;
- Specified by:
getLocalityWeightAware
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The localityWeightAware.
-
getScaleLocalityWeight
public boolean getScaleLocalityWeight()
When used with locality_weight_aware, scales the weight of each locality by the ratio of hosts in the subset vs hosts in the original subset. This aims to even out the load going to an individual locality if said locality is disproportionately affected by the subset predicate.
bool scale_locality_weight = 5;
- Specified by:
getScaleLocalityWeight
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The scaleLocalityWeight.
-
getPanicModeAny
public boolean getPanicModeAny()
If true, when a fallback policy is configured and its corresponding subset fails to find a host this will cause any host to be selected instead. This is useful when using the default subset as the fallback policy, given the default subset might become empty. With this option enabled, if that happens the LB will attempt to select a host from the entire cluster.
bool panic_mode_any = 6;
- Specified by:
getPanicModeAny
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The panicModeAny.
-
getListAsAny
public boolean getListAsAny()
If true, metadata specified for a metadata key will be matched against the corresponding endpoint metadata if the endpoint metadata matches the value exactly OR it is a list value and any of the elements in the list matches the criteria.
bool list_as_any = 7;
- Specified by:
getListAsAny
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The listAsAny.
-
getMetadataFallbackPolicyValue
public int getMetadataFallbackPolicyValue()
Fallback mechanism that allows to try different route metadata until a host is found. If load balancing process, including all its mechanisms (like :ref:`fallback_policy<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.fallback_policy>`) fails to select a host, this policy decides if and how the process is repeated using another metadata. The value defaults to :ref:`METADATA_NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy.METADATA_NO_FALLBACK>`.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy metadata_fallback_policy = 8 [(.validate.rules) = { ... }
- Specified by:
getMetadataFallbackPolicyValue
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The enum numeric value on the wire for metadataFallbackPolicy.
-
getMetadataFallbackPolicy
public Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy getMetadataFallbackPolicy()
Fallback mechanism that allows to try different route metadata until a host is found. If load balancing process, including all its mechanisms (like :ref:`fallback_policy<envoy_v3_api_field_config.cluster.v3.Cluster.LbSubsetConfig.fallback_policy>`) fails to select a host, this policy decides if and how the process is repeated using another metadata. The value defaults to :ref:`METADATA_NO_FALLBACK<envoy_v3_api_enum_value_config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy.METADATA_NO_FALLBACK>`.
.envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetMetadataFallbackPolicy metadata_fallback_policy = 8 [(.validate.rules) = { ... }
- Specified by:
getMetadataFallbackPolicy
in interfaceCluster.LbSubsetConfigOrBuilder
- Returns:
- The metadataFallbackPolicy.
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessage
- Throws:
java.io.IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessage
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster.LbSubsetConfig 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.LbSubsetConfig parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Cluster.LbSubsetConfig parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static Cluster.LbSubsetConfig parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static Cluster.LbSubsetConfig parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilderForType
public Cluster.LbSubsetConfig.Builder newBuilderForType()
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
public static Cluster.LbSubsetConfig.Builder newBuilder()
-
newBuilder
public static Cluster.LbSubsetConfig.Builder newBuilder(Cluster.LbSubsetConfig prototype)
-
toBuilder
public Cluster.LbSubsetConfig.Builder toBuilder()
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected Cluster.LbSubsetConfig.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
- Overrides:
newBuilderForType
in classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
public static Cluster.LbSubsetConfig getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<Cluster.LbSubsetConfig> parser()
-
getParserForType
public com.google.protobuf.Parser<Cluster.LbSubsetConfig> getParserForType()
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
public Cluster.LbSubsetConfig getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-
-