类 VirtualServiceOuterClass.HTTPRouteDestination.Builder
java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
istio.networking.v1alpha3.VirtualServiceOuterClass.HTTPRouteDestination.Builder
- 所有已实现的接口:
com.google.protobuf.Message.Builder,com.google.protobuf.MessageLite.Builder,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder,Cloneable
public static final class VirtualServiceOuterClass.HTTPRouteDestination.Builder
extends com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
implements VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder
Each routing rule is associated with one or more service versions (see
glossary in beginning of document). Weights associated with the version
determine the proportion of traffic it receives. For example, the
following rule will route 25% of traffic for the "reviews" service to
instances with the "v2" tag and the remaining traffic (i.e., 75%) to
"v1".
{{<tabset category-name="example">}}
{{<tab name="v1alpha3" category-value="v1alpha3">}}
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: reviews-route
spec:
hosts:
- reviews.prod.svc.cluster.local
http:
- route:
- destination:
host: reviews.prod.svc.cluster.local
subset: v2
weight: 25
- destination:
host: reviews.prod.svc.cluster.local
subset: v1
weight: 75
```
{{</tab>}}
{{<tab name="v1beta1" category-value="v1beta1">}}
```yaml
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: reviews-route
spec:
hosts:
- reviews.prod.svc.cluster.local
http:
- route:
- destination:
host: reviews.prod.svc.cluster.local
subset: v2
weight: 25
- destination:
host: reviews.prod.svc.cluster.local
subset: v1
weight: 75
```
{{</tab>}}
{{</tabset>}}
And the associated DestinationRule
{{<tabset category-name="example">}}
{{<tab name="v1alpha3" category-value="v1alpha3">}}
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: reviews-destination
spec:
host: reviews.prod.svc.cluster.local
subsets:
- name: v1
labels:
version: v1
- name: v2
labels:
version: v2
```
{{</tab>}}
{{<tab name="v1beta1" category-value="v1beta1">}}
```yaml
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: reviews-destination
spec:
host: reviews.prod.svc.cluster.local
subsets:
- name: v1
labels:
version: v1
- name: v2
labels:
version: v2
```
{{</tab>}}
{{</tabset>}}
Traffic can also be split across two entirely different services without
having to define new subsets. For example, the following rule forwards 25% of
traffic to reviews.com to dev.reviews.com
{{<tabset category-name="example">}}
{{<tab name="v1alpha3" category-value="v1alpha3">}}
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: reviews-route-two-domains
spec:
hosts:
- reviews.com
http:
- route:
- destination:
host: dev.reviews.com
weight: 25
- destination:
host: reviews.com
weight: 75
```
{{</tab>}}
{{<tab name="v1beta1" category-value="v1beta1">}}
```yaml
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: reviews-route-two-domains
spec:
hosts:
- reviews.com
http:
- route:
- destination:
host: dev.reviews.com
weight: 25
- destination:
host: reviews.com
weight: 75
```
{{</tab>}}
{{</tabset>}}
Protobuf type istio.networking.v1alpha3.HTTPRouteDestination-
方法概要
修饰符和类型方法说明addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) build()clear()Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.clearField(com.google.protobuf.Descriptors.FieldDescriptor field) Header manipulation rulesclearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) The proportion of traffic to be forwarded to the service version. (0-100).clone()static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorDestination uniquely identifies the instances of a service to which the request/connection should be forwarded to.Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.Header manipulation rulesHeader manipulation rulesHeader manipulation rulesintThe proportion of traffic to be forwarded to the service version. (0-100).booleanDestination uniquely identifies the instances of a service to which the request/connection should be forwarded to.booleanHeader manipulation rulesprotected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleanDestination uniquely identifies the instances of a service to which the request/connection should be forwarded to.mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom(com.google.protobuf.Message other) Header manipulation rulesmergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.setDestination(VirtualServiceOuterClass.Destination.Builder builderForValue) Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.Header manipulation rulessetHeaders(VirtualServiceOuterClass.Headers.Builder builderForValue) Header manipulation rulessetRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) setWeight(int value) The proportion of traffic to be forwarded to the service version. (0-100).从类继承的方法 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<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
clear
- 指定者:
clear在接口中com.google.protobuf.Message.Builder- 指定者:
clear在接口中com.google.protobuf.MessageLite.Builder- 覆盖:
clear在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.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<VirtualServiceOuterClass.HTTPRouteDestination.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<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
setField
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - 指定者:
setField在接口中com.google.protobuf.Message.Builder- 覆盖:
setField在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
clearField
public VirtualServiceOuterClass.HTTPRouteDestination.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) - 指定者:
clearField在接口中com.google.protobuf.Message.Builder- 覆盖:
clearField在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
clearOneof
public VirtualServiceOuterClass.HTTPRouteDestination.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) - 指定者:
clearOneof在接口中com.google.protobuf.Message.Builder- 覆盖:
clearOneof在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
setRepeatedField
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) - 指定者:
setRepeatedField在接口中com.google.protobuf.Message.Builder- 覆盖:
setRepeatedField在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
addRepeatedField
public VirtualServiceOuterClass.HTTPRouteDestination.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - 指定者:
addRepeatedField在接口中com.google.protobuf.Message.Builder- 覆盖:
addRepeatedField在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
mergeFrom
public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeFrom(com.google.protobuf.Message other) - 指定者:
mergeFrom在接口中com.google.protobuf.Message.Builder- 覆盖:
mergeFrom在类中com.google.protobuf.AbstractMessage.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
mergeFrom
public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeFrom(VirtualServiceOuterClass.HTTPRouteDestination other) -
isInitialized
public final boolean isInitialized()- 指定者:
isInitialized在接口中com.google.protobuf.MessageLiteOrBuilder- 覆盖:
isInitialized在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
mergeFrom
public VirtualServiceOuterClass.HTTPRouteDestination.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<VirtualServiceOuterClass.HTTPRouteDestination.Builder>- 抛出:
IOException
-
hasDestination
public boolean hasDestination()Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED];- 指定者:
hasDestination在接口中VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder- 返回:
- Whether the destination field is set.
-
getDestination
Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED];- 指定者:
getDestination在接口中VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder- 返回:
- The destination.
-
setDestination
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setDestination(VirtualServiceOuterClass.Destination value) Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
setDestination
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setDestination(VirtualServiceOuterClass.Destination.Builder builderForValue) Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
mergeDestination
public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeDestination(VirtualServiceOuterClass.Destination value) Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
clearDestination
Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
getDestinationBuilder
Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
getDestinationOrBuilder
Destination uniquely identifies the instances of a service to which the request/connection should be forwarded to.
.istio.networking.v1alpha3.Destination destination = 1 [(.google.api.field_behavior) = REQUIRED]; -
getWeight
public int getWeight()The proportion of traffic to be forwarded to the service version. (0-100). Sum of weights across destinations SHOULD BE == 100. If there is only one destination in a rule, the weight value is assumed to be 100.
int32 weight = 2;- 指定者:
getWeight在接口中VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder- 返回:
- The weight.
-
setWeight
The proportion of traffic to be forwarded to the service version. (0-100). Sum of weights across destinations SHOULD BE == 100. If there is only one destination in a rule, the weight value is assumed to be 100.
int32 weight = 2;- 参数:
value- The weight to set.- 返回:
- This builder for chaining.
-
clearWeight
The proportion of traffic to be forwarded to the service version. (0-100). Sum of weights across destinations SHOULD BE == 100. If there is only one destination in a rule, the weight value is assumed to be 100.
int32 weight = 2;- 返回:
- This builder for chaining.
-
hasHeaders
public boolean hasHeaders()Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;- 指定者:
hasHeaders在接口中VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder- 返回:
- Whether the headers field is set.
-
getHeaders
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;- 指定者:
getHeaders在接口中VirtualServiceOuterClass.HTTPRouteDestinationOrBuilder- 返回:
- The headers.
-
setHeaders
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setHeaders(VirtualServiceOuterClass.Headers value) Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
setHeaders
public VirtualServiceOuterClass.HTTPRouteDestination.Builder setHeaders(VirtualServiceOuterClass.Headers.Builder builderForValue) Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
mergeHeaders
public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeHeaders(VirtualServiceOuterClass.Headers value) Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
clearHeaders
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
getHeadersBuilder
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
getHeadersOrBuilder
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; -
setUnknownFields
public final VirtualServiceOuterClass.HTTPRouteDestination.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - 指定者:
setUnknownFields在接口中com.google.protobuf.Message.Builder- 覆盖:
setUnknownFields在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-
mergeUnknownFields
public final VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - 指定者:
mergeUnknownFields在接口中com.google.protobuf.Message.Builder- 覆盖:
mergeUnknownFields在类中com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>
-