Documentation ¶
Index ¶
- Variables
- type Subset
- func (*Subset) Descriptor() ([]byte, []int)deprecated
- func (x *Subset) GetAllowRedundantKeys() bool
- func (x *Subset) GetDefaultSubset() *structpb.Struct
- func (x *Subset) GetFallbackPolicy() Subset_LbSubsetFallbackPolicy
- func (x *Subset) GetListAsAny() bool
- func (x *Subset) GetLocalityWeightAware() bool
- func (x *Subset) GetMetadataFallbackPolicy() Subset_LbSubsetMetadataFallbackPolicy
- func (x *Subset) GetPanicModeAny() bool
- func (x *Subset) GetScaleLocalityWeight() bool
- func (x *Subset) GetSubsetLbPolicy() *v3.LoadBalancingPolicy
- func (x *Subset) GetSubsetSelectors() []*Subset_LbSubsetSelector
- func (*Subset) ProtoMessage()
- func (x *Subset) ProtoReflect() protoreflect.Message
- func (x *Subset) Reset()
- func (x *Subset) String() string
- func (m *Subset) Validate() error
- func (m *Subset) ValidateAll() error
- type SubsetMultiError
- type SubsetValidationError
- type Subset_LbSubsetFallbackPolicy
- func (Subset_LbSubsetFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
- func (x Subset_LbSubsetFallbackPolicy) Enum() *Subset_LbSubsetFallbackPolicy
- func (Subset_LbSubsetFallbackPolicy) EnumDescriptor() ([]byte, []int)deprecated
- func (x Subset_LbSubsetFallbackPolicy) Number() protoreflect.EnumNumber
- func (x Subset_LbSubsetFallbackPolicy) String() string
- func (Subset_LbSubsetFallbackPolicy) Type() protoreflect.EnumType
- type Subset_LbSubsetMetadataFallbackPolicy
- func (Subset_LbSubsetMetadataFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
- func (x Subset_LbSubsetMetadataFallbackPolicy) Enum() *Subset_LbSubsetMetadataFallbackPolicy
- func (Subset_LbSubsetMetadataFallbackPolicy) EnumDescriptor() ([]byte, []int)deprecated
- func (x Subset_LbSubsetMetadataFallbackPolicy) Number() protoreflect.EnumNumber
- func (x Subset_LbSubsetMetadataFallbackPolicy) String() string
- func (Subset_LbSubsetMetadataFallbackPolicy) Type() protoreflect.EnumType
- type Subset_LbSubsetSelector
- func (*Subset_LbSubsetSelector) Descriptor() ([]byte, []int)deprecated
- func (x *Subset_LbSubsetSelector) GetFallbackKeysSubset() []string
- func (x *Subset_LbSubsetSelector) GetFallbackPolicy() Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy
- func (x *Subset_LbSubsetSelector) GetKeys() []string
- func (x *Subset_LbSubsetSelector) GetSingleHostPerSubset() bool
- func (*Subset_LbSubsetSelector) ProtoMessage()
- func (x *Subset_LbSubsetSelector) ProtoReflect() protoreflect.Message
- func (x *Subset_LbSubsetSelector) Reset()
- func (x *Subset_LbSubsetSelector) String() string
- func (m *Subset_LbSubsetSelector) Validate() error
- func (m *Subset_LbSubsetSelector) ValidateAll() error
- type Subset_LbSubsetSelectorMultiError
- type Subset_LbSubsetSelectorValidationError
- func (e Subset_LbSubsetSelectorValidationError) Cause() error
- func (e Subset_LbSubsetSelectorValidationError) Error() string
- func (e Subset_LbSubsetSelectorValidationError) ErrorName() string
- func (e Subset_LbSubsetSelectorValidationError) Field() string
- func (e Subset_LbSubsetSelectorValidationError) Key() bool
- func (e Subset_LbSubsetSelectorValidationError) Reason() string
- type Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy
- func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
- func (x Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Enum() *Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy
- func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) EnumDescriptor() ([]byte, []int)deprecated
- func (x Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Number() protoreflect.EnumNumber
- func (x Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) String() string
- func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Type() protoreflect.EnumType
Constants ¶
This section is empty.
Variables ¶
var ( Subset_LbSubsetFallbackPolicy_name = map[int32]string{ 0: "NO_FALLBACK", 1: "ANY_ENDPOINT", 2: "DEFAULT_SUBSET", } Subset_LbSubsetFallbackPolicy_value = map[string]int32{ "NO_FALLBACK": 0, "ANY_ENDPOINT": 1, "DEFAULT_SUBSET": 2, } )
Enum value maps for Subset_LbSubsetFallbackPolicy.
var ( Subset_LbSubsetMetadataFallbackPolicy_name = map[int32]string{ 0: "METADATA_NO_FALLBACK", 1: "FALLBACK_LIST", } Subset_LbSubsetMetadataFallbackPolicy_value = map[string]int32{ "METADATA_NO_FALLBACK": 0, "FALLBACK_LIST": 1, } )
Enum value maps for Subset_LbSubsetMetadataFallbackPolicy.
var ( Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy_name = map[int32]string{ 0: "NOT_DEFINED", 1: "NO_FALLBACK", 2: "ANY_ENDPOINT", 3: "DEFAULT_SUBSET", 4: "KEYS_SUBSET", } Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy_value = map[string]int32{ "NOT_DEFINED": 0, "NO_FALLBACK": 1, "ANY_ENDPOINT": 2, "DEFAULT_SUBSET": 3, "KEYS_SUBSET": 4, } )
Enum value maps for Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy.
var File_envoy_extensions_load_balancing_policies_subset_v3_subset_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type Subset ¶
type Subset struct { // The behavior used when no endpoint subset matches the selected route's // metadata. The value defaults to // :ref:`NO_FALLBACK<envoy_v3_api_enum_value_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetFallbackPolicy.NO_FALLBACK>`. FallbackPolicy Subset_LbSubsetFallbackPolicy `` /* 190-byte string literal not displayed */ // Specifies the default subset of endpoints used during fallback if // fallback_policy is // :ref:`DEFAULT_SUBSET<envoy_v3_api_enum_value_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetFallbackPolicy.DEFAULT_SUBSET>`. // Each field in default_subset is // compared to the matching LbEndpoint.Metadata under the “envoy.lb“ // namespace. It is valid for no hosts to match, in which case the behavior // is the same as a fallback_policy of // :ref:`NO_FALLBACK<envoy_v3_api_enum_value_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetFallbackPolicy.NO_FALLBACK>`. DefaultSubset *structpb.Struct `protobuf:"bytes,2,opt,name=default_subset,json=defaultSubset,proto3" json:"default_subset,omitempty"` // For each entry, LbEndpoint.Metadata's // “envoy.lb“ namespace is traversed and a subset is created for each unique // combination of key and value. For example: // // .. code-block:: json // // { "subset_selectors": [ // { "keys": [ "version" ] }, // { "keys": [ "stage", "hardware_type" ] } // ]} // // A subset is matched when the metadata from the selected route and // weighted cluster contains the same keys and values as the subset's // metadata. The same host may appear in multiple subsets. SubsetSelectors []*Subset_LbSubsetSelector `protobuf:"bytes,3,rep,name=subset_selectors,json=subsetSelectors,proto3" json:"subset_selectors,omitempty"` // By default, only when the request metadata has exactly the **same** keys as one of subset selectors and // the values of the related keys are matched, the load balancer will have a valid subset for the request. // For example, given the following subset selectors: // // .. code-block:: json // // { "subset_selectors": [ // { "keys": [ "version" ] }, // { "keys": [ "stage", "version" ] } // ]} // // A request with metadata “{"redundant-key": "redundant-value", "stage": "prod", "version": "v1"}“ or // “{"redundant-key": "redundant-value", "version": "v1"}“ will not have a valid subset even if the values // of keys “stage“ and “version“ are matched because of the redundant key/value pair in the request // metadata. // // By setting this field to true, the most appropriate keys will be filtered out from the request metadata // according to the subset selectors. And then the filtered keys and related values will be matched to find // the valid host subset. By this way, redundant key/value pairs are allowed in the request metadata. The keys // of a request metadata could be superset of the keys of the subset selectors and need not to be exactly the // same as the keys of the subset selectors. // // More specifically, if the keys of a request metadata is a superset of one of the subset selectors, then only // the values of the keys that in the selector keys will be matched. Take the above example, if the request // metadata is “{"redundant-key": "redundant-value", "stage": "prod", "version": "v1"}“, the load balancer // will only match the values of “stage“ and “version“ to find an appropriate subset because “stage“ // “version“ are contained by the second subset selector and the redundant “redundant-key“ will be // ignored. // // .. note:: // // If the keys of request metadata is superset of multiple different subset selectors keys, the subset // selector with most keys to win. For example, given subset selectors // “{"subset_selectors": ["keys": ["A", "B", "C"], ["A", "B"]]}“ and request metadata “{"A": "-", // "B": "-", "C": "-", "D": "-"}“, keys “A“, “B“, “C“ will be evaluated. // If the keys of request metadata is superset of multiple different subset selectors keys and the number // of selector keys are same, then the one placed in front to win. For example, given subset selectors // “{"subset_selectors": ["keys": ["A", "B"], ["C", "D"]]}“ and request metadata “{"A": "-", "B": "-", // "C": "-", "D": "-"}“, keys “A“, “B“ will be evaluated. AllowRedundantKeys bool `protobuf:"varint,10,opt,name=allow_redundant_keys,json=allowRedundantKeys,proto3" json:"allow_redundant_keys,omitempty"` // If true, routing to subsets will take into account the localities and locality weights of the // endpoints when making the routing decision. // // There are some potential pitfalls associated with enabling this feature, as the resulting // traffic split after applying both a subset match and locality weights might be undesirable. // // Consider for example a situation in which you have 50/50 split across two localities X/Y // which have 100 hosts each without subsetting. If the subset LB results in X having only 1 // host selected but Y having 100, then a lot more load is being dumped on the single host in X // than originally anticipated in the load balancing assignment delivered via EDS. LocalityWeightAware bool `protobuf:"varint,4,opt,name=locality_weight_aware,json=localityWeightAware,proto3" json:"locality_weight_aware,omitempty"` // When used with locality_weight_aware, scales the weight of each locality by the ratio // of hosts in the subset vs hosts in the original subset. This aims to even out the load // going to an individual locality if said locality is disproportionately affected by the // subset predicate. ScaleLocalityWeight bool `protobuf:"varint,5,opt,name=scale_locality_weight,json=scaleLocalityWeight,proto3" json:"scale_locality_weight,omitempty"` // If true, when a fallback policy is configured and its corresponding subset fails to find // a host this will cause any host to be selected instead. // // This is useful when using the default subset as the fallback policy, given the default // subset might become empty. With this option enabled, if that happens the LB will attempt // to select a host from the entire cluster. PanicModeAny bool `protobuf:"varint,6,opt,name=panic_mode_any,json=panicModeAny,proto3" json:"panic_mode_any,omitempty"` // If true, metadata specified for a metadata key will be matched against the corresponding // endpoint metadata if the endpoint metadata matches the value exactly OR it is a list value // and any of the elements in the list matches the criteria. ListAsAny bool `protobuf:"varint,7,opt,name=list_as_any,json=listAsAny,proto3" json:"list_as_any,omitempty"` // Fallback mechanism that allows to try different route metadata until a host is found. // If load balancing process, including all its mechanisms (like // :ref:`fallback_policy<envoy_v3_api_field_extensions.load_balancing_policies.subset.v3.subset.fallback_policy>`) // fails to select a host, this policy decides if and how the process is repeated using another metadata. // // The value defaults to // :ref:`METADATA_NO_FALLBACK // <envoy_v3_api_enum_value_extensions.load_balancing_policies.subset.v3.subset.LbSubsetMetadataFallbackPolicy.METADATA_NO_FALLBACK>`. MetadataFallbackPolicy Subset_LbSubsetMetadataFallbackPolicy `` /* 224-byte string literal not displayed */ // The child LB policy to create for endpoint-picking within the chosen subset. SubsetLbPolicy *v3.LoadBalancingPolicy `protobuf:"bytes,9,opt,name=subset_lb_policy,json=subsetLbPolicy,proto3" json:"subset_lb_policy,omitempty"` // contains filtered or unexported fields }
Optionally divide the endpoints in this cluster into subsets defined by endpoint metadata and selected by route and weighted cluster metadata. [#next-free-field: 11]
func (*Subset) Descriptor
deprecated
func (*Subset) GetAllowRedundantKeys ¶ added in v0.12.0
func (*Subset) GetDefaultSubset ¶
func (*Subset) GetFallbackPolicy ¶
func (x *Subset) GetFallbackPolicy() Subset_LbSubsetFallbackPolicy
func (*Subset) GetListAsAny ¶
func (*Subset) GetLocalityWeightAware ¶
func (*Subset) GetMetadataFallbackPolicy ¶
func (x *Subset) GetMetadataFallbackPolicy() Subset_LbSubsetMetadataFallbackPolicy
func (*Subset) GetPanicModeAny ¶
func (*Subset) GetScaleLocalityWeight ¶
func (*Subset) GetSubsetLbPolicy ¶
func (x *Subset) GetSubsetLbPolicy() *v3.LoadBalancingPolicy
func (*Subset) GetSubsetSelectors ¶
func (x *Subset) GetSubsetSelectors() []*Subset_LbSubsetSelector
func (*Subset) ProtoMessage ¶
func (*Subset) ProtoMessage()
func (*Subset) ProtoReflect ¶
func (x *Subset) ProtoReflect() protoreflect.Message
func (*Subset) Validate ¶
Validate checks the field values on Subset with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.
func (*Subset) ValidateAll ¶
ValidateAll checks the field values on Subset with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in SubsetMultiError, or nil if none found.
type SubsetMultiError ¶
type SubsetMultiError []error
SubsetMultiError is an error wrapping multiple validation errors returned by Subset.ValidateAll() if the designated constraints aren't met.
func (SubsetMultiError) AllErrors ¶
func (m SubsetMultiError) AllErrors() []error
AllErrors returns a list of validation violation errors.
func (SubsetMultiError) Error ¶
func (m SubsetMultiError) Error() string
Error returns a concatenation of all the error messages it wraps.
type SubsetValidationError ¶
type SubsetValidationError struct {
// contains filtered or unexported fields
}
SubsetValidationError is the validation error returned by Subset.Validate if the designated constraints aren't met.
func (SubsetValidationError) Cause ¶
func (e SubsetValidationError) Cause() error
Cause function returns cause value.
func (SubsetValidationError) Error ¶
func (e SubsetValidationError) Error() string
Error satisfies the builtin error interface
func (SubsetValidationError) ErrorName ¶
func (e SubsetValidationError) ErrorName() string
ErrorName returns error name.
func (SubsetValidationError) Field ¶
func (e SubsetValidationError) Field() string
Field function returns field value.
func (SubsetValidationError) Key ¶
func (e SubsetValidationError) Key() bool
Key function returns key value.
func (SubsetValidationError) Reason ¶
func (e SubsetValidationError) Reason() string
Reason function returns reason value.
type Subset_LbSubsetFallbackPolicy ¶
type Subset_LbSubsetFallbackPolicy int32
If NO_FALLBACK is selected, a result equivalent to no healthy hosts is reported. If ANY_ENDPOINT is selected, any cluster endpoint may be returned (subject to policy, health checks, etc). If DEFAULT_SUBSET is selected, load balancing is performed over the endpoints matching the values from the default_subset field.
const ( Subset_NO_FALLBACK Subset_LbSubsetFallbackPolicy = 0 Subset_ANY_ENDPOINT Subset_LbSubsetFallbackPolicy = 1 Subset_DEFAULT_SUBSET Subset_LbSubsetFallbackPolicy = 2 )
func (Subset_LbSubsetFallbackPolicy) Descriptor ¶
func (Subset_LbSubsetFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
func (Subset_LbSubsetFallbackPolicy) Enum ¶
func (x Subset_LbSubsetFallbackPolicy) Enum() *Subset_LbSubsetFallbackPolicy
func (Subset_LbSubsetFallbackPolicy) EnumDescriptor
deprecated
func (Subset_LbSubsetFallbackPolicy) EnumDescriptor() ([]byte, []int)
Deprecated: Use Subset_LbSubsetFallbackPolicy.Descriptor instead.
func (Subset_LbSubsetFallbackPolicy) Number ¶
func (x Subset_LbSubsetFallbackPolicy) Number() protoreflect.EnumNumber
func (Subset_LbSubsetFallbackPolicy) String ¶
func (x Subset_LbSubsetFallbackPolicy) String() string
func (Subset_LbSubsetFallbackPolicy) Type ¶
func (Subset_LbSubsetFallbackPolicy) Type() protoreflect.EnumType
type Subset_LbSubsetMetadataFallbackPolicy ¶
type Subset_LbSubsetMetadataFallbackPolicy int32
const ( // No fallback. Route metadata will be used as-is. Subset_METADATA_NO_FALLBACK Subset_LbSubsetMetadataFallbackPolicy = 0 // A special metadata key “fallback_list“ will be used to provide variants of metadata to try. // Value of “fallback_list“ key has to be a list. Every list element has to be a struct - it will // be merged with route metadata, overriding keys that appear in both places. // “fallback_list“ entries will be used in order until a host is found. // // “fallback_list“ key itself is removed from metadata before subset load balancing is performed. // // Example: // // for metadata: // // .. code-block:: yaml // // version: 1.0 // fallback_list: // - version: 2.0 // hardware: c64 // - hardware: c32 // - version: 3.0 // // at first, metadata: // // .. code-block:: json // // {"version": "2.0", "hardware": "c64"} // // will be used for load balancing. If no host is found, metadata: // // .. code-block:: json // // {"version": "1.0", "hardware": "c32"} // // is next to try. If it still results in no host, finally metadata: // // .. code-block:: json // // {"version": "3.0"} // // is used. Subset_FALLBACK_LIST Subset_LbSubsetMetadataFallbackPolicy = 1 )
func (Subset_LbSubsetMetadataFallbackPolicy) Descriptor ¶
func (Subset_LbSubsetMetadataFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
func (Subset_LbSubsetMetadataFallbackPolicy) EnumDescriptor
deprecated
func (Subset_LbSubsetMetadataFallbackPolicy) EnumDescriptor() ([]byte, []int)
Deprecated: Use Subset_LbSubsetMetadataFallbackPolicy.Descriptor instead.
func (Subset_LbSubsetMetadataFallbackPolicy) Number ¶
func (x Subset_LbSubsetMetadataFallbackPolicy) Number() protoreflect.EnumNumber
func (Subset_LbSubsetMetadataFallbackPolicy) String ¶
func (x Subset_LbSubsetMetadataFallbackPolicy) String() string
func (Subset_LbSubsetMetadataFallbackPolicy) Type ¶
func (Subset_LbSubsetMetadataFallbackPolicy) Type() protoreflect.EnumType
type Subset_LbSubsetSelector ¶
type Subset_LbSubsetSelector struct { // List of keys to match with the weighted cluster metadata. Keys []string `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"` // Selects a mode of operation in which each subset has only one host. This mode uses the same rules for // choosing a host, but updating hosts is faster, especially for large numbers of hosts. // // If a match is found to a host, that host will be used regardless of priority levels. // // When this mode is enabled, configurations that contain more than one host with the same metadata value for the single key in “keys“ // will use only one of the hosts with the given key; no requests will be routed to the others. The cluster gauge // :ref:`lb_subsets_single_host_per_subset_duplicate<config_cluster_manager_cluster_stats_subset_lb>` indicates how many duplicates are // present in the current configuration. SingleHostPerSubset bool `protobuf:"varint,4,opt,name=single_host_per_subset,json=singleHostPerSubset,proto3" json:"single_host_per_subset,omitempty"` // The behavior used when no endpoint subset matches the selected route's // metadata. FallbackPolicy Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy `` /* 215-byte string literal not displayed */ // Subset of // :ref:`keys<envoy_v3_api_field_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetSelector.keys>` used by // :ref:`KEYS_SUBSET<envoy_v3_api_enum_value_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetSelector.LbSubsetSelectorFallbackPolicy.KEYS_SUBSET>` // fallback policy. // It has to be a non empty list if KEYS_SUBSET fallback policy is selected. // For any other fallback policy the parameter is not used and should not be set. // Only values also present in // :ref:`keys<envoy_v3_api_field_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetSelector.keys>` are allowed, but // “fallback_keys_subset“ cannot be equal to “keys“. FallbackKeysSubset []string `protobuf:"bytes,3,rep,name=fallback_keys_subset,json=fallbackKeysSubset,proto3" json:"fallback_keys_subset,omitempty"` // contains filtered or unexported fields }
Specifications for subsets.
func (*Subset_LbSubsetSelector) Descriptor
deprecated
func (*Subset_LbSubsetSelector) Descriptor() ([]byte, []int)
Deprecated: Use Subset_LbSubsetSelector.ProtoReflect.Descriptor instead.
func (*Subset_LbSubsetSelector) GetFallbackKeysSubset ¶
func (x *Subset_LbSubsetSelector) GetFallbackKeysSubset() []string
func (*Subset_LbSubsetSelector) GetFallbackPolicy ¶
func (x *Subset_LbSubsetSelector) GetFallbackPolicy() Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy
func (*Subset_LbSubsetSelector) GetKeys ¶
func (x *Subset_LbSubsetSelector) GetKeys() []string
func (*Subset_LbSubsetSelector) GetSingleHostPerSubset ¶
func (x *Subset_LbSubsetSelector) GetSingleHostPerSubset() bool
func (*Subset_LbSubsetSelector) ProtoMessage ¶
func (*Subset_LbSubsetSelector) ProtoMessage()
func (*Subset_LbSubsetSelector) ProtoReflect ¶
func (x *Subset_LbSubsetSelector) ProtoReflect() protoreflect.Message
func (*Subset_LbSubsetSelector) Reset ¶
func (x *Subset_LbSubsetSelector) Reset()
func (*Subset_LbSubsetSelector) String ¶
func (x *Subset_LbSubsetSelector) String() string
func (*Subset_LbSubsetSelector) Validate ¶
func (m *Subset_LbSubsetSelector) Validate() error
Validate checks the field values on Subset_LbSubsetSelector with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.
func (*Subset_LbSubsetSelector) ValidateAll ¶
func (m *Subset_LbSubsetSelector) ValidateAll() error
ValidateAll checks the field values on Subset_LbSubsetSelector with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in Subset_LbSubsetSelectorMultiError, or nil if none found.
type Subset_LbSubsetSelectorMultiError ¶
type Subset_LbSubsetSelectorMultiError []error
Subset_LbSubsetSelectorMultiError is an error wrapping multiple validation errors returned by Subset_LbSubsetSelector.ValidateAll() if the designated constraints aren't met.
func (Subset_LbSubsetSelectorMultiError) AllErrors ¶
func (m Subset_LbSubsetSelectorMultiError) AllErrors() []error
AllErrors returns a list of validation violation errors.
func (Subset_LbSubsetSelectorMultiError) Error ¶
func (m Subset_LbSubsetSelectorMultiError) Error() string
Error returns a concatenation of all the error messages it wraps.
type Subset_LbSubsetSelectorValidationError ¶
type Subset_LbSubsetSelectorValidationError struct {
// contains filtered or unexported fields
}
Subset_LbSubsetSelectorValidationError is the validation error returned by Subset_LbSubsetSelector.Validate if the designated constraints aren't met.
func (Subset_LbSubsetSelectorValidationError) Cause ¶
func (e Subset_LbSubsetSelectorValidationError) Cause() error
Cause function returns cause value.
func (Subset_LbSubsetSelectorValidationError) Error ¶
func (e Subset_LbSubsetSelectorValidationError) Error() string
Error satisfies the builtin error interface
func (Subset_LbSubsetSelectorValidationError) ErrorName ¶
func (e Subset_LbSubsetSelectorValidationError) ErrorName() string
ErrorName returns error name.
func (Subset_LbSubsetSelectorValidationError) Field ¶
func (e Subset_LbSubsetSelectorValidationError) Field() string
Field function returns field value.
func (Subset_LbSubsetSelectorValidationError) Key ¶
func (e Subset_LbSubsetSelectorValidationError) Key() bool
Key function returns key value.
func (Subset_LbSubsetSelectorValidationError) Reason ¶
func (e Subset_LbSubsetSelectorValidationError) Reason() string
Reason function returns reason value.
type Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy ¶
type Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy int32
Allows to override top level fallback policy per selector.
const ( // If NOT_DEFINED top level config fallback policy is used instead. Subset_LbSubsetSelector_NOT_DEFINED Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy = 0 // If NO_FALLBACK is selected, a result equivalent to no healthy hosts is reported. Subset_LbSubsetSelector_NO_FALLBACK Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy = 1 // If ANY_ENDPOINT is selected, any cluster endpoint may be returned // (subject to policy, health checks, etc). Subset_LbSubsetSelector_ANY_ENDPOINT Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy = 2 // If DEFAULT_SUBSET is selected, load balancing is performed over the // endpoints matching the values from the default_subset field. Subset_LbSubsetSelector_DEFAULT_SUBSET Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy = 3 // If KEYS_SUBSET is selected, subset selector matching is performed again with metadata // keys reduced to // :ref:`fallback_keys_subset<envoy_v3_api_field_extensions.load_balancing_policies.subset.v3.Subset.LbSubsetSelector.fallback_keys_subset>`. // It allows for a fallback to a different, less specific selector if some of the keys of // the selector are considered optional. Subset_LbSubsetSelector_KEYS_SUBSET Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy = 4 )
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Descriptor ¶
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Descriptor() protoreflect.EnumDescriptor
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) EnumDescriptor
deprecated
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) EnumDescriptor() ([]byte, []int)
Deprecated: Use Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy.Descriptor instead.
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Number ¶
func (x Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) Number() protoreflect.EnumNumber
func (Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) String ¶
func (x Subset_LbSubsetSelector_LbSubsetSelectorFallbackPolicy) String() string