Proto: virtual_destination.proto




VirtualDestinations define groupings of backing destinations (for network traffic).

Field Description
hosts (repeated string)

Optional: The set of custom hosts for which this virtual destination will serve traffic.
services (repeated

Selectors for the backing K8s services that comprise this VirtualDestination. A service will be selected if it matches any of the given selectors. Currently only one K8s Service can be selected per cluster. If more than one service is selected within a cluster the VirtualDestination will be invalid and will not be translated. When a request is routed through the VirtualDestination, it will be forwarded to one of the backing services, selected at random. (To forward to the service on the local cluster only, a FailoverPolicy and/or OutlierDetectionPolicy must be configured.) If a deployment is unavailable, requests will not be forwarded to that deployment.
externalServices (repeated

Selectors for the backing External services that comprise this VirtualDestination. An external service will be selected if it matches any of the given selectors. Multiple External Services can be selected.
ports (repeated VirtualDestinationSpec.PortMapping)

Required: The ports on which the VirtualDestination will serve traffic. Must have at least one port.
clientMode (

Optional: Client mode determines how the VirtualDestination will be translated. If nil, the mode is inherited from the WorkspaceSettings defined by the admin.


PortMapping establishes a new port that will be exposed on a VirtualDestination.

Field Description
number (uint32)

The port number. Must be a valid, non-negative integer port number.
protocol (string)

The protocol used in communication with this destination MUST be one of the following: HTTP, HTTPS, GRPC, HTTP2, MONGO, TCP, TLS. Note that the VirtualDestination protocol may not match the protocol of the backing k8s Service(s). For example, VirtualDestinations pointing to GRPC services will need the protocol set to GRPC. The prefix of the k8s Service port's name will typically match the needed PROTOCOL in such cases.
targetPort (

(optional): The port number or name used to match the corresponding port on the VirtualDestination's backing Services and ExternalServices. All of the backing services for this VirtualDestination must contain this port, matching by name or number. If unspecified, will default to the value of the port number field above.


reflects the status of the VirtualDestination

Field Description
global (

workspaces (repeated VirtualDestinationStatus.WorkspacesEntry)

The status of the resource in each workspace that it exists in.
appliedDestinationPolicies (repeated VirtualDestinationStatus.AppliedDestinationPoliciesEntry)

Map of policy GVK to policy references for all policies applied on this resource.
selectedBackingServices (repeated

Destinations that back this virtual destination
ownerWorkspace (

Name of Workspace that owns VirtualDestination


Field Description
key (string)

value (


Field Description
key (string)

value (