From f1c46e0028a5d99f69fb545b17d1efa32b388b63 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 10:12:30 +0000 Subject: [PATCH 01/25] docs: Update quickstart to add dynamic configuration information Signed-off-by: Ryan Northey --- .../start/_include/envoy-dynamic-demo.yaml | 53 +++++++++++++++++++ docs/root/start/quick-start.rst | 49 +++++++++++++---- 2 files changed, 93 insertions(+), 9 deletions(-) create mode 100644 docs/root/start/_include/envoy-dynamic-demo.yaml diff --git a/docs/root/start/_include/envoy-dynamic-demo.yaml b/docs/root/start/_include/envoy-dynamic-demo.yaml new file mode 100644 index 000000000000..f43e9ded7d12 --- /dev/null +++ b/docs/root/start/_include/envoy-dynamic-demo.yaml @@ -0,0 +1,53 @@ +admin: + access_log_path: /dev/null + address: + socket_address: + address: 0.0.0.0 + port_value: 19000 + +dynamic_resources: + ads_config: + api_type: GRPC + transport_api_version: V3 + grpc_services: + - envoy_grpc: + cluster_name: xds_cluster + set_node_on_first_message_only: false + cds_config: + resource_api_version: V3 + ads: {} + lds_config: + resource_api_version: V3 + ads: {} +node: + cluster: test-cluster + id: test-id +static_resources: + clusters: + - connect_timeout: 1s + type: strict_dns + load_assignment: + cluster_name: xds_cluster + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: go-control-plane + port_value: 18000 + http2_protocol_options: {} + name: xds_cluster +layered_runtime: + layers: + - name: runtime-0 + rtds_layer: + rtds_config: + resource_api_version: V3 + ads: {} + name: runtime-0 + - name: runtime-1 + rtds_layer: + rtds_config: + resource_api_version: V3 + ads: {} + name: runtime-1 diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index a8134b23bd7a..a8c1e38dd757 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -147,8 +147,8 @@ You can also add an ``admin`` section if you wish to monitor Envoy or retrieve s The following sections walk through the static configuration provided in the :download:`demo configuration file <_include/envoy-demo.yaml>`. -Configuration: static_resources -******************************* +Static configuration: static_resources +************************************** The :ref:`static_resources ` contains everything that is configured statically when Envoy starts, as opposed to the means of configuring resources dynamically when Envoy is running. @@ -159,8 +159,8 @@ as opposed to the means of configuring resources dynamically when Envoy is runni :lines: 1-3 :emphasize-lines: 1 -Configuration: listeners -************************ +Static configuration: listeners +******************************* The specification of the :ref:`listeners `. @@ -171,8 +171,8 @@ The specification of the :ref:`listeners `. @@ -182,8 +182,8 @@ The specification of the :ref:`clusters ` is required to configure the administration server. @@ -205,7 +205,38 @@ which in the demo configuration is ``0.0.0.0:9901``. Dynamic configuration --------------------- -See the :ref:`configuration overview ` for further information on configuring Envoy with static and dynamic configuration. +Setting up Envoy with dynamic configuration is slightly more complex as you must also set up a control plane +to provide Envoy with its configuration. + +One example of a control plane compatible with Envoy is Istio's Pilot. + +You may also wish to explore implementing your own control plane, in which case the +`Go Control Plane `_ reference implementation is a good place +to start. + +At a minimum, you will need to start Envoy with ``node``, a ``dynamic_resources`` section to tell Envoy which +configurations should be updated dynamically, and a ``static_resources`` section to specify where Envoy should +retrieve its configuration from. + +You will also need to add a ``layered_runtime`` section to persist dynamically-provided configurations. + +You can also add an ``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 configuration file <_include/envoy-dynamic-demo.yaml>`. + +Dynamic configuration: node +*************************** + +The :ref:`static_resources ` contains everything that is configured statically when Envoy starts, +as opposed to the means of configuring resources dynamically when Envoy is running. + +.. literalinclude:: _include/envoy-dynamic-demo.yaml + :language: yaml + :linenos: + :lines: 1-3 + :emphasize-lines: 1 + Next steps From 2db6bd6b930b167468c08863c593e01b492c0e87 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 10:41:15 +0000 Subject: [PATCH 02/25] docs/ Signed-off-by: Ryan Northey --- .../start/_include/envoy-dynamic-demo.yaml | 21 +++--- docs/root/start/quick-start.rst | 65 +++++++++++++++---- 2 files changed, 66 insertions(+), 20 deletions(-) diff --git a/docs/root/start/_include/envoy-dynamic-demo.yaml b/docs/root/start/_include/envoy-dynamic-demo.yaml index f43e9ded7d12..f381425e731c 100644 --- a/docs/root/start/_include/envoy-dynamic-demo.yaml +++ b/docs/root/start/_include/envoy-dynamic-demo.yaml @@ -1,9 +1,6 @@ -admin: - access_log_path: /dev/null - address: - socket_address: - address: 0.0.0.0 - port_value: 19000 +node: + cluster: test-cluster + id: test-id dynamic_resources: ads_config: @@ -19,9 +16,7 @@ dynamic_resources: lds_config: resource_api_version: V3 ads: {} -node: - cluster: test-cluster - id: test-id + static_resources: clusters: - connect_timeout: 1s @@ -37,6 +32,7 @@ static_resources: port_value: 18000 http2_protocol_options: {} name: xds_cluster + layered_runtime: layers: - name: runtime-0 @@ -51,3 +47,10 @@ layered_runtime: resource_api_version: V3 ads: {} name: runtime-1 + +admin: + access_log_path: /dev/null + address: + socket_address: + address: 0.0.0.0 + port_value: 19000 diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index a8c1e38dd757..9a15b2d0aa8d 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -211,14 +211,14 @@ to provide Envoy with its configuration. One example of a control plane compatible with Envoy is Istio's Pilot. You may also wish to explore implementing your own control plane, in which case the -`Go Control Plane `_ reference implementation is a good place -to start. +`Go Control Plane `_ provides a reference implementation +that is a good place to start. -At a minimum, you will need to start Envoy with ``node``, a ``dynamic_resources`` section to tell Envoy which -configurations should be updated dynamically, and a ``static_resources`` section to specify where Envoy should -retrieve its configuration from. - -You will also need to add a ``layered_runtime`` section to persist dynamically-provided configurations. +At a minimum, you will need to start Envoy configured with the following sections: +- ``node`` information, to uniquely identify the proxy node. +- ``dynamic_resources`` to tell Envoy which configurations should be updated dynamically +- ``static_resources`` to specify where Envoy should retrieve its configuration from. +- ``layered_runtime`` to persist dynamically-provided configurations. You can also add an ``admin`` section if you wish to monitor Envoy or retrieve stats or configuration information. @@ -228,15 +228,58 @@ The following sections walk through the dynamic configuration provided in the Dynamic configuration: node *************************** -The :ref:`static_resources ` contains everything that is configured statically when Envoy starts, -as opposed to the means of configuring resources dynamically when Envoy is running. +The :ref:`node ` should specify... .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml :linenos: - :lines: 1-3 - :emphasize-lines: 1 + :lines: 1-5 + :emphasize-lines: 1-3 + + +Dynamic configuration: dynamic_resources +**************************************** + +The :ref:`node ` should specify... + +.. literalinclude:: _include/envoy-dynamic-demo.yaml + :language: yaml + :linenos: + :lines: 3-20 + :emphasize-lines: 3-15 + +Dynamic configuration: static_resources +*************************************** + +The :ref:`node ` should specify... + +.. literalinclude:: _include/envoy-dynamic-demo.yaml + :language: yaml + :linenos: + :lines: 18-36 + :emphasize-lines: 3-11 + +Dynamic configuration: layered_runtime +************************************** + +The :ref:`node ` should specify... +.. literalinclude:: _include/envoy-dynamic-demo.yaml + :language: yaml + :linenos: + :lines: 34-51 + :emphasize-lines: 3-10 + +Dynamic configuration: admin +**************************** + +The :ref:`node ` should specify... + +.. literalinclude:: _include/envoy-dynamic-demo.yaml + :language: yaml + :linenos: + :lines: 51-56 + :emphasize-lines: 1-4 Next steps From 4fd733c2dcf52b0f3a3c61f03cdca975013f12cc Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 11:04:59 +0000 Subject: [PATCH 03/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 9a15b2d0aa8d..3f4764e45473 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -240,24 +240,26 @@ The :ref:`node ` should s Dynamic configuration: dynamic_resources **************************************** -The :ref:`node ` should specify... +The :ref:`dynamic_resources ` should specify... .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml :linenos: :lines: 3-20 - :emphasize-lines: 3-15 + :lineno-start: 3 + :emphasize-lines: 3-16 Dynamic configuration: static_resources *************************************** -The :ref:`node ` should specify... +The :ref:`static_resources ` should specify... .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml :linenos: :lines: 18-36 - :emphasize-lines: 3-11 + :lineno-start: 18 + :emphasize-lines: 3-17 Dynamic configuration: layered_runtime ************************************** @@ -268,7 +270,8 @@ The :ref:`node ` should :language: yaml :linenos: :lines: 51-56 - :emphasize-lines: 1-4 - + :lineno-start: 51 + :emphasize-lines: 1-6 Next steps ---------- From 9d492867a6a55fcf03d4cae81af3a421fea04a13 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 11:37:44 +0000 Subject: [PATCH 04/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 52 ++++++++++++++++++++------------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 3f4764e45473..723c35704e7d 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -147,8 +147,8 @@ You can also add an ``admin`` section if you wish to monitor Envoy or retrieve s The following sections walk through the static configuration provided in the :download:`demo configuration file <_include/envoy-demo.yaml>`. -Static configuration: static_resources -************************************** +Static configuration: ``static_resources`` +****************************************** The :ref:`static_resources ` contains everything that is configured statically when Envoy starts, as opposed to the means of configuring resources dynamically when Envoy is running. @@ -159,8 +159,8 @@ as opposed to the means of configuring resources dynamically when Envoy is runni :lines: 1-3 :emphasize-lines: 1 -Static configuration: listeners -******************************* +Static configuration: ``listeners`` +*********************************** The specification of the :ref:`listeners `. @@ -171,8 +171,8 @@ The specification of the :ref:`listeners `. @@ -182,8 +182,8 @@ The specification of the :ref:`clusters ` is required to configure the administration server. @@ -208,13 +208,15 @@ Dynamic configuration Setting up Envoy with dynamic configuration is slightly more complex as you must also set up a control plane to provide Envoy with its configuration. -One example of a control plane compatible with Envoy is Istio's Pilot. +There are a number of control planes compatible with Envoy's API such as `Gloo `_ +or `Istiod `_. 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: + - ``node`` information, to uniquely identify the proxy node. - ``dynamic_resources`` to tell Envoy which configurations should be updated dynamically - ``static_resources`` to specify where Envoy should retrieve its configuration from. @@ -225,8 +227,8 @@ You can also add an ``admin`` section if you wish to monitor Envoy or retrieve s The following sections walk through the dynamic configuration provided in the :download:`demo dynamic configuration file <_include/envoy-dynamic-demo.yaml>`. -Dynamic configuration: node -*************************** +Dynamic configuration: ``node`` +******************************* The :ref:`node ` should specify... @@ -237,8 +239,8 @@ The :ref:`node ` should s :emphasize-lines: 1-3 -Dynamic configuration: dynamic_resources -**************************************** +Dynamic configuration: ``dynamic_resources`` +******************************************** The :ref:`dynamic_resources ` should specify... @@ -249,8 +251,8 @@ The :ref:`dynamic_resources ` should specify... @@ -261,10 +263,10 @@ The :ref:`static_resources ` should specify... +The :ref:`layered_runtime ` should specify... .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml @@ -273,10 +275,14 @@ The :ref:`node ` section is +the same as for static configuration. -The :ref:`node ` should specify... +Enabling the ``admin`` interface with dynamic configuration, allows you to see how Envoy is +currently configured by using the ``config_dump`` endpoint. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml @@ -285,6 +291,10 @@ The :ref:`node ` should :lineno-start: 51 :emphasize-lines: 1-6 +.. warning:: + + You may wish to restrict the network address the admin server listens to in your own deployment. + Next steps ---------- From 23145553f39b7cbfae8ee03f19d7995e9ad762f6 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 12:15:05 +0000 Subject: [PATCH 05/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 46 +++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 11 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 723c35704e7d..3a35e5d23ac1 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -7,6 +7,8 @@ Quick start The following instructions walk through starting Envoy as a system daemon or using the Envoy Docker image. +.. _start_quick_start_version: + Check your Envoy version ------------------------ @@ -26,6 +28,7 @@ Once you have :ref:`installed Envoy `, you can check the version inform $ docker run --rm envoyproxy/|envoy_docker_image| --version +.. _start_quick_start_help: View the Envoy command line options ----------------------------------- @@ -47,6 +50,7 @@ flag: $ docker run --rm envoyproxy/|envoy_docker_image| --help +.. _start_quick_start_config: Run Envoy with the demo configuration ------------------------------------- @@ -91,6 +95,7 @@ The Envoy admin endpoint should also be available at http://localhost:9901 $ curl -v localhost:9901 +.. _start_quick_start_override: Override the default configuration by merging a config file ----------------------------------------------------------- @@ -136,22 +141,26 @@ The Envoy admin endpoint should also be available at http://localhost:9901 $ curl -v localhost:9901 +.. _start_quick_start_static: Static configuration -------------------- -To start Envoy with static configuration, you will need to specify ``listeners`` and ``clusters`` -as ``static_resources``. +To start Envoy with static configuration, you will need to specify `listeners ` and +`clusters ` as `static_resources `. + +You can also add an `admin ` section if you wish to monitor Envoy or retrieve stats. -You can also add an ``admin`` section if you wish to monitor Envoy or retrieve stats. +The following sections walk through the static configuration provided in the +:download:`demo configuration file <_include/envoy-demo.yaml>`. -The following sections walk through the static configuration provided in the :download:`demo configuration file <_include/envoy-demo.yaml>`. +.. _start_quick_start_static_static_resources: Static configuration: ``static_resources`` ****************************************** -The :ref:`static_resources ` contains everything that is configured statically when Envoy starts, -as opposed to the means of configuring resources dynamically when Envoy is running. +The :ref:`static_resources ` contains +everything that is configured statically when Envoy starts, as opposed to dynamically at runtime. .. literalinclude:: _include/envoy-demo.yaml :language: yaml @@ -159,6 +168,8 @@ as opposed to the means of configuring resources dynamically when Envoy is runni :lines: 1-3 :emphasize-lines: 1 +.. _start_quick_start_static_listeners: + Static configuration: ``listeners`` *********************************** @@ -170,6 +181,7 @@ The specification of the :ref:`listeners ` information, to uniquely identify the proxy node. +- `dynamic_resources ` to tell Envoy which configurations should be updated dynamically +- `static_resources ` to specify where Envoy should retrieve its configuration from. +- `layered_runtime ` to persist dynamically-provided configurations. -You can also add an ``admin`` section if you wish to monitor Envoy or retrieve stats or configuration information. +You can also add an `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 configuration file <_include/envoy-dynamic-demo.yaml>`. +.. _start_quick_start_dynamic_node: + Dynamic configuration: ``node`` ******************************* @@ -238,6 +255,7 @@ The :ref:`node ` should s :lines: 1-5 :emphasize-lines: 1-3 +.. _start_quick_start_dynamic_dynamic_resources: Dynamic configuration: ``dynamic_resources`` ******************************************** @@ -251,6 +269,8 @@ The :ref:`dynamic_resources Date: Mon, 26 Oct 2020 12:37:12 +0000 Subject: [PATCH 06/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 3a35e5d23ac1..36fbd0881cc1 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -146,10 +146,12 @@ The Envoy admin endpoint should also be available at http://localhost:9901 Static configuration -------------------- -To start Envoy with static configuration, you will need to specify `listeners ` and -`clusters ` as `static_resources `. +To start Envoy with static configuration, you will need to specify :ref:`listeners ` +and :ref:`clusters ` as +:ref:`static_resources `. -You can also add an `admin ` section if you wish to monitor Envoy or retrieve stats. +You can also add an :ref:`admin ` section if you wish to monitor Envoy +or retrieve stats. The following sections walk through the static configuration provided in the :download:`demo configuration file <_include/envoy-demo.yaml>`. @@ -232,12 +234,13 @@ that is a good place to start. At a minimum, you will need to start Envoy configured with the following sections: -- `node ` information, to uniquely identify the proxy node. -- `dynamic_resources ` to tell Envoy which configurations should be updated dynamically -- `static_resources ` to specify where Envoy should retrieve its configuration from. -- `layered_runtime ` to persist dynamically-provided configurations. +- :ref:`node ` information, 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. +- :ref:`layered_runtime ` to persist dynamically-provided configurations. -You can also add an `admin ` section if you wish to monitor Envoy or retrieve stats or configuration information. +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 configuration file <_include/envoy-dynamic-demo.yaml>`. @@ -303,10 +306,11 @@ Dynamic configuration: ``admin`` ******************************** Configuring the :ref:`admin ` section is -the same as for static configuration. +the same as for :ref:`static configuration `. -Enabling the ``admin`` interface with dynamic configuration, allows you to see how Envoy is -currently configured by using the ``config_dump`` endpoint. +Enabling the :ref:`admin ` interface with +dynamic configuration, allows you to see how Envoy is currently configured by using the +:ref:`config_dump ` endpoint. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml From dc9731f064589d195bdebeedb9662b6a36603843 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 14:06:59 +0000 Subject: [PATCH 07/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/_include/envoy-demo.yaml | 23 +++++++++++++++-------- docs/root/start/quick-start.rst | 14 +++++++------- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/docs/root/start/_include/envoy-demo.yaml b/docs/root/start/_include/envoy-demo.yaml index b231bccd98fe..8b0897837634 100644 --- a/docs/root/start/_include/envoy-demo.yaml +++ b/docs/root/start/_include/envoy-demo.yaml @@ -3,7 +3,9 @@ static_resources: listeners: - name: listener_0 address: - socket_address: { address: 0.0.0.0, port_value: 10000 } + socket_address: + address: 0.0.0.0 + port_value: 10000 filter_chains: - filters: - name: envoy.filters.network.http_connection_manager @@ -17,34 +19,39 @@ static_resources: - name: local_service domains: ["*"] routes: - - match: { prefix: "/" } - route: { host_rewrite_literal: www.google.com, cluster: service_google } + - match: + prefix: "/" + route: + host_rewrite_literal: www.envoyproxy.io + cluster: service_envoyproxy_io http_filters: - name: envoy.filters.http.router clusters: - - name: service_google + - name: service_envoyproxy_io connect_timeout: 0.25s type: LOGICAL_DNS # Comment out the following line to test on v6 networks dns_lookup_family: V4_ONLY lb_policy: ROUND_ROBIN load_assignment: - cluster_name: service_google + cluster_name: service_envoyproxy_io endpoints: - lb_endpoints: - endpoint: address: socket_address: - address: www.google.com + address: service_envoyproxy_io port_value: 443 transport_socket: name: envoy.transport_sockets.tls typed_config: "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext - sni: www.google.com + sni: www.envoyproxy.io admin: access_log_path: /tmp/admin_access.log address: - socket_address: { address: 0.0.0.0, port_value: 9901 } + socket_address: + address: 0.0.0.0 + port_value: 9901 diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 36fbd0881cc1..c065d21397ba 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -180,8 +180,8 @@ The specification of the :ref:`listeners Date: Mon, 26 Oct 2020 15:19:20 +0000 Subject: [PATCH 08/25] docs/ Signed-off-by: Ryan Northey --- .../start/_include/envoy-dynamic-demo.yaml | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/docs/root/start/_include/envoy-dynamic-demo.yaml b/docs/root/start/_include/envoy-dynamic-demo.yaml index f381425e731c..2b0c443e6a11 100644 --- a/docs/root/start/_include/envoy-dynamic-demo.yaml +++ b/docs/root/start/_include/envoy-dynamic-demo.yaml @@ -9,7 +9,6 @@ dynamic_resources: grpc_services: - envoy_grpc: cluster_name: xds_cluster - set_node_on_first_message_only: false cds_config: resource_api_version: V3 ads: {} @@ -21,6 +20,8 @@ static_resources: clusters: - connect_timeout: 1s type: strict_dns + http2_protocol_options: {} + name: xds_cluster load_assignment: cluster_name: xds_cluster endpoints: @@ -28,25 +29,17 @@ static_resources: - endpoint: address: socket_address: - address: go-control-plane + address: my-control-plane port_value: 18000 - http2_protocol_options: {} - name: xds_cluster layered_runtime: layers: - - name: runtime-0 - rtds_layer: - rtds_config: - resource_api_version: V3 - ads: {} - name: runtime-0 - - name: runtime-1 - rtds_layer: - rtds_config: - resource_api_version: V3 - ads: {} - name: runtime-1 + - name: runtime-0 + rtds_layer: + name: runtime-0 + rtds_config: + resource_api_version: V3 + ads: {} admin: access_log_path: /dev/null From 94fa415798ccd541cea5574f76599c3fc3df9906 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 15:32:44 +0000 Subject: [PATCH 09/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index c065d21397ba..68d6d2528508 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -309,8 +309,8 @@ Configuring the :ref:`admin `. Enabling the :ref:`admin ` interface with -dynamic configuration, allows you to see how Envoy is currently configured by using the -:ref:`config_dump ` endpoint. +dynamic configuration, allows you to see use the :ref:`config_dump ` +endpoint to see how Envoy is currently configured. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml From e9f4a7c0f1b5f5a1fc5ece3107b47869bad811b7 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 15:38:34 +0000 Subject: [PATCH 10/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 68d6d2528508..dedded28d3f5 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -296,9 +296,9 @@ The :ref:`layered_runtime Date: Mon, 26 Oct 2020 15:41:18 +0000 Subject: [PATCH 11/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index dedded28d3f5..e40c2105f24e 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -192,9 +192,9 @@ The specification of the :ref:`clusters Date: Mon, 26 Oct 2020 16:44:53 +0000 Subject: [PATCH 12/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/_include/envoy-demo.yaml | 88 ++++++++++++------------ 1 file changed, 43 insertions(+), 45 deletions(-) diff --git a/docs/root/start/_include/envoy-demo.yaml b/docs/root/start/_include/envoy-demo.yaml index 8b0897837634..3edad8681fa0 100644 --- a/docs/root/start/_include/envoy-demo.yaml +++ b/docs/root/start/_include/envoy-demo.yaml @@ -1,53 +1,51 @@ static_resources: listeners: - - name: listener_0 - address: - socket_address: - address: 0.0.0.0 - port_value: 10000 - filter_chains: - - filters: - - name: envoy.filters.network.http_connection_manager - typed_config: - "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager - stat_prefix: ingress_http - codec_type: AUTO - route_config: - name: local_route - virtual_hosts: - - name: local_service - domains: ["*"] - routes: - - match: - prefix: "/" - route: - host_rewrite_literal: www.envoyproxy.io - cluster: service_envoyproxy_io - http_filters: - - name: envoy.filters.http.router + - name: listener_0 + address: + socket_address: + address: 0.0.0.0 + port_value: 10000 + filter_chains: + - filters: + - name: envoy.filters.network.http_connection_manager + typed_config: + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager + stat_prefix: ingress_http + codec_type: AUTO + http_filters: + - name: envoy.filters.http.router + route_config: + name: local_route + virtual_hosts: + - name: local_service + domains: ["*"] + routes: + - match: + prefix: "/" + route: + host_rewrite_literal: www.envoyproxy.io + cluster: service_envoyproxy_io clusters: - - name: service_envoyproxy_io - connect_timeout: 0.25s - type: LOGICAL_DNS - # Comment out the following line to test on v6 networks - dns_lookup_family: V4_ONLY - lb_policy: ROUND_ROBIN - load_assignment: - cluster_name: service_envoyproxy_io - endpoints: - - lb_endpoints: - - endpoint: - address: - socket_address: - address: service_envoyproxy_io - port_value: 443 - transport_socket: - name: envoy.transport_sockets.tls - typed_config: - "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext - sni: www.envoyproxy.io + - name: service_envoyproxy_io + connect_timeout: 30s + type: LOGICAL_DNS + lb_policy: ROUND_ROBIN + load_assignment: + cluster_name: service_envoyproxy_io + endpoints: + - lb_endpoints: + - endpoint: + address: + socket_address: + address: service_envoyproxy_io + port_value: 443 + transport_socket: + name: envoy.transport_sockets.tls + typed_config: + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext + sni: www.envoyproxy.io admin: access_log_path: /tmp/admin_access.log From 4db708907c0a9e0d821a34d4d9eaaa7ceda7a73f Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 16:59:16 +0000 Subject: [PATCH 13/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/_include/envoy-demo.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/root/start/_include/envoy-demo.yaml b/docs/root/start/_include/envoy-demo.yaml index 3edad8681fa0..b3697360e120 100644 --- a/docs/root/start/_include/envoy-demo.yaml +++ b/docs/root/start/_include/envoy-demo.yaml @@ -12,7 +12,6 @@ static_resources: typed_config: "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http - codec_type: AUTO http_filters: - name: envoy.filters.http.router route_config: @@ -31,7 +30,8 @@ static_resources: - name: service_envoyproxy_io connect_timeout: 30s type: LOGICAL_DNS - lb_policy: ROUND_ROBIN + # Comment out the following line to test on v6 networks + dns_lookup_family: V4_ONLY load_assignment: cluster_name: service_envoyproxy_io endpoints: @@ -39,7 +39,7 @@ static_resources: - endpoint: address: socket_address: - address: service_envoyproxy_io + address: www.envoyproxy.io port_value: 443 transport_socket: name: envoy.transport_sockets.tls @@ -48,7 +48,7 @@ static_resources: sni: www.envoyproxy.io admin: - access_log_path: /tmp/admin_access.log + access_log_path: /dev/null address: socket_address: address: 0.0.0.0 From 40b8824a1dc8869a7f953380c3af6ee765f7f46e Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 17:12:22 +0000 Subject: [PATCH 14/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index e40c2105f24e..619c01b2026a 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -209,8 +209,8 @@ which in the demo configuration is ``0.0.0.0:9901``. .. literalinclude:: _include/envoy-demo.yaml :language: yaml - :lineno-start: 50 - :lines: 50-57 + :lineno-start: 48 + :lines: 48-55 :emphasize-lines: 3-8 .. warning:: From 0a76b87a2ffc0f8c7859b387f9fc26557a366377 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 17:33:26 +0000 Subject: [PATCH 15/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 619c01b2026a..2093db560012 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -180,8 +180,8 @@ The specification of the :ref:`listeners Date: Mon, 26 Oct 2020 17:35:37 +0000 Subject: [PATCH 16/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 2093db560012..00f09da5b181 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -268,9 +268,9 @@ The :ref:`dynamic_resources Date: Mon, 26 Oct 2020 18:02:37 +0000 Subject: [PATCH 17/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 00f09da5b181..669a03024c50 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -270,7 +270,7 @@ The :ref:`dynamic_resources Date: Mon, 26 Oct 2020 18:22:28 +0000 Subject: [PATCH 18/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 669a03024c50..c1f8b28d9bb8 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -154,7 +154,7 @@ You can also add an :ref:`admin ` section if you or retrieve stats. The following sections walk through the static configuration provided in the -:download:`demo configuration file <_include/envoy-demo.yaml>`. +:download:`demo configuration file <_include/envoy-demo.yaml>` used as the default in the Envoy Docker container. .. _start_quick_start_static_static_resources: @@ -175,7 +175,11 @@ everything that is configured statically when Envoy starts, as opposed to dynami Static configuration: ``listeners`` *********************************** -The specification of the :ref:`listeners `. +The example configures a :ref:`listener ` +on port ``10000``. + +All paths are matched and routed to the ``service_envoyproxy_io`` +:ref:`cluster `. .. literalinclude:: _include/envoy-demo.yaml :language: yaml @@ -188,20 +192,21 @@ The specification of the :ref:`listeners `. +The ``service_envoyproxy_io`` :ref:`cluster ` +proxies over ``TLS`` to https://www.envoyproxy.io. .. literalinclude:: _include/envoy-demo.yaml :language: yaml :lineno-start: 27 - :lines: 27-49 - :emphasize-lines: 3-19 + :lines: 27-50 + :emphasize-lines: 3-21 .. _start_quick_start_static_admin: Static configuration: ``admin`` ******************************* -The :ref:`admin message ` is required to configure +The :ref:`admin message ` is required to enable and configure the administration server. The ``address`` key specifies the listening :ref:`address ` From 16c37b89b05d472f9906716ec374f85a8c8b5f7a Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 18:53:47 +0000 Subject: [PATCH 19/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index c1f8b28d9bb8..8b324039fea7 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -199,7 +199,7 @@ proxies over ``TLS`` to https://www.envoyproxy.io. :language: yaml :lineno-start: 27 :lines: 27-50 - :emphasize-lines: 3-21 + :emphasize-lines: 3-22 .. _start_quick_start_static_admin: @@ -255,7 +255,7 @@ The following sections walk through the dynamic configuration provided in the Dynamic configuration: ``node`` ******************************* -The :ref:`node ` should specify... +The :ref:`node ` should specify ``cluster`` and ``id``. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml @@ -268,21 +268,28 @@ The :ref:`node ` should s Dynamic configuration: ``dynamic_resources`` ******************************************** -The :ref:`dynamic_resources ` should specify... +The :ref:`dynamic_resources ` specifies +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-demo.yaml :language: yaml :linenos: :lines: 3-19 :lineno-start: 3 - :emphasize-lines: 3-14 + :emphasize-lines: 3-15 .. _start_quick_start_dynamic_static_resources: Dynamic configuration: ``static_resources`` ******************************************* -The :ref:`static_resources ` should specify... +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-demo.yaml :language: yaml @@ -296,7 +303,9 @@ The :ref:`static_resources ` should specify... +A :ref:`layered_runtime ` is +required with a :ref:`rtds_layer ` +is required to persist configuration provided by the control plane. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml From b03f5a107440f03409d3c1b404e2c5446e52329a Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Mon, 26 Oct 2020 19:28:01 +0000 Subject: [PATCH 20/25] final copy fixes Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 8b324039fea7..e874239757fe 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -161,7 +161,7 @@ The following sections walk through the static configuration provided in the Static configuration: ``static_resources`` ****************************************** -The :ref:`static_resources ` contains +The :ref:`static_resources ` contain everything that is configured statically when Envoy starts, as opposed to dynamically at runtime. .. literalinclude:: _include/envoy-demo.yaml @@ -268,7 +268,7 @@ The :ref:`node ` should s Dynamic configuration: ``dynamic_resources`` ******************************************** -The :ref:`dynamic_resources ` specifies +The :ref:`dynamic_resources ` specify the configuration to load dynamically, and the :ref:`cluster ` to connect to for dynamic configuration updates. @@ -304,8 +304,8 @@ Dynamic configuration: ``layered_runtime`` ****************************************** A :ref:`layered_runtime ` is -required with a :ref:`rtds_layer ` -is required to persist configuration provided by the control plane. +required with an :ref:`rtds_layer ` +to persist configuration provided by the control plane. .. literalinclude:: _include/envoy-dynamic-demo.yaml :language: yaml @@ -323,7 +323,7 @@ Configuring the :ref:`admin `. Enabling the :ref:`admin ` interface with -dynamic configuration, allows you to see use the :ref:`config_dump ` +dynamic configuration, allows you to use the :ref:`config_dump ` endpoint to see how Envoy is currently configured. .. literalinclude:: _include/envoy-dynamic-demo.yaml From dd29faaf6a44c2efafbcd8ca31493866dbc5eec7 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Tue, 27 Oct 2020 16:10:35 +0000 Subject: [PATCH 21/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index e874239757fe..d6e19e67860a 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -239,7 +239,7 @@ that is a good place to start. At a minimum, you will need to start Envoy configured with the following sections: -- :ref:`node ` information, to uniquely identify the proxy node. +- :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. - :ref:`layered_runtime ` to persist dynamically-provided configurations. From 0f229940dacb6a2f134a4e5f0b4e6c3baff65ee2 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Tue, 27 Oct 2020 16:32:09 +0000 Subject: [PATCH 22/25] remove dynamic info for now Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 110 +------------------------------- 1 file changed, 1 insertion(+), 109 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index d6e19e67860a..73ad33a89ec4 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -227,115 +227,7 @@ which in the demo configuration is ``0.0.0.0:9901``. Dynamic configuration --------------------- -Setting up Envoy with dynamic configuration is 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 `Istiod `_. - -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. -- :ref:`layered_runtime ` to persist dynamically-provided configurations. - -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 configuration file <_include/envoy-dynamic-demo.yaml>`. - -.. _start_quick_start_dynamic_node: - -Dynamic configuration: ``node`` -******************************* - -The :ref:`node ` should specify ``cluster`` and ``id``. - -.. literalinclude:: _include/envoy-dynamic-demo.yaml - :language: yaml - :linenos: - :lines: 1-5 - :emphasize-lines: 1-3 - -.. _start_quick_start_dynamic_dynamic_resources: - -Dynamic configuration: ``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-demo.yaml - :language: yaml - :linenos: - :lines: 3-19 - :lineno-start: 3 - :emphasize-lines: 3-15 - -.. _start_quick_start_dynamic_static_resources: - -Dynamic configuration: ``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-demo.yaml - :language: yaml - :linenos: - :lines: 17-35 - :lineno-start: 17 - :emphasize-lines: 3-17 - -.. _start_quick_start_dynamic_layered_runtime: - -Dynamic configuration: ``layered_runtime`` -****************************************** - -A :ref:`layered_runtime ` is -required with an :ref:`rtds_layer ` -to persist configuration provided by the control plane. - -.. literalinclude:: _include/envoy-dynamic-demo.yaml - :language: yaml - :linenos: - :lines: 33-44 - :lineno-start: 33 - :emphasize-lines: 3-10 - -.. _start_quick_start_dynamic_admin: - -Dynamic configuration: ``admin`` -******************************** - -Configuring the :ref:`admin ` section is -the same as for :ref:`static configuration `. - -Enabling the :ref:`admin ` interface with -dynamic configuration, allows you to use the :ref:`config_dump ` -endpoint to see how Envoy is currently configured. - -.. literalinclude:: _include/envoy-dynamic-demo.yaml - :language: yaml - :linenos: - :lines: 42-49 - :lineno-start: 42 - :emphasize-lines: 3-8 - -.. warning:: - - You may wish to restrict the network address the admin server listens to in your own deployment. +See the :ref:`configuration overview ` for further information on configuring Envoy with static and dynamic configuration. Next steps ---------- From 9b3adaec9a1697bd16e89d47ddd0a5946af328c9 Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Tue, 27 Oct 2020 16:32:37 +0000 Subject: [PATCH 23/25] remove Signed-off-by: Ryan Northey --- .../start/_include/envoy-dynamic-demo.yaml | 49 ------------------- 1 file changed, 49 deletions(-) delete mode 100644 docs/root/start/_include/envoy-dynamic-demo.yaml diff --git a/docs/root/start/_include/envoy-dynamic-demo.yaml b/docs/root/start/_include/envoy-dynamic-demo.yaml deleted file mode 100644 index 2b0c443e6a11..000000000000 --- a/docs/root/start/_include/envoy-dynamic-demo.yaml +++ /dev/null @@ -1,49 +0,0 @@ -node: - cluster: test-cluster - id: test-id - -dynamic_resources: - ads_config: - api_type: GRPC - transport_api_version: V3 - grpc_services: - - envoy_grpc: - cluster_name: xds_cluster - cds_config: - resource_api_version: V3 - ads: {} - lds_config: - resource_api_version: V3 - ads: {} - -static_resources: - clusters: - - connect_timeout: 1s - type: strict_dns - http2_protocol_options: {} - name: xds_cluster - load_assignment: - cluster_name: xds_cluster - endpoints: - - lb_endpoints: - - endpoint: - address: - socket_address: - address: my-control-plane - port_value: 18000 - -layered_runtime: - layers: - - name: runtime-0 - rtds_layer: - name: runtime-0 - rtds_config: - resource_api_version: V3 - ads: {} - -admin: - access_log_path: /dev/null - address: - socket_address: - address: 0.0.0.0 - port_value: 19000 From 8f5534e379eacd0564310e388fbd28f2108b2a2e Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Tue, 27 Oct 2020 16:52:32 +0000 Subject: [PATCH 24/25] cleanups Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 73ad33a89ec4..298496a5f360 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -81,7 +81,7 @@ The ``-c`` or ``--config-path`` flag tells Envoy the path to its initial configu .. substitution-code-block:: console - $ docker run --rm -d -v envoy-custom.yaml:/envoy-custom.yaml -p 9901:9901 -p 10000:10000 envoyproxy/|envoy_docker_image| -c /envoy-custom.yaml + $ docker run --rm -d -v $(pwd)/envoy-custom.yaml:/envoy-custom.yaml -p 9901:9901 -p 10000:10000 envoyproxy/|envoy_docker_image| -c /envoy-custom.yaml Check Envoy is proxying on http://localhost:10000 @@ -127,7 +127,7 @@ Next, start the Envoy server using the override configuration. .. substitution-code-block:: console - $ docker run --rm -d -v envoy-override.yaml:/envoy-override.yaml -p 20000:20000 envoyproxy/|envoy_docker_image| --config-yaml /envoy-override.yaml + $ docker run --rm -d -v $(pwd)/envoy-override.yaml:/envoy-override.yaml -p 20000:20000 envoyproxy/|envoy_docker_image| --config-yaml /envoy-override.yaml Envoy should now be proxying on http://localhost:20000 From 23d9d3385b426e573e7d77b0464bf2d5290a5c2c Mon Sep 17 00:00:00 2001 From: Ryan Northey Date: Tue, 27 Oct 2020 17:03:04 +0000 Subject: [PATCH 25/25] docs/ Signed-off-by: Ryan Northey --- docs/root/start/quick-start.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/root/start/quick-start.rst b/docs/root/start/quick-start.rst index 298496a5f360..319832c71e91 100644 --- a/docs/root/start/quick-start.rst +++ b/docs/root/start/quick-start.rst @@ -79,6 +79,8 @@ The ``-c`` or ``--config-path`` flag tells Envoy the path to its initial configu To specify a custom configuration you can mount the config into the container, and specify the path with ``-c``. + Assuming you have a custom configuration in the current directory named ``envoy-custom.yaml``: + .. substitution-code-block:: console $ docker run --rm -d -v $(pwd)/envoy-custom.yaml:/envoy-custom.yaml -p 9901:9901 -p 10000:10000 envoyproxy/|envoy_docker_image| -c /envoy-custom.yaml