Package :



Table of Contents


A backing Destination. Has to be at the top level, as cue does not function well with referencing nested messages.

Field Type Label Description
kubeService Reference to a Kubernetes Service.


A VirtualDestination creates a new hostname to which client workloads can send requests. The hostname abstracts over a set of underlying Destinations and provides failover functionality between them. Failover order is determined by either an explicitly defined priority (static), or a list of locality directives (localized).
Each Destination backing the VirtualDestination must be configured with a TrafficPolicy's outlier detection. Currently this feature only supports Destinations backed by Istio.

Field Type Label Description
hostname string The DNS name of the VirtualDestination. Must be unique within the service mesh instance.
port The port on which the VirtualDestination listens.
virtualMesh The VirtualMesh that this VirtualDestination will be visible to.
meshList The Meshes that this VirtualDestination will be visible to. If multiple meshes are specified, they must all belong to the same VirtualMesh. Caveat: this VirtualDestination will be exported to the meshes for all selected backing destinations regardless of what's specified here.
static Failover priority is determined by an explicitly provided static ordering of Destinations.
localized Failover priority is determined by the localities of the traffic source and Destination.


Failover priority is determined by an explicitly provided static ordering of Destinations. When a Destination in the list is in an unhealthy state (as determined by its configured outlier detection), requests sent to the VirtualDestination will be routed to the next healthy Destination in the list.

Field Type Label Description
destinations [] repeated The list of Destinations backing the VirtualDestination, ordered by decreasing priority. All Destinations must be either in the same Mesh or in Meshes that are grouped under a common VirtualMesh. Required, cannot be omitted.


Enables failover based on locality. When a client workload makes a request to the VirtualDestination, Gloo Mesh will first try to direct traffic to the Destination instance geographically closest to the client workload. If outlier detection detects that the closest Destination is in an unhealthy state, requests will instead be routed to a Destination in one of the localities specified in the to field.

Field Type Label Description
destinationSelectors [] repeated Selectors for the Destinations backing the VirtualDestination. All Destinations must be either in the same mesh or in meshes that are grouped under a common VirtualMesh. Currently only one Destination per cluster can be selected, more than one per cluster will be considered invalid. Required, cannot be omitted.
failoverDirectives [] repeated Directives describing the locality failover behavior.
outlierDetection Outlier detection to determine the health of the selected services. If not set will default to the following: consecutiveGatewayErrors: 10 consecutive5XXErrors: 10 interval: 5s baseEjectionTime: 120s


A geographic location defined by a region, zone, and sub-zone.

Field Type Label Description
region string The locality's region.
zone string The locality's zone. Currently this value is not used.
subZone string The locality's sub-zone. Currently this value is not used.


Field Type Label Description
from The locality of the client workload.
to [] repeated The list of Destination localities that can be routed to if the instance local to the client workload is not available.


A list of Mesh references.

Field Type Label Description
meshes [] repeated


VirtualDestination port information. Contains information about which port to listen on, as well as which backend port to target.

Field Type Label Description
number uint32 REQUIRED: Port number which the VirtualDestination will listen on.
protocol string OPTIONAL: Protocol of the requests sent to the VirtualDestination. Must be one of HTTP, HTTPS, GRPC, HTTP2, MONGO, TCP, TLS. Default: HTTP
targetName string If the target_name is specified, the VirtualDestination will attempt to find a port by this name on all backing services
targetNumber uint32 If the target_number is specified, the VirtualDestination will attempt to find a port by this number on all backing services


Field Type Label Description
observedGeneration int64 The most recent generation observed in the the VirtualDestination metadata. If the observedGeneration does not match metadata.generation, Gloo Mesh has not processed the most recent version of this resource.
appliedTrafficPolicies [] repeated The set of TrafficPolicies that have been applied to this Virtual Destination. {{/* Note: validation of this field disabled because it slows down cue tremendously*/}}
appliedAccessPolicies [] repeated The set of AccessPolicies that have been applied to this Virtual Destination.
state The state of the overall resource, will only show accepted if it has been successfully applied to all exported to Meshes.
meshes [] repeated The status of the VirtualDestination for each Mesh to which it has been exported to.
selectedDestinations [] repeated The Destinations that comprise this VirtualDestination.
errors []string repeated Any errors found while processing this generation of the resource.
requiredSubsets [] repeated The set of TrafficPolicies that reference subsets on this VirtualDestination as a traffic shift.


Field Type Label Description
key string


Field Type Label Description
ref Reference to the Destination object.
destination The platform-specific destination that the Destination object represents.