.. _envoy_api_file_envoy/api/v2/eds.proto:

EDS
===


.. _envoy_api_msg_ClusterLoadAssignment:

ClusterLoadAssignment
---------------------

`[ClusterLoadAssignment proto] <https://github.com/envoyproxy/envoy/blob/master/api/envoy/api/v2/eds.proto#L40>`_

Each route from RDS will map to a single cluster or traffic split across
clusters using weights expressed in the RDS WeightedCluster.

With EDS, each cluster is treated independently from a LB perspective, with
LB taking place between the Localities within a cluster and at a finer
granularity between the hosts within a locality. For a given cluster, the
effective weight of a host is its load_balancing_weight multiplied by the
load_balancing_weight of its Locality.

.. code-block:: json

  {
    "cluster_name": "...",
    "endpoints": [],
    "policy": "{...}"
  }

.. _envoy_api_field_ClusterLoadAssignment.cluster_name:

cluster_name
  (`string <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_, *REQUIRED*) Name of the cluster. This will be the :ref:`service_name
  <envoy_api_field_Cluster.EdsClusterConfig.service_name>` value if specified
  in the cluster :ref:`EdsClusterConfig
  <envoy_api_msg_Cluster.EdsClusterConfig>`.
  
  
.. _envoy_api_field_ClusterLoadAssignment.endpoints:

endpoints
  (:ref:`endpoint.LocalityLbEndpoints <envoy_api_msg_endpoint.LocalityLbEndpoints>`) List of endpoints to load balance to.
  
  
.. _envoy_api_field_ClusterLoadAssignment.policy:

policy
  (:ref:`ClusterLoadAssignment.Policy <envoy_api_msg_ClusterLoadAssignment.Policy>`) Load balancing policy settings.
  
  
.. _envoy_api_msg_ClusterLoadAssignment.Policy:

ClusterLoadAssignment.Policy
----------------------------

`[ClusterLoadAssignment.Policy proto] <https://github.com/envoyproxy/envoy/blob/master/api/envoy/api/v2/eds.proto#L51>`_

Load balancing policy settings.

.. code-block:: json

  {
    "drop_overload": "..."
  }

.. _envoy_api_field_ClusterLoadAssignment.Policy.drop_overload:

drop_overload
  (`double <https://developers.google.com/protocol-buffers/docs/proto#scalar>`_) Percentage of traffic (0-100) that should be dropped. This
  action allows protection of upstream hosts should they unable to
  recover from an outage or should they be unable to autoscale and hence
  overall incoming traffic volume need to be trimmed to protect them.
  
  
  .. NOTE::
    **v2 API difference**: This is known as maintenance mode in v1.