Envoy: Reload configuration without quit process

Created on 22 Mar 2019  路  8Comments  路  Source: envoyproxy/envoy

Title: Reloading configuration without quit envoy process

Description:

I try to replace nginx with envoy as front proxy. How can I reload configuration without fully restarting envoy process? I read some documentations about hot restart, which seems like working to fork a new process and replace old process with new one. I cannot find a way to reload configuration like nginx -s reload in below links.
Is there a way to reload configuration like nginx without extra starter?

Relevant Links

http://nginx.org/en/docs/beginners_guide.html#control
http://nginx.org/en/docs/control.html

question stale

Most helpful comment

@dio It's actually not enough.
I want to have dynamic clusters, i.e. add services dynamically each with their own cluster.
The docs say that the cluster proto is for one upstream cluster, this means I need to generate dynamic list for the cluster resources. So either I'm missing something or it's not possible.

EDIT:
I read there is CDS - It sounds good, can it be configured with files like EDS? I didn't find the reference

All 8 comments

Envoy does not work in quite the same way. It uses a dynamic configuration system called xDS. One of the xDS options is to watch configuration files on disk and reload them.

See https://www.envoyproxy.io/docs/envoy/latest/configuration/overview/v2_overview and https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/core/config_source.proto#core-configsource

@mattklein123 I already read the documentation you refered. As I undertand, I can reload(actually service discovery) ti configure target hosts as upstream not total configuration.
Please let me know something wrong I am saying

This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or other activity occurs. Thank you for your contributions.

This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted". Thank you for your contributions.

What would be the easiest way to reload configuration similar to what "nginx -s reload" does?
I read about hot restart but it didn't find any usage guide..

@aclowkey do you think file based xDS config will help? e.g. https://medium.com/grensesnittet/file-based-dynamic-configuration-of-routes-in-envoy-proxy-6234dae968d2

Or you want to reload the bootstrap config as well?

I need to reload the clusters and route_config parts.
Looks like both can be configured as dynamic resources.
Thank you @dio

@dio It's actually not enough.
I want to have dynamic clusters, i.e. add services dynamically each with their own cluster.
The docs say that the cluster proto is for one upstream cluster, this means I need to generate dynamic list for the cluster resources. So either I'm missing something or it's not possible.

EDIT:
I read there is CDS - It sounds good, can it be configured with files like EDS? I didn't find the reference

Was this page helpful?
0 / 5 - 0 ratings