Cluster manager

Cluster manager architecture overview.

{
  "clusters": [],
  "sds": "{...}",
  "local_cluster_name": "...",
  "outlier_detection": "{...}",
  "cds": "{...}"
}
clusters
(required, array) A list of upstream clusters that the cluster manager performs service discovery, health checking, and load balancing on.
sds
(sometimes required, object) If any defined clusters use the sds cluster type, a global SDS configuration must be specified.
local_cluster_name
(optional, string) Name of the local cluster (i.e., the cluster that owns the Envoy running this configuration). In order to enable zone aware routing this option must be set. If local_cluster_name is defined then clusters must contain a definition of a cluster with the same name.
outlier_detection
(optional, object) Optional global configuration for outlier detection.
cds
(optional, object) Optional configuration for the cluster discovery service (CDS) API.

Statistics

The cluster manager has a statistics tree rooted at cluster_manager. with the following statistics:

Name Type Description
cluster_added Counter Total clusters added (either via static config or CDS)
cluster_modified Counter Total clusters modified (via CDS)
cluster_removed Counter Total clusters removed (via CDS)
total_clusters Gauge Number of currently loaded clusters