类 DestinationRuleOuterClass.LocalityLoadBalancerSetting
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
istio.networking.v1alpha3.DestinationRuleOuterClass.LocalityLoadBalancerSetting
- 所有已实现的接口:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,DestinationRuleOuterClass.LocalityLoadBalancerSettingOrBuilder,Serializable
public static final class DestinationRuleOuterClass.LocalityLoadBalancerSetting
extends com.google.protobuf.GeneratedMessageV3
implements DestinationRuleOuterClass.LocalityLoadBalancerSettingOrBuilder
Locality-weighted load balancing allows administrators to control the
distribution of traffic to endpoints based on the localities of where the
traffic originates and where it will terminate. These localities are
specified using arbitrary labels that designate a hierarchy of localities in
{region}/{zone}/{sub-zone} form. For additional detail refer to
[Locality Weight](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight)
The following example shows how to setup locality weights mesh-wide.
Given a mesh with workloads and their service deployed to "us-west/zone1/*"
and "us-west/zone2/*". This example specifies that when traffic accessing a
service originates from workloads in "us-west/zone1/*", 80% of the traffic
will be sent to endpoints in "us-west/zone1/*", i.e the same zone, and the
remaining 20% will go to endpoints in "us-west/zone2/*". This setup is
intended to favor routing traffic to endpoints in the same locality.
A similar setting is specified for traffic originating in "us-west/zone2/*".
```yaml
distribute:
- from: us-west/zone1/*
to:
"us-west/zone1/*": 80
"us-west/zone2/*": 20
- from: us-west/zone2/*
to:
"us-west/zone1/*": 20
"us-west/zone2/*": 80
```
If the goal of the operator is not to distribute load across zones and
regions but rather to restrict the regionality of failover to meet other
operational requirements an operator can set a 'failover' policy instead of
a 'distribute' policy.
The following example sets up a locality failover policy for regions.
Assume a service resides in zones within us-east, us-west & eu-west
this example specifies that when endpoints within us-east become unhealthy
traffic should failover to endpoints in any zone or sub-zone within eu-west
and similarly us-west should failover to us-east.
```yaml
failover:
- from: us-east
to: eu-west
- from: us-west
to: us-east
```
Locality load balancing settings.
Protobuf type istio.networking.v1alpha3.LocalityLoadBalancerSetting- 另请参阅:
-
嵌套类概要
嵌套类修饰符和类型类说明static final classLocality-weighted load balancing allows administrators to control the distribution of traffic to endpoints based on the localities of where the traffic originates and where it will terminate.static final classDescribes how traffic originating in the 'from' zone or sub-zone is distributed over a set of 'to' zones.static interfacestatic final classSpecify the traffic failover policy across regions.static interface从类继承的嵌套类/接口 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 从类继承的嵌套类/接口 com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
字段概要
字段修饰符和类型字段说明static final intstatic final intstatic final int从类继承的字段 com.google.protobuf.GeneratedMessageV3
alwaysUseFieldBuilders, unknownFields从类继承的字段 com.google.protobuf.AbstractMessage
memoizedSize从类继承的字段 com.google.protobuf.AbstractMessageLite
memoizedHashCode -
方法概要
修饰符和类型方法说明booleanstatic final com.google.protobuf.Descriptors.DescriptorgetDistribute(int index) Optional: only one of distribute or failover can be set.intOptional: only one of distribute or failover can be set.Optional: only one of distribute or failover can be set.getDistributeOrBuilder(int index) Optional: only one of distribute or failover can be set.Optional: only one of distribute or failover can be set.com.google.protobuf.BoolValueenable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety.com.google.protobuf.BoolValueOrBuilderenable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety.getFailover(int index) Optional: only failover or distribute can be set.intOptional: only failover or distribute can be set.Optional: only failover or distribute can be set.getFailoverOrBuilder(int index) Optional: only failover or distribute can be set.Optional: only failover or distribute can be set.com.google.protobuf.Parser<DestinationRuleOuterClass.LocalityLoadBalancerSetting> intbooleanenable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety.inthashCode()protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleannewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused) parseDelimitedFrom(InputStream input) parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(byte[] data) parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.ByteString data) parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.CodedInputStream input) parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(InputStream input) parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(ByteBuffer data) parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<DestinationRuleOuterClass.LocalityLoadBalancerSetting> parser()voidwriteTo(com.google.protobuf.CodedOutputStream output) 从类继承的方法 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, writeStringNoTag从类继承的方法 com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString从类继承的方法 com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo从接口继承的方法 com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo从接口继承的方法 com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
字段详细资料
-
DISTRIBUTE_FIELD_NUMBER
public static final int DISTRIBUTE_FIELD_NUMBER- 另请参阅:
-
FAILOVER_FIELD_NUMBER
public static final int FAILOVER_FIELD_NUMBER- 另请参阅:
-
ENABLED_FIELD_NUMBER
public static final int ENABLED_FIELD_NUMBER- 另请参阅:
-
-
方法详细资料
-
newInstance
- 覆盖:
newInstance在类中com.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()- 指定者:
internalGetFieldAccessorTable在类中com.google.protobuf.GeneratedMessageV3
-
getDistributeList
Optional: only one of distribute or failover can be set. Explicitly specify loadbalancing weight across different zones and geographical locations. Refer to [Locality weighted load balancing](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight) If empty, the locality weight is set according to the endpoints number within it.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Distribute distribute = 1; -
getDistributeOrBuilderList
public List<? extends DestinationRuleOuterClass.LocalityLoadBalancerSetting.DistributeOrBuilder> getDistributeOrBuilderList()Optional: only one of distribute or failover can be set. Explicitly specify loadbalancing weight across different zones and geographical locations. Refer to [Locality weighted load balancing](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight) If empty, the locality weight is set according to the endpoints number within it.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Distribute distribute = 1; -
getDistributeCount
public int getDistributeCount()Optional: only one of distribute or failover can be set. Explicitly specify loadbalancing weight across different zones and geographical locations. Refer to [Locality weighted load balancing](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight) If empty, the locality weight is set according to the endpoints number within it.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Distribute distribute = 1; -
getDistribute
Optional: only one of distribute or failover can be set. Explicitly specify loadbalancing weight across different zones and geographical locations. Refer to [Locality weighted load balancing](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight) If empty, the locality weight is set according to the endpoints number within it.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Distribute distribute = 1; -
getDistributeOrBuilder
public DestinationRuleOuterClass.LocalityLoadBalancerSetting.DistributeOrBuilder getDistributeOrBuilder(int index) Optional: only one of distribute or failover can be set. Explicitly specify loadbalancing weight across different zones and geographical locations. Refer to [Locality weighted load balancing](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/locality_weight) If empty, the locality weight is set according to the endpoints number within it.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Distribute distribute = 1; -
getFailoverList
Optional: only failover or distribute can be set. Explicitly specify the region traffic will land on when endpoints in local region becomes unhealthy. Should be used together with OutlierDetection to detect unhealthy endpoints. Note: if no OutlierDetection specified, this will not take effect.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Failover failover = 2; -
getFailoverOrBuilderList
public List<? extends DestinationRuleOuterClass.LocalityLoadBalancerSetting.FailoverOrBuilder> getFailoverOrBuilderList()Optional: only failover or distribute can be set. Explicitly specify the region traffic will land on when endpoints in local region becomes unhealthy. Should be used together with OutlierDetection to detect unhealthy endpoints. Note: if no OutlierDetection specified, this will not take effect.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Failover failover = 2; -
getFailoverCount
public int getFailoverCount()Optional: only failover or distribute can be set. Explicitly specify the region traffic will land on when endpoints in local region becomes unhealthy. Should be used together with OutlierDetection to detect unhealthy endpoints. Note: if no OutlierDetection specified, this will not take effect.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Failover failover = 2; -
getFailover
Optional: only failover or distribute can be set. Explicitly specify the region traffic will land on when endpoints in local region becomes unhealthy. Should be used together with OutlierDetection to detect unhealthy endpoints. Note: if no OutlierDetection specified, this will not take effect.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Failover failover = 2; -
getFailoverOrBuilder
public DestinationRuleOuterClass.LocalityLoadBalancerSetting.FailoverOrBuilder getFailoverOrBuilder(int index) Optional: only failover or distribute can be set. Explicitly specify the region traffic will land on when endpoints in local region becomes unhealthy. Should be used together with OutlierDetection to detect unhealthy endpoints. Note: if no OutlierDetection specified, this will not take effect.
repeated .istio.networking.v1alpha3.LocalityLoadBalancerSetting.Failover failover = 2; -
hasEnabled
public boolean hasEnabled()enable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety. e.g. true means that turn on locality load balancing for this DestinationRule no matter what mesh wide settings is.
.google.protobuf.BoolValue enabled = 3;- 指定者:
hasEnabled在接口中DestinationRuleOuterClass.LocalityLoadBalancerSettingOrBuilder- 返回:
- Whether the enabled field is set.
-
getEnabled
public com.google.protobuf.BoolValue getEnabled()enable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety. e.g. true means that turn on locality load balancing for this DestinationRule no matter what mesh wide settings is.
.google.protobuf.BoolValue enabled = 3;- 指定者:
getEnabled在接口中DestinationRuleOuterClass.LocalityLoadBalancerSettingOrBuilder- 返回:
- The enabled.
-
getEnabledOrBuilder
public com.google.protobuf.BoolValueOrBuilder getEnabledOrBuilder()enable locality load balancing, this is DestinationRule-level and will override mesh wide settings in entirety. e.g. true means that turn on locality load balancing for this DestinationRule no matter what mesh wide settings is.
.google.protobuf.BoolValue enabled = 3; -
isInitialized
public final boolean isInitialized()- 指定者:
isInitialized在接口中com.google.protobuf.MessageLiteOrBuilder- 覆盖:
isInitialized在类中com.google.protobuf.GeneratedMessageV3
-
writeTo
- 指定者:
writeTo在接口中com.google.protobuf.MessageLite- 覆盖:
writeTo在类中com.google.protobuf.GeneratedMessageV3- 抛出:
IOException
-
getSerializedSize
public int getSerializedSize()- 指定者:
getSerializedSize在接口中com.google.protobuf.MessageLite- 覆盖:
getSerializedSize在类中com.google.protobuf.GeneratedMessageV3
-
equals
- 指定者:
equals在接口中com.google.protobuf.Message- 覆盖:
equals在类中com.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- 指定者:
hashCode在接口中com.google.protobuf.Message- 覆盖:
hashCode在类中com.google.protobuf.AbstractMessage
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - 抛出:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(InputStream input) throws IOException - 抛出:
IOException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - 抛出:
IOException
-
parseDelimitedFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseDelimitedFrom(InputStream input) throws IOException - 抛出:
IOException
-
parseDelimitedFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - 抛出:
IOException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - 抛出:
IOException
-
parseFrom
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - 抛出:
IOException
-
newBuilderForType
- 指定者:
newBuilderForType在接口中com.google.protobuf.Message- 指定者:
newBuilderForType在接口中com.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
public static DestinationRuleOuterClass.LocalityLoadBalancerSetting.Builder newBuilder(DestinationRuleOuterClass.LocalityLoadBalancerSetting prototype) -
toBuilder
- 指定者:
toBuilder在接口中com.google.protobuf.Message- 指定者:
toBuilder在接口中com.google.protobuf.MessageLite
-
newBuilderForType
protected DestinationRuleOuterClass.LocalityLoadBalancerSetting.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) - 指定者:
newBuilderForType在类中com.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
-
parser
public static com.google.protobuf.Parser<DestinationRuleOuterClass.LocalityLoadBalancerSetting> parser() -
getParserForType
public com.google.protobuf.Parser<DestinationRuleOuterClass.LocalityLoadBalancerSetting> getParserForType()- 指定者:
getParserForType在接口中com.google.protobuf.Message- 指定者:
getParserForType在接口中com.google.protobuf.MessageLite- 覆盖:
getParserForType在类中com.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
- 指定者:
getDefaultInstanceForType在接口中com.google.protobuf.MessageLiteOrBuilder- 指定者:
getDefaultInstanceForType在接口中com.google.protobuf.MessageOrBuilder
-