Package io.envoyproxy.envoy.api.v2
Class ClusterLoadAssignment.Policy
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
io.envoyproxy.envoy.api.v2.ClusterLoadAssignment.Policy
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,ClusterLoadAssignment.PolicyOrBuilder,Serializable
- Enclosing class:
- ClusterLoadAssignment
public static final class ClusterLoadAssignment.Policy
extends com.google.protobuf.GeneratedMessageV3
implements ClusterLoadAssignment.PolicyOrBuilder
Load balancing policy settings. [#next-free-field: 6]Protobuf type
envoy.api.v2.ClusterLoadAssignment.Policy- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classLoad balancing policy settings.static final class[#not-implemented-hide:]static interfaceNested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intFields inherited from class com.google.protobuf.GeneratedMessageV3
alwaysUseFieldBuilders, unknownFieldsFields inherited from class com.google.protobuf.AbstractMessage
memoizedSizeFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic ClusterLoadAssignment.Policystatic final com.google.protobuf.Descriptors.DescriptorbooleanDeprecated.envoy.api.v2.ClusterLoadAssignment.Policy.disable_overprovisioning is deprecated.getDropOverloads(int index) Action to trim the overall incoming traffic to protect the upstream hosts.intAction to trim the overall incoming traffic to protect the upstream hosts.Action to trim the overall incoming traffic to protect the upstream hosts.getDropOverloadsOrBuilder(int index) Action to trim the overall incoming traffic to protect the upstream hosts.Action to trim the overall incoming traffic to protect the upstream hosts.com.google.protobuf.DurationThe max time until which the endpoints from this assignment can be used.com.google.protobuf.DurationOrBuilderThe max time until which the endpoints from this assignment can be used.com.google.protobuf.UInt32ValuePriority levels and localities are considered overprovisioned with this factor (in percentage).com.google.protobuf.UInt32ValueOrBuilderPriority levels and localities are considered overprovisioned with this factor (in percentage).com.google.protobuf.Parser<ClusterLoadAssignment.Policy>intbooleanThe max time until which the endpoints from this assignment can be used.inthashCode()booleanPriority levels and localities are considered overprovisioned with this factor (in percentage).protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleannewBuilder(ClusterLoadAssignment.Policy prototype) protected ClusterLoadAssignment.Policy.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused) static ClusterLoadAssignment.PolicyparseDelimitedFrom(InputStream input) static ClusterLoadAssignment.PolicyparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static ClusterLoadAssignment.PolicyparseFrom(byte[] data) static ClusterLoadAssignment.PolicyparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static ClusterLoadAssignment.PolicyparseFrom(com.google.protobuf.ByteString data) static ClusterLoadAssignment.PolicyparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static ClusterLoadAssignment.PolicyparseFrom(com.google.protobuf.CodedInputStream input) static ClusterLoadAssignment.PolicyparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static ClusterLoadAssignment.PolicyparseFrom(InputStream input) static ClusterLoadAssignment.PolicyparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static ClusterLoadAssignment.PolicyparseFrom(ByteBuffer data) static ClusterLoadAssignment.PolicyparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<ClusterLoadAssignment.Policy>parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, 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, writeStringNoTagMethods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
DROP_OVERLOADS_FIELD_NUMBER
public static final int DROP_OVERLOADS_FIELD_NUMBER- See Also:
-
OVERPROVISIONING_FACTOR_FIELD_NUMBER
public static final int OVERPROVISIONING_FACTOR_FIELD_NUMBER- See Also:
-
ENDPOINT_STALE_AFTER_FIELD_NUMBER
public static final int ENDPOINT_STALE_AFTER_FIELD_NUMBER- See Also:
-
DISABLE_OVERPROVISIONING_FIELD_NUMBER
public static final int DISABLE_OVERPROVISIONING_FIELD_NUMBER- See Also:
-
-
Method Details
-
newInstance
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getDropOverloadsList
Action to trim the overall incoming traffic to protect the upstream hosts. This action allows protection in case the hosts are unable to recover from an outage, or unable to autoscale or unable to handle incoming traffic volume for any reason. At the client each category is applied one after the other to generate the 'actual' drop percentage on all outgoing traffic. For example: .. code-block:: json { "drop_overloads": [ { "category": "throttle", "drop_percentage": 60 } { "category": "lb", "drop_percentage": 50 } ]} The actual drop percentages applied to the traffic at the clients will be "throttle"_drop = 60% "lb"_drop = 20% // 50% of the remaining 'actual' load, which is 40%. actual_outgoing_load = 20% // remaining after applying all categories. [#not-implemented-hide:]repeated .envoy.api.v2.ClusterLoadAssignment.Policy.DropOverload drop_overloads = 2;- Specified by:
getDropOverloadsListin interfaceClusterLoadAssignment.PolicyOrBuilder
-
getDropOverloadsOrBuilderList
public List<? extends ClusterLoadAssignment.Policy.DropOverloadOrBuilder> getDropOverloadsOrBuilderList()Action to trim the overall incoming traffic to protect the upstream hosts. This action allows protection in case the hosts are unable to recover from an outage, or unable to autoscale or unable to handle incoming traffic volume for any reason. At the client each category is applied one after the other to generate the 'actual' drop percentage on all outgoing traffic. For example: .. code-block:: json { "drop_overloads": [ { "category": "throttle", "drop_percentage": 60 } { "category": "lb", "drop_percentage": 50 } ]} The actual drop percentages applied to the traffic at the clients will be "throttle"_drop = 60% "lb"_drop = 20% // 50% of the remaining 'actual' load, which is 40%. actual_outgoing_load = 20% // remaining after applying all categories. [#not-implemented-hide:]repeated .envoy.api.v2.ClusterLoadAssignment.Policy.DropOverload drop_overloads = 2;- Specified by:
getDropOverloadsOrBuilderListin interfaceClusterLoadAssignment.PolicyOrBuilder
-
getDropOverloadsCount
public int getDropOverloadsCount()Action to trim the overall incoming traffic to protect the upstream hosts. This action allows protection in case the hosts are unable to recover from an outage, or unable to autoscale or unable to handle incoming traffic volume for any reason. At the client each category is applied one after the other to generate the 'actual' drop percentage on all outgoing traffic. For example: .. code-block:: json { "drop_overloads": [ { "category": "throttle", "drop_percentage": 60 } { "category": "lb", "drop_percentage": 50 } ]} The actual drop percentages applied to the traffic at the clients will be "throttle"_drop = 60% "lb"_drop = 20% // 50% of the remaining 'actual' load, which is 40%. actual_outgoing_load = 20% // remaining after applying all categories. [#not-implemented-hide:]repeated .envoy.api.v2.ClusterLoadAssignment.Policy.DropOverload drop_overloads = 2;- Specified by:
getDropOverloadsCountin interfaceClusterLoadAssignment.PolicyOrBuilder
-
getDropOverloads
Action to trim the overall incoming traffic to protect the upstream hosts. This action allows protection in case the hosts are unable to recover from an outage, or unable to autoscale or unable to handle incoming traffic volume for any reason. At the client each category is applied one after the other to generate the 'actual' drop percentage on all outgoing traffic. For example: .. code-block:: json { "drop_overloads": [ { "category": "throttle", "drop_percentage": 60 } { "category": "lb", "drop_percentage": 50 } ]} The actual drop percentages applied to the traffic at the clients will be "throttle"_drop = 60% "lb"_drop = 20% // 50% of the remaining 'actual' load, which is 40%. actual_outgoing_load = 20% // remaining after applying all categories. [#not-implemented-hide:]repeated .envoy.api.v2.ClusterLoadAssignment.Policy.DropOverload drop_overloads = 2;- Specified by:
getDropOverloadsin interfaceClusterLoadAssignment.PolicyOrBuilder
-
getDropOverloadsOrBuilder
Action to trim the overall incoming traffic to protect the upstream hosts. This action allows protection in case the hosts are unable to recover from an outage, or unable to autoscale or unable to handle incoming traffic volume for any reason. At the client each category is applied one after the other to generate the 'actual' drop percentage on all outgoing traffic. For example: .. code-block:: json { "drop_overloads": [ { "category": "throttle", "drop_percentage": 60 } { "category": "lb", "drop_percentage": 50 } ]} The actual drop percentages applied to the traffic at the clients will be "throttle"_drop = 60% "lb"_drop = 20% // 50% of the remaining 'actual' load, which is 40%. actual_outgoing_load = 20% // remaining after applying all categories. [#not-implemented-hide:]repeated .envoy.api.v2.ClusterLoadAssignment.Policy.DropOverload drop_overloads = 2;- Specified by:
getDropOverloadsOrBuilderin interfaceClusterLoadAssignment.PolicyOrBuilder
-
hasOverprovisioningFactor
public boolean hasOverprovisioningFactor()Priority levels and localities are considered overprovisioned with this factor (in percentage). This means that we don't consider a priority level or locality unhealthy until the percentage of healthy hosts multiplied by the overprovisioning factor drops below 100. With the default value 140(1.4), Envoy doesn't consider a priority level or a locality unhealthy until their percentage of healthy hosts drops below 72%. For example: .. code-block:: json { "overprovisioning_factor": 100 } Read more at :ref:`priority levels <arch_overview_load_balancing_priority_levels>` and :ref:`localities <arch_overview_load_balancing_locality_weighted_lb>`..google.protobuf.UInt32Value overprovisioning_factor = 3 [(.validate.rules) = { ... }- Specified by:
hasOverprovisioningFactorin interfaceClusterLoadAssignment.PolicyOrBuilder- Returns:
- Whether the overprovisioningFactor field is set.
-
getOverprovisioningFactor
public com.google.protobuf.UInt32Value getOverprovisioningFactor()Priority levels and localities are considered overprovisioned with this factor (in percentage). This means that we don't consider a priority level or locality unhealthy until the percentage of healthy hosts multiplied by the overprovisioning factor drops below 100. With the default value 140(1.4), Envoy doesn't consider a priority level or a locality unhealthy until their percentage of healthy hosts drops below 72%. For example: .. code-block:: json { "overprovisioning_factor": 100 } Read more at :ref:`priority levels <arch_overview_load_balancing_priority_levels>` and :ref:`localities <arch_overview_load_balancing_locality_weighted_lb>`..google.protobuf.UInt32Value overprovisioning_factor = 3 [(.validate.rules) = { ... }- Specified by:
getOverprovisioningFactorin interfaceClusterLoadAssignment.PolicyOrBuilder- Returns:
- The overprovisioningFactor.
-
getOverprovisioningFactorOrBuilder
public com.google.protobuf.UInt32ValueOrBuilder getOverprovisioningFactorOrBuilder()Priority levels and localities are considered overprovisioned with this factor (in percentage). This means that we don't consider a priority level or locality unhealthy until the percentage of healthy hosts multiplied by the overprovisioning factor drops below 100. With the default value 140(1.4), Envoy doesn't consider a priority level or a locality unhealthy until their percentage of healthy hosts drops below 72%. For example: .. code-block:: json { "overprovisioning_factor": 100 } Read more at :ref:`priority levels <arch_overview_load_balancing_priority_levels>` and :ref:`localities <arch_overview_load_balancing_locality_weighted_lb>`..google.protobuf.UInt32Value overprovisioning_factor = 3 [(.validate.rules) = { ... }- Specified by:
getOverprovisioningFactorOrBuilderin interfaceClusterLoadAssignment.PolicyOrBuilder
-
hasEndpointStaleAfter
public boolean hasEndpointStaleAfter()The max time until which the endpoints from this assignment can be used. If no new assignments are received before this time expires the endpoints are considered stale and should be marked unhealthy. Defaults to 0 which means endpoints never go stale.
.google.protobuf.Duration endpoint_stale_after = 4 [(.validate.rules) = { ... }- Specified by:
hasEndpointStaleAfterin interfaceClusterLoadAssignment.PolicyOrBuilder- Returns:
- Whether the endpointStaleAfter field is set.
-
getEndpointStaleAfter
public com.google.protobuf.Duration getEndpointStaleAfter()The max time until which the endpoints from this assignment can be used. If no new assignments are received before this time expires the endpoints are considered stale and should be marked unhealthy. Defaults to 0 which means endpoints never go stale.
.google.protobuf.Duration endpoint_stale_after = 4 [(.validate.rules) = { ... }- Specified by:
getEndpointStaleAfterin interfaceClusterLoadAssignment.PolicyOrBuilder- Returns:
- The endpointStaleAfter.
-
getEndpointStaleAfterOrBuilder
public com.google.protobuf.DurationOrBuilder getEndpointStaleAfterOrBuilder()The max time until which the endpoints from this assignment can be used. If no new assignments are received before this time expires the endpoints are considered stale and should be marked unhealthy. Defaults to 0 which means endpoints never go stale.
.google.protobuf.Duration endpoint_stale_after = 4 [(.validate.rules) = { ... }- Specified by:
getEndpointStaleAfterOrBuilderin interfaceClusterLoadAssignment.PolicyOrBuilder
-
getDisableOverprovisioning
Deprecated.envoy.api.v2.ClusterLoadAssignment.Policy.disable_overprovisioning is deprecated. See envoy/api/v2/endpoint.proto;l=101The flag to disable overprovisioning. If it is set to true, :ref:`overprovisioning factor <arch_overview_load_balancing_overprovisioning_factor>` will be ignored and Envoy will not perform graceful failover between priority levels or localities as endpoints become unhealthy. Otherwise Envoy will perform graceful failover as :ref:`overprovisioning factor <arch_overview_load_balancing_overprovisioning_factor>` suggests. [#not-implemented-hide:]
bool disable_overprovisioning = 5 [deprecated = true];- Specified by:
getDisableOverprovisioningin interfaceClusterLoadAssignment.PolicyOrBuilder- Returns:
- The disableOverprovisioning.
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
- 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
- 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 ClusterLoadAssignment.Policy parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static ClusterLoadAssignment.Policy parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static ClusterLoadAssignment.Policy parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
public static ClusterLoadAssignment.Policy.Builder newBuilder(ClusterLoadAssignment.Policy prototype) -
toBuilder
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected ClusterLoadAssignment.Policy.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) - Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-