类 DestinationRuleOuterClass.LoadBalancerSettings.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
istio.networking.v1alpha3.DestinationRuleOuterClass.LoadBalancerSettings.Builder
- 所有已实现的接口:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder,Cloneable
public static final class DestinationRuleOuterClass.LoadBalancerSettings.Builder
extends com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
implements DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder
Load balancing policies to apply for a specific destination. See Envoy's
load balancing
[documentation](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/load_balancing)
for more details.
For example, the following rule uses a round robin load balancing policy
for all traffic going to the ratings service.
{{<tabset category-name="example">}}
{{<tab name="v1alpha3" category-value="v1alpha3">}}
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: bookinfo-ratings
spec:
host: ratings.prod.svc.cluster.local
trafficPolicy:
loadBalancer:
simple: ROUND_ROBIN
```
{{</tab>}}
{{<tab name="v1beta1" category-value="v1beta1">}}
```yaml
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: bookinfo-ratings
spec:
host: ratings.prod.svc.cluster.local
trafficPolicy:
loadBalancer:
simple: ROUND_ROBIN
```
{{</tab>}}
{{</tabset>}}
The following example sets up sticky sessions for the ratings service
hashing-based load balancer for the same ratings service using the
the User cookie as the hash key.
{{<tabset category-name="example">}}
{{<tab name="v1alpha3" category-value="v1alpha3">}}
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: bookinfo-ratings
spec:
host: ratings.prod.svc.cluster.local
trafficPolicy:
loadBalancer:
consistentHash:
httpCookie:
name: user
ttl: 0s
```
{{</tab>}}
{{<tab name="v1beta1" category-value="v1beta1">}}
```yaml
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: bookinfo-ratings
spec:
host: ratings.prod.svc.cluster.local
trafficPolicy:
loadBalancer:
consistentHash:
httpCookie:
name: user
ttl: 0s
```
{{</tab>}}
{{</tabset>}}
Protobuf type istio.networking.v1alpha3.LoadBalancerSettings-
方法概要
修饰符和类型方法说明addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) build()clear().istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;clearField(com.google.protobuf.Descriptors.FieldDescriptor field) Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) .istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;clone().istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorLocality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigLocality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigLocality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;int.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;boolean.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;booleanLocality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigboolean.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal boolean.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom(com.google.protobuf.Message other) Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigmergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) .istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;setConsistentHash(DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLB.Builder builderForValue) .istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigLocality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfigsetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) .istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;setSimpleValue(int value) .istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) 从类继承的方法 com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3从类继承的方法 com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString从类继承的方法 com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException从接口继承的方法 com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFrom从接口继承的方法 com.google.protobuf.MessageLite.Builder
mergeFrom从接口继承的方法 com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
方法详细资料
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()- 指定者:
internalGetFieldAccessorTable在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
clear
- 指定者:
clear在接口中com.google.protobuf.Message.Builder- 指定者:
clear在接口中com.google.protobuf.MessageLite.Builder- 覆盖:
clear在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- 指定者:
getDescriptorForType在接口中com.google.protobuf.Message.Builder- 指定者:
getDescriptorForType在接口中com.google.protobuf.MessageOrBuilder- 覆盖:
getDescriptorForType在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
getDefaultInstanceForType
- 指定者:
getDefaultInstanceForType在接口中com.google.protobuf.MessageLiteOrBuilder- 指定者:
getDefaultInstanceForType在接口中com.google.protobuf.MessageOrBuilder
-
build
- 指定者:
build在接口中com.google.protobuf.Message.Builder- 指定者:
build在接口中com.google.protobuf.MessageLite.Builder
-
buildPartial
- 指定者:
buildPartial在接口中com.google.protobuf.Message.Builder- 指定者:
buildPartial在接口中com.google.protobuf.MessageLite.Builder
-
clone
- 指定者:
clone在接口中com.google.protobuf.Message.Builder- 指定者:
clone在接口中com.google.protobuf.MessageLite.Builder- 覆盖:
clone在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
setField
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - 指定者:
setField在接口中com.google.protobuf.Message.Builder- 覆盖:
setField在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
clearField
public DestinationRuleOuterClass.LoadBalancerSettings.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) - 指定者:
clearField在接口中com.google.protobuf.Message.Builder- 覆盖:
clearField在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
clearOneof
public DestinationRuleOuterClass.LoadBalancerSettings.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) - 指定者:
clearOneof在接口中com.google.protobuf.Message.Builder- 覆盖:
clearOneof在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
setRepeatedField
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) - 指定者:
setRepeatedField在接口中com.google.protobuf.Message.Builder- 覆盖:
setRepeatedField在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
addRepeatedField
public DestinationRuleOuterClass.LoadBalancerSettings.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - 指定者:
addRepeatedField在接口中com.google.protobuf.Message.Builder- 覆盖:
addRepeatedField在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
mergeFrom
public DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeFrom(com.google.protobuf.Message other) - 指定者:
mergeFrom在接口中com.google.protobuf.Message.Builder- 覆盖:
mergeFrom在类中com.google.protobuf.AbstractMessage.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
mergeFrom
public DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeFrom(DestinationRuleOuterClass.LoadBalancerSettings other) -
isInitialized
public final boolean isInitialized()- 指定者:
isInitialized在接口中com.google.protobuf.MessageLiteOrBuilder- 覆盖:
isInitialized在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
mergeFrom
public DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - 指定者:
mergeFrom在接口中com.google.protobuf.Message.Builder- 指定者:
mergeFrom在接口中com.google.protobuf.MessageLite.Builder- 覆盖:
mergeFrom在类中com.google.protobuf.AbstractMessage.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>- 抛出:
IOException
-
getLbPolicyCase
-
clearLbPolicy
-
hasSimple
public boolean hasSimple().istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 指定者:
hasSimple在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- Whether the simple field is set.
-
getSimpleValue
public int getSimpleValue().istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 指定者:
getSimpleValue在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- The enum numeric value on the wire for simple.
-
setSimpleValue
.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 参数:
value- The enum numeric value on the wire for simple to set.- 返回:
- This builder for chaining.
-
getSimple
.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 指定者:
getSimple在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- The simple.
-
setSimple
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setSimple(DestinationRuleOuterClass.LoadBalancerSettings.SimpleLB value) .istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 参数:
value- The simple to set.- 返回:
- This builder for chaining.
-
clearSimple
.istio.networking.v1alpha3.LoadBalancerSettings.SimpleLB simple = 1;- 返回:
- This builder for chaining.
-
hasConsistentHash
public boolean hasConsistentHash().istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;- 指定者:
hasConsistentHash在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- Whether the consistentHash field is set.
-
getConsistentHash
.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2;- 指定者:
getConsistentHash在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- The consistentHash.
-
setConsistentHash
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setConsistentHash(DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLB value) .istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
setConsistentHash
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setConsistentHash(DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLB.Builder builderForValue) .istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
mergeConsistentHash
public DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeConsistentHash(DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLB value) .istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
clearConsistentHash
.istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
getConsistentHashBuilder
public DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLB.Builder getConsistentHashBuilder().istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
getConsistentHashOrBuilder
public DestinationRuleOuterClass.LoadBalancerSettings.ConsistentHashLBOrBuilder getConsistentHashOrBuilder().istio.networking.v1alpha3.LoadBalancerSettings.ConsistentHashLB consistent_hash = 2; -
hasLocalityLbSetting
public boolean hasLocalityLbSetting()Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3;- 指定者:
hasLocalityLbSetting在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- Whether the localityLbSetting field is set.
-
getLocalityLbSetting
Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3;- 指定者:
getLocalityLbSetting在接口中DestinationRuleOuterClass.LoadBalancerSettingsOrBuilder- 返回:
- The localityLbSetting.
-
setLocalityLbSetting
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setLocalityLbSetting(DestinationRuleOuterClass.LocalityLoadBalancerSetting value) Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
setLocalityLbSetting
public DestinationRuleOuterClass.LoadBalancerSettings.Builder setLocalityLbSetting(DestinationRuleOuterClass.LocalityLoadBalancerSetting.Builder builderForValue) Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
mergeLocalityLbSetting
public DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeLocalityLbSetting(DestinationRuleOuterClass.LocalityLoadBalancerSetting value) Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
clearLocalityLbSetting
Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
getLocalityLbSettingBuilder
Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
getLocalityLbSettingOrBuilder
public DestinationRuleOuterClass.LocalityLoadBalancerSettingOrBuilder getLocalityLbSettingOrBuilder()Locality load balancer settings, this will override mesh wide settings in entirety, meaning no merging would be performed between this object and the object one in MeshConfig
.istio.networking.v1alpha3.LocalityLoadBalancerSetting locality_lb_setting = 3; -
setUnknownFields
public final DestinationRuleOuterClass.LoadBalancerSettings.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - 指定者:
setUnknownFields在接口中com.google.protobuf.Message.Builder- 覆盖:
setUnknownFields在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-
mergeUnknownFields
public final DestinationRuleOuterClass.LoadBalancerSettings.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - 指定者:
mergeUnknownFields在接口中com.google.protobuf.Message.Builder- 覆盖:
mergeUnknownFields在类中com.google.protobuf.GeneratedMessageV3.Builder<DestinationRuleOuterClass.LoadBalancerSettings.Builder>
-