package compositev3
import "github.com/envoyproxy/go-control-plane/envoy/extensions/clusters/composite/v3"
Index ¶
- Variables
- type ClusterConfig
- func (*ClusterConfig) Descriptor() ([]byte, []int)
- func (x *ClusterConfig) GetClusters() []*ClusterConfig_ClusterEntry
- func (*ClusterConfig) ProtoMessage()
- func (x *ClusterConfig) ProtoReflect() protoreflect.Message
- func (x *ClusterConfig) Reset()
- func (x *ClusterConfig) String() string
- func (m *ClusterConfig) Validate() error
- func (m *ClusterConfig) ValidateAll() error
- type ClusterConfigMultiError
- func (m ClusterConfigMultiError) AllErrors() []error
- func (m ClusterConfigMultiError) Error() string
- type ClusterConfigValidationError
- func (e ClusterConfigValidationError) Cause() error
- func (e ClusterConfigValidationError) Error() string
- func (e ClusterConfigValidationError) ErrorName() string
- func (e ClusterConfigValidationError) Field() string
- func (e ClusterConfigValidationError) Key() bool
- func (e ClusterConfigValidationError) Reason() string
- type ClusterConfig_ClusterEntry
- func (*ClusterConfig_ClusterEntry) Descriptor() ([]byte, []int)
- func (x *ClusterConfig_ClusterEntry) GetName() string
- func (*ClusterConfig_ClusterEntry) ProtoMessage()
- func (x *ClusterConfig_ClusterEntry) ProtoReflect() protoreflect.Message
- func (x *ClusterConfig_ClusterEntry) Reset()
- func (x *ClusterConfig_ClusterEntry) String() string
- func (m *ClusterConfig_ClusterEntry) Validate() error
- func (m *ClusterConfig_ClusterEntry) ValidateAll() error
- type ClusterConfig_ClusterEntryMultiError
- func (m ClusterConfig_ClusterEntryMultiError) AllErrors() []error
- func (m ClusterConfig_ClusterEntryMultiError) Error() string
- type ClusterConfig_ClusterEntryValidationError
- func (e ClusterConfig_ClusterEntryValidationError) Cause() error
- func (e ClusterConfig_ClusterEntryValidationError) Error() string
- func (e ClusterConfig_ClusterEntryValidationError) ErrorName() string
- func (e ClusterConfig_ClusterEntryValidationError) Field() string
- func (e ClusterConfig_ClusterEntryValidationError) Key() bool
- func (e ClusterConfig_ClusterEntryValidationError) Reason() string
Variables ¶
var File_envoy_extensions_clusters_composite_v3_cluster_proto protoreflect.FileDescriptor
Types ¶
type ClusterConfig ¶
type ClusterConfig struct {
// List of clusters to use for request routing. The first cluster is used for the
// initial request (attempt 1), the second cluster for the first retry (attempt 2),
// and so on. Must contain at least one cluster. When retry attempts exceed the number
// of configured clusters, requests will fail with no host available.
Clusters []*ClusterConfig_ClusterEntry `protobuf:"bytes,1,rep,name=clusters,proto3" json:"clusters,omitempty"`
// contains filtered or unexported fields
}
Configuration for the composite cluster. See the :ref:`architecture overview <arch_overview_composite_cluster>` for more information. This cluster type enables retry-aware cluster selection, allowing different retry attempts to automatically target different upstream clusters. Unlike the standard aggregate cluster which uses health-based selection, the composite cluster uses the retry attempt count to deterministically select which sub-cluster to route to.
When retry attempts exceed the number of configured clusters, requests will fail with no host available.
Example configuration:
.. code-block:: yaml
name: composite_cluster
connect_timeout: 0.25s
lb_policy: CLUSTER_PROVIDED
cluster_type:
name: envoy.clusters.composite
typed_config:
"@type": type.googleapis.com/envoy.extensions.clusters.composite.v3.ClusterConfig
clusters:
- name: primary_cluster
- name: secondary_cluster
- name: fallback_cluster
[#extension: envoy.clusters.composite]
func (*ClusterConfig) Descriptor ¶
func (*ClusterConfig) Descriptor() ([]byte, []int)
Deprecated: Use ClusterConfig.ProtoReflect.Descriptor instead.
func (*ClusterConfig) GetClusters ¶
func (x *ClusterConfig) GetClusters() []*ClusterConfig_ClusterEntry
func (*ClusterConfig) ProtoMessage ¶
func (*ClusterConfig) ProtoMessage()
func (*ClusterConfig) ProtoReflect ¶
func (x *ClusterConfig) ProtoReflect() protoreflect.Message
func (*ClusterConfig) Reset ¶
func (x *ClusterConfig) Reset()
func (*ClusterConfig) String ¶
func (x *ClusterConfig) String() string
func (*ClusterConfig) Validate ¶
func (m *ClusterConfig) Validate() error
Validate checks the field values on ClusterConfig 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 (*ClusterConfig) ValidateAll ¶
func (m *ClusterConfig) ValidateAll() error
ValidateAll checks the field values on ClusterConfig 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 ClusterConfigMultiError, or nil if none found.
type ClusterConfigMultiError ¶
type ClusterConfigMultiError []error
ClusterConfigMultiError is an error wrapping multiple validation errors returned by ClusterConfig.ValidateAll() if the designated constraints aren't met.
func (ClusterConfigMultiError) AllErrors ¶
func (m ClusterConfigMultiError) AllErrors() []error
AllErrors returns a list of validation violation errors.
func (ClusterConfigMultiError) Error ¶
func (m ClusterConfigMultiError) Error() string
Error returns a concatenation of all the error messages it wraps.
type ClusterConfigValidationError ¶
type ClusterConfigValidationError struct {
// contains filtered or unexported fields
}
ClusterConfigValidationError is the validation error returned by ClusterConfig.Validate if the designated constraints aren't met.
func (ClusterConfigValidationError) Cause ¶
func (e ClusterConfigValidationError) Cause() error
Cause function returns cause value.
func (ClusterConfigValidationError) Error ¶
func (e ClusterConfigValidationError) Error() string
Error satisfies the builtin error interface
func (ClusterConfigValidationError) ErrorName ¶
func (e ClusterConfigValidationError) ErrorName() string
ErrorName returns error name.
func (ClusterConfigValidationError) Field ¶
func (e ClusterConfigValidationError) Field() string
Field function returns field value.
func (ClusterConfigValidationError) Key ¶
func (e ClusterConfigValidationError) Key() bool
Key function returns key value.
func (ClusterConfigValidationError) Reason ¶
func (e ClusterConfigValidationError) Reason() string
Reason function returns reason value.
type ClusterConfig_ClusterEntry ¶
type ClusterConfig_ClusterEntry struct {
// Name of the cluster. This cluster must be defined elsewhere in the configuration.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// contains filtered or unexported fields
}
Configuration for an individual cluster entry.
func (*ClusterConfig_ClusterEntry) Descriptor ¶
func (*ClusterConfig_ClusterEntry) Descriptor() ([]byte, []int)
Deprecated: Use ClusterConfig_ClusterEntry.ProtoReflect.Descriptor instead.
func (*ClusterConfig_ClusterEntry) GetName ¶
func (x *ClusterConfig_ClusterEntry) GetName() string
func (*ClusterConfig_ClusterEntry) ProtoMessage ¶
func (*ClusterConfig_ClusterEntry) ProtoMessage()
func (*ClusterConfig_ClusterEntry) ProtoReflect ¶
func (x *ClusterConfig_ClusterEntry) ProtoReflect() protoreflect.Message
func (*ClusterConfig_ClusterEntry) Reset ¶
func (x *ClusterConfig_ClusterEntry) Reset()
func (*ClusterConfig_ClusterEntry) String ¶
func (x *ClusterConfig_ClusterEntry) String() string
func (*ClusterConfig_ClusterEntry) Validate ¶
func (m *ClusterConfig_ClusterEntry) Validate() error
Validate checks the field values on ClusterConfig_ClusterEntry 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 (*ClusterConfig_ClusterEntry) ValidateAll ¶
func (m *ClusterConfig_ClusterEntry) ValidateAll() error
ValidateAll checks the field values on ClusterConfig_ClusterEntry 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 ClusterConfig_ClusterEntryMultiError, or nil if none found.
type ClusterConfig_ClusterEntryMultiError ¶
type ClusterConfig_ClusterEntryMultiError []error
ClusterConfig_ClusterEntryMultiError is an error wrapping multiple validation errors returned by ClusterConfig_ClusterEntry.ValidateAll() if the designated constraints aren't met.
func (ClusterConfig_ClusterEntryMultiError) AllErrors ¶
func (m ClusterConfig_ClusterEntryMultiError) AllErrors() []error
AllErrors returns a list of validation violation errors.
func (ClusterConfig_ClusterEntryMultiError) Error ¶
func (m ClusterConfig_ClusterEntryMultiError) Error() string
Error returns a concatenation of all the error messages it wraps.
type ClusterConfig_ClusterEntryValidationError ¶
type ClusterConfig_ClusterEntryValidationError struct {
// contains filtered or unexported fields
}
ClusterConfig_ClusterEntryValidationError is the validation error returned by ClusterConfig_ClusterEntry.Validate if the designated constraints aren't met.
func (ClusterConfig_ClusterEntryValidationError) Cause ¶
func (e ClusterConfig_ClusterEntryValidationError) Cause() error
Cause function returns cause value.
func (ClusterConfig_ClusterEntryValidationError) Error ¶
func (e ClusterConfig_ClusterEntryValidationError) Error() string
Error satisfies the builtin error interface
func (ClusterConfig_ClusterEntryValidationError) ErrorName ¶
func (e ClusterConfig_ClusterEntryValidationError) ErrorName() string
ErrorName returns error name.
func (ClusterConfig_ClusterEntryValidationError) Field ¶
func (e ClusterConfig_ClusterEntryValidationError) Field() string
Field function returns field value.
func (ClusterConfig_ClusterEntryValidationError) Key ¶
func (e ClusterConfig_ClusterEntryValidationError) Key() bool
Key function returns key value.
func (ClusterConfig_ClusterEntryValidationError) Reason ¶
func (e ClusterConfig_ClusterEntryValidationError) Reason() string
Reason function returns reason value.
Source Files ¶
cluster.pb.go cluster.pb.validate.go
- Version
- v1.37.0 (latest)
- Published
- Jan 13, 2026
- Platform
- linux/amd64
- Imports
- 19 packages
- Last checked
- 1 hour ago –
Tools for package owners.