public static final class Cluster.LbSubsetConfig.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder> 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: 8]Protobuf type
envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig| Modifier and Type | Method and Description |
|---|---|
Cluster.LbSubsetConfig.Builder |
addAllSubsetSelectors(Iterable<? extends Cluster.LbSubsetConfig.LbSubsetSelector> values)
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.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
Cluster.LbSubsetConfig.Builder |
addSubsetSelectors(Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.Builder |
addSubsetSelectors(Cluster.LbSubsetConfig.LbSubsetSelector value)
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.Builder |
addSubsetSelectors(int index,
Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.Builder |
addSubsetSelectors(int index,
Cluster.LbSubsetConfig.LbSubsetSelector value)
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.LbSubsetSelector.Builder |
addSubsetSelectorsBuilder()
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.LbSubsetSelector.Builder |
addSubsetSelectorsBuilder(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.
|
Cluster.LbSubsetConfig |
build() |
Cluster.LbSubsetConfig |
buildPartial() |
Cluster.LbSubsetConfig.Builder |
clear() |
Cluster.LbSubsetConfig.Builder |
clearDefaultSubset()
Specifies the default subset of endpoints used during fallback if
fallback_policy is
:ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
Cluster.LbSubsetConfig.Builder |
clearFallbackPolicy()
The behavior used when no endpoint subset matches the selected route's
metadata.
|
Cluster.LbSubsetConfig.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field) |
Cluster.LbSubsetConfig.Builder |
clearListAsAny()
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.
|
Cluster.LbSubsetConfig.Builder |
clearLocalityWeightAware()
If true, routing to subsets will take into account the localities and locality weights of the
endpoints when making the routing decision.
|
Cluster.LbSubsetConfig.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) |
Cluster.LbSubsetConfig.Builder |
clearPanicModeAny()
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.
|
Cluster.LbSubsetConfig.Builder |
clearScaleLocalityWeight()
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.
|
Cluster.LbSubsetConfig.Builder |
clearSubsetSelectors()
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.Builder |
clone() |
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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
com.google.protobuf.Struct.Builder |
getDefaultSubsetBuilder()
Specifies the default subset of endpoints used during fallback if
fallback_policy is
:ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
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.
|
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.
|
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.
|
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.
|
Cluster.LbSubsetConfig.LbSubsetSelector.Builder |
getSubsetSelectorsBuilder(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.
|
List<Cluster.LbSubsetConfig.LbSubsetSelector.Builder> |
getSubsetSelectorsBuilderList()
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.
|
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.
|
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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
Cluster.LbSubsetConfig.Builder |
mergeDefaultSubset(com.google.protobuf.Struct value)
Specifies the default subset of endpoints used during fallback if
fallback_policy is
:ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
Cluster.LbSubsetConfig.Builder |
mergeFrom(Cluster.LbSubsetConfig other) |
Cluster.LbSubsetConfig.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
Cluster.LbSubsetConfig.Builder |
mergeFrom(com.google.protobuf.Message other) |
Cluster.LbSubsetConfig.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
Cluster.LbSubsetConfig.Builder |
removeSubsetSelectors(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.
|
Cluster.LbSubsetConfig.Builder |
setDefaultSubset(com.google.protobuf.Struct.Builder builderForValue)
Specifies the default subset of endpoints used during fallback if
fallback_policy is
:ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
Cluster.LbSubsetConfig.Builder |
setDefaultSubset(com.google.protobuf.Struct value)
Specifies the default subset of endpoints used during fallback if
fallback_policy is
:ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`.
|
Cluster.LbSubsetConfig.Builder |
setFallbackPolicy(Cluster.LbSubsetConfig.LbSubsetFallbackPolicy value)
The behavior used when no endpoint subset matches the selected route's
metadata.
|
Cluster.LbSubsetConfig.Builder |
setFallbackPolicyValue(int value)
The behavior used when no endpoint subset matches the selected route's
metadata.
|
Cluster.LbSubsetConfig.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
Cluster.LbSubsetConfig.Builder |
setListAsAny(boolean value)
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.
|
Cluster.LbSubsetConfig.Builder |
setLocalityWeightAware(boolean value)
If true, routing to subsets will take into account the localities and locality weights of the
endpoints when making the routing decision.
|
Cluster.LbSubsetConfig.Builder |
setPanicModeAny(boolean value)
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.
|
Cluster.LbSubsetConfig.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
int index,
Object value) |
Cluster.LbSubsetConfig.Builder |
setScaleLocalityWeight(boolean value)
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.
|
Cluster.LbSubsetConfig.Builder |
setSubsetSelectors(int index,
Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.Builder |
setSubsetSelectors(int index,
Cluster.LbSubsetConfig.LbSubsetSelector value)
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.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, newBuilderForField, onBuilt, onChanged, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeFrom, newUninitializedMessageExceptionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder clear()
clear in interface com.google.protobuf.Message.Builderclear in interface com.google.protobuf.MessageLite.Builderclear in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType in interface com.google.protobuf.Message.BuildergetDescriptorForType in interface com.google.protobuf.MessageOrBuildergetDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig getDefaultInstanceForType()
getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilderpublic Cluster.LbSubsetConfig build()
build in interface com.google.protobuf.Message.Builderbuild in interface com.google.protobuf.MessageLite.Builderpublic Cluster.LbSubsetConfig buildPartial()
buildPartial in interface com.google.protobuf.Message.BuilderbuildPartial in interface com.google.protobuf.MessageLite.Builderpublic Cluster.LbSubsetConfig.Builder clone()
clone in interface com.google.protobuf.Message.Builderclone in interface com.google.protobuf.MessageLite.Builderclone in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
setField in interface com.google.protobuf.Message.BuildersetField in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField in interface com.google.protobuf.Message.BuilderclearField in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof in interface com.google.protobuf.Message.BuilderclearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
setRepeatedField in interface com.google.protobuf.Message.BuildersetRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
addRepeatedField in interface com.google.protobuf.Message.BuilderaddRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder mergeFrom(Cluster.LbSubsetConfig other)
public final boolean isInitialized()
isInitialized in interface com.google.protobuf.MessageLiteOrBuilderisInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public Cluster.LbSubsetConfig.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
mergeFrom in interface com.google.protobuf.Message.BuildermergeFrom in interface com.google.protobuf.MessageLite.BuildermergeFrom in class com.google.protobuf.AbstractMessage.Builder<Cluster.LbSubsetConfig.Builder>IOExceptionpublic int getFallbackPolicyValue()
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }getFallbackPolicyValue in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setFallbackPolicyValue(int value)
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }getFallbackPolicy in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setFallbackPolicy(Cluster.LbSubsetConfig.LbSubsetFallbackPolicy value)
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }public Cluster.LbSubsetConfig.Builder clearFallbackPolicy()
The behavior used when no endpoint subset matches the selected route's metadata. The value defaults to :ref:`NO_FALLBACK<envoy_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.envoy.config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy fallback_policy = 1 [(.validate.rules) = { ... }public boolean hasDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;hasDefaultSubset in interface Cluster.LbSubsetConfigOrBuilderpublic com.google.protobuf.Struct getDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;getDefaultSubset in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setDefaultSubset(com.google.protobuf.Struct value)
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;public Cluster.LbSubsetConfig.Builder setDefaultSubset(com.google.protobuf.Struct.Builder builderForValue)
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;public Cluster.LbSubsetConfig.Builder mergeDefaultSubset(com.google.protobuf.Struct value)
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;public Cluster.LbSubsetConfig.Builder clearDefaultSubset()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;public com.google.protobuf.Struct.Builder getDefaultSubsetBuilder()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;public com.google.protobuf.StructOrBuilder getDefaultSubsetOrBuilder()
Specifies the default subset of endpoints used during fallback if fallback_policy is :ref:`DEFAULT_SUBSET<envoy_api_enum_value_config.cluster.v4alpha.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_api_enum_value_config.cluster.v4alpha.Cluster.LbSubsetConfig.LbSubsetFallbackPolicy.NO_FALLBACK>`.
.google.protobuf.Struct default_subset = 2;getDefaultSubsetOrBuilder in interface Cluster.LbSubsetConfigOrBuilderpublic 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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;getSubsetSelectorsList in interface Cluster.LbSubsetConfigOrBuilderpublic 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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;getSubsetSelectorsCount in interface Cluster.LbSubsetConfigOrBuilderpublic 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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;getSubsetSelectors in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setSubsetSelectors(int index, Cluster.LbSubsetConfig.LbSubsetSelector value)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder setSubsetSelectors(int index, Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder addSubsetSelectors(Cluster.LbSubsetConfig.LbSubsetSelector value)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder addSubsetSelectors(int index, Cluster.LbSubsetConfig.LbSubsetSelector value)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder addSubsetSelectors(Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder addSubsetSelectors(int index, Cluster.LbSubsetConfig.LbSubsetSelector.Builder builderForValue)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder addAllSubsetSelectors(Iterable<? extends Cluster.LbSubsetConfig.LbSubsetSelector> values)
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder clearSubsetSelectors()
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.Builder removeSubsetSelectors(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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.LbSubsetSelector.Builder getSubsetSelectorsBuilder(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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;getSubsetSelectorsOrBuilder in interface Cluster.LbSubsetConfigOrBuilderpublic 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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;getSubsetSelectorsOrBuilderList in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.LbSubsetSelector.Builder addSubsetSelectorsBuilder()
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public Cluster.LbSubsetConfig.LbSubsetSelector.Builder addSubsetSelectorsBuilder(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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;public List<Cluster.LbSubsetConfig.LbSubsetSelector.Builder> getSubsetSelectorsBuilderList()
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.v4alpha.Cluster.LbSubsetConfig.LbSubsetSelector subset_selectors = 3;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;getLocalityWeightAware in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setLocalityWeightAware(boolean value)
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;public Cluster.LbSubsetConfig.Builder clearLocalityWeightAware()
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;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;getScaleLocalityWeight in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setScaleLocalityWeight(boolean value)
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;public Cluster.LbSubsetConfig.Builder clearScaleLocalityWeight()
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;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;getPanicModeAny in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setPanicModeAny(boolean value)
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;public Cluster.LbSubsetConfig.Builder clearPanicModeAny()
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;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;getListAsAny in interface Cluster.LbSubsetConfigOrBuilderpublic Cluster.LbSubsetConfig.Builder setListAsAny(boolean value)
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;public Cluster.LbSubsetConfig.Builder clearListAsAny()
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;public final Cluster.LbSubsetConfig.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields in interface com.google.protobuf.Message.BuildersetUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>public final Cluster.LbSubsetConfig.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields in interface com.google.protobuf.Message.BuildermergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<Cluster.LbSubsetConfig.Builder>Copyright © 2018–2021 The Envoy Project. All rights reserved.