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| 限定符和类型 | 方法和说明 |
|---|---|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
VirtualServiceOuterClass.HTTPRouteDestination |
build() |
VirtualServiceOuterClass.HTTPRouteDestination |
buildPartial() |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clear() |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clearDestination()
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clearHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clearWeight()
The proportion of traffic to be forwarded to the service
version. (0-100).
|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
clone() |
VirtualServiceOuterClass.HTTPRouteDestination |
getDefaultInstanceForType() |
static com.google.protobuf.Descriptors.Descriptor |
getDescriptor() |
com.google.protobuf.Descriptors.Descriptor |
getDescriptorForType() |
VirtualServiceOuterClass.Destination |
getDestination()
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.Destination.Builder |
getDestinationBuilder()
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.DestinationOrBuilder |
getDestinationOrBuilder()
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.Headers |
getHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.Headers.Builder |
getHeadersBuilder()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.HeadersOrBuilder |
getHeadersOrBuilder()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
int |
getWeight()
The proportion of traffic to be forwarded to the service
version. (0-100).
|
boolean |
hasDestination()
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
boolean |
hasHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable |
internalGetFieldAccessorTable() |
boolean |
isInitialized() |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeDestination(VirtualServiceOuterClass.Destination value)
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeFrom(com.google.protobuf.Message other) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeFrom(VirtualServiceOuterClass.HTTPRouteDestination other) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeHeaders(VirtualServiceOuterClass.Headers value)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
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.
|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setDestination(VirtualServiceOuterClass.Destination value)
Destination uniquely identifies the instances of a service
to which the request/connection should be forwarded to.
|
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setHeaders(VirtualServiceOuterClass.Headers.Builder builderForValue)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setHeaders(VirtualServiceOuterClass.Headers value)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7; |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field,
int index,
Object value) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) |
VirtualServiceOuterClass.HTTPRouteDestination.Builder |
setWeight(int value)
The proportion of traffic to be forwarded to the service
version. (0-100).
|
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMutableMapField, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringaddAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageExceptionpublic static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
internalGetFieldAccessorTable 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder clear()
clear 在接口中 com.google.protobuf.Message.Builderclear 在接口中 com.google.protobuf.MessageLite.Builderclear 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
getDescriptorForType 在接口中 com.google.protobuf.Message.BuildergetDescriptorForType 在接口中 com.google.protobuf.MessageOrBuildergetDescriptorForType 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination getDefaultInstanceForType()
getDefaultInstanceForType 在接口中 com.google.protobuf.MessageLiteOrBuildergetDefaultInstanceForType 在接口中 com.google.protobuf.MessageOrBuilderpublic VirtualServiceOuterClass.HTTPRouteDestination build()
build 在接口中 com.google.protobuf.Message.Builderbuild 在接口中 com.google.protobuf.MessageLite.Builderpublic VirtualServiceOuterClass.HTTPRouteDestination buildPartial()
buildPartial 在接口中 com.google.protobuf.Message.BuilderbuildPartial 在接口中 com.google.protobuf.MessageLite.Builderpublic VirtualServiceOuterClass.HTTPRouteDestination.Builder clone()
clone 在接口中 com.google.protobuf.Message.Builderclone 在接口中 com.google.protobuf.MessageLite.Builderclone 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
setField 在接口中 com.google.protobuf.Message.BuildersetField 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
clearField 在接口中 com.google.protobuf.Message.BuilderclearField 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
clearOneof 在接口中 com.google.protobuf.Message.BuilderclearOneof 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
setRepeatedField 在接口中 com.google.protobuf.Message.BuildersetRepeatedField 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
addRepeatedField 在接口中 com.google.protobuf.Message.BuilderaddRepeatedField 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeFrom(com.google.protobuf.Message other)
mergeFrom 在接口中 com.google.protobuf.Message.BuildermergeFrom 在类中 com.google.protobuf.AbstractMessage.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeFrom(VirtualServiceOuterClass.HTTPRouteDestination other)
public final boolean isInitialized()
isInitialized 在接口中 com.google.protobuf.MessageLiteOrBuilderisInitialized 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
mergeFrom 在接口中 com.google.protobuf.Message.BuildermergeFrom 在接口中 com.google.protobuf.MessageLite.BuildermergeFrom 在类中 com.google.protobuf.AbstractMessage.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>IOExceptionpublic 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.HTTPRouteDestinationOrBuilderpublic VirtualServiceOuterClass.Destination 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.HTTPRouteDestinationOrBuilderpublic 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];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];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];public VirtualServiceOuterClass.HTTPRouteDestination.Builder 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];public VirtualServiceOuterClass.Destination.Builder 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];public VirtualServiceOuterClass.DestinationOrBuilder 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];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.HTTPRouteDestinationOrBuilderpublic VirtualServiceOuterClass.HTTPRouteDestination.Builder setWeight(int value)
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.public VirtualServiceOuterClass.HTTPRouteDestination.Builder 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;public boolean hasHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;hasHeaders 在接口中 VirtualServiceOuterClass.HTTPRouteDestinationOrBuilderpublic VirtualServiceOuterClass.Headers getHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;getHeaders 在接口中 VirtualServiceOuterClass.HTTPRouteDestinationOrBuilderpublic VirtualServiceOuterClass.HTTPRouteDestination.Builder setHeaders(VirtualServiceOuterClass.Headers value)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public VirtualServiceOuterClass.HTTPRouteDestination.Builder setHeaders(VirtualServiceOuterClass.Headers.Builder builderForValue)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeHeaders(VirtualServiceOuterClass.Headers value)
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public VirtualServiceOuterClass.HTTPRouteDestination.Builder clearHeaders()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public VirtualServiceOuterClass.Headers.Builder getHeadersBuilder()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public VirtualServiceOuterClass.HeadersOrBuilder getHeadersOrBuilder()
Header manipulation rules
.istio.networking.v1alpha3.Headers headers = 7;public final VirtualServiceOuterClass.HTTPRouteDestination.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
setUnknownFields 在接口中 com.google.protobuf.Message.BuildersetUnknownFields 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>public final VirtualServiceOuterClass.HTTPRouteDestination.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
mergeUnknownFields 在接口中 com.google.protobuf.Message.BuildermergeUnknownFields 在类中 com.google.protobuf.GeneratedMessageV3.Builder<VirtualServiceOuterClass.HTTPRouteDestination.Builder>Copyright © 2018–2023 Alibaba Group. All rights reserved.