.. _start_quick_start_dynamic_control_plane:
Configuration: Dynamic from control plane
=========================================
These instructions are slightly more complex as you must also set up a control plane to provide Envoy with its
configuration.
There are a number of control planes compatible with Envoy's API such as `Gloo `_
or `Istio `_.
You may also wish to explore implementing your own control plane, in which case the
`Go Control Plane `_ provides a reference implementation
that is a good place to start.
At a minimum, you will need to start Envoy configured with the following sections:
- :ref:`node ` to uniquely identify the proxy node.
- :ref:`dynamic_resources ` to tell Envoy which configurations should be updated dynamically
- :ref:`static_resources ` to specify where Envoy should retrieve its configuration from.
You can also add an :ref:`admin ` section if you wish to monitor Envoy or
retrieve stats or configuration information.
The following sections walk through the dynamic configuration provided in the
:download:`demo dynamic control plane configuration file <_include/envoy-dynamic-control-plane-demo.yaml>`.
.. _start_quick_start_dynamic_node:
``node``
--------
The :ref:`node ` should specify ``cluster`` and ``id``.
.. literalinclude:: _include/envoy-dynamic-control-plane-demo.yaml
:language: yaml
:linenos:
:lines: 1-5
:emphasize-lines: 1-3
.. _start_quick_start_dynamic_dynamic_resources:
``dynamic_resources``
---------------------
The :ref:`dynamic_resources ` specify
the configuration to load dynamically, and the :ref:`cluster `
to connect to for dynamic configuration updates.
In this example, the configuration is provided by the ``xds_cluster`` configured below.
.. literalinclude:: _include/envoy-dynamic-control-plane-demo.yaml
:language: yaml
:linenos:
:lines: 3-19
:lineno-start: 3
:emphasize-lines: 3-15
.. _start_quick_start_dynamic_static_resources:
``static_resources``
--------------------
Here we specify the :ref:`static_resources `
to retrieve dynamic configuration from.
The ``xds_cluster`` is configured to query a control plane at http://my-control-plane:18000 .
.. literalinclude:: _include/envoy-dynamic-control-plane-demo.yaml
:language: yaml
:linenos:
:lines: 17-35
:lineno-start: 17
:emphasize-lines: 3-17