Proto: failover_policy.proto

Package: resilience.policy.gloo.solo.io

Types:

FailoverPolicyReport

FieldDescription
workspaces(repeated FailoverPolicyReport.WorkspacesEntry)

selectedDestinationPorts(repeated common.gloo.solo.io.DestinationReference)

A list of destination ports selected by the policy.

FailoverPolicyReport.WorkspacesEntry

FieldDescription
key(string)

value(common.gloo.solo.io.Report)

FailoverPolicySpec

FailoverPolicy is used to enable or configure failover routing for traffic being sent to selected destinations. When traffic is being routed to a backing service within a selected virtual destination, if that backing service is detected as being in an unhealthy state, traffic will be re-routed to another healthy backing service by locality as specified in the FailoverPolicy config. FailoverPolicy can be used to reroute traffic across clusters when the local instance of a destination service fails. This requires that the backing destinations of the selected virtual destination belong to meshes in the same TrustDomain. FailoverPolicies are applied at the Destination level.

Note: To remove unhealthy destinations from the pool of routable destinations, you must use an OutlierDetectionPolicy in addition to the FailoverPolicy.

FieldDescription
applyToDestinations(repeated common.gloo.solo.io.DestinationSelector)

select the virtual destinations where the policy will be applied if left empty, will apply to all destinations in the workspace.
config(FailoverPolicySpec.Config)

The details of the failover policy to apply to the selected virtual destinations.
You can exclude this if you wish to enable the locality load balancer settings without mappings.

FailoverPolicySpec.Config

FieldDescription
localityMappings(repeated FailoverPolicySpec.Config.LocalityMappings)

Mappings between localities to provide failover for traffic across regions, zones, and subzones.
You can exclude this if you wish to enable the locality load balancer settings without mappings.

FailoverPolicySpec.Config.LocalityMappings

FieldDescription
from(FailoverPolicySpec.Config.LocalityMappings.OriginatingLocality)

Originating locality of the client workload.
to(repeated FailoverPolicySpec.Config.LocalityMappings.DestinationLocality)

The list of Destination localities that can be routed to if the instance local to the client workload is not available.

FailoverPolicySpec.Config.LocalityMappings.DestinationLocality

A geographic location defined by a region, zone, and sub-zone along with the weight for the destination.

FieldDescription
region(string)

The locality’s region.
zone(string)

(Optional) The locality’s zone.
subZone(string)

(Optional) The locality’s sub-zone.
weight(google.protobuf.UInt32Value)

(Optional) Weight for destination locality. All weights must add up to 100. If not provided, we will determine the weight based on other destination locality weights. For information about the value format, see the Google protocol buffer documentation.

FailoverPolicySpec.Config.LocalityMappings.OriginatingLocality

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

FieldDescription
region(string)

The locality’s region.
zone(string)

(Optional) The locality’s zone.
subZone(string)

(Optional) The locality’s sub-zone.

FailoverPolicyStatus

reflects the status of the FailoverPolicy

FieldDescription
common(common.gloo.solo.io.Status)

numSelectedDestinationPorts(uint32)

The number of destination ports selected by the policy.