Closed nulltrope closed 3 years ago
It is a design, not a bug. Envoy will verify the existence of the clusters in the static route table. If really necessary, you can submit a feature request to let envoy provide an option to turn off this verification.
In addition, there is a possible solution, of course I haven't tried it.
That is to replace your static route table in HCM with rds based on local files. You only need to split your configuration file into two: one is the main configuration file and the other is an rds file.
This is by design. For static routes with CDS, see the validate_clusters field on the RouteConfiguration.
Thanks @zuercher! That option is exactly what I was looking for.
Title: Envoy fails to start when Route references non-existent Cluster
Description:
Envoy fails to initialize when attempting to start with a Route which references a non-existent Cluster. This came as a surprise to me, since http filters such as the
http.ext_authz
can reference a non-existent Cluster without issue.I found a config option config.route.v3.RouteAction.ClusterNotFoundResponseCode in the docs, however this seems to only apply when using
cluster_header
to route and notcluster
explicitly.In environments using CDS for Cluster discovery but still statically defining routes, I can see value in being able to start Envoy with a cluster which does not yet exist, but will soon be added dynamically.
Repro steps:
Run Envoy with the configuration below, it will fail to start.
Admin and Stats Output:
N/A, Envoy failing to start
Config:
Logs:
Call Stack:
N/A