From a995505976057b952fdbcf2f9aaccc4d2e3614e2 Mon Sep 17 00:00:00 2001 From: John Murret Date: Thu, 14 Dec 2023 13:08:53 -0700 Subject: [PATCH] NET-6317 - update usage of deprecated fields: http2_protocol_options and access_log_path (#19940) * updating usage of http2_protocol_options and access_log_path * add changelog * update template for AdminAccessLogConfig * remove mucking with AdminAccessLogConfig --- .changelog/19940.txt | 3 ++ command/connect/envoy/bootstrap_config.go | 9 ++++- .../connect/envoy/bootstrap_config_test.go | 9 ++++- command/connect/envoy/bootstrap_tpl.go | 19 ++++++++- command/connect/envoy/envoy_test.go | 10 ++++- ..._ADDR-with-https-scheme-enables-tls.golden | 19 ++++++++- ...tps-scheme-does-not-affect-grpc-tls.golden | 19 ++++++++- .../envoy/testdata/access-log-path.golden | 19 ++++++++- .../access-logs-enabled-custom.golden | 9 ++++- .../envoy/testdata/access-logs-enabled.golden | 9 ++++- .../testdata/acl-enabled-and-token.golden | 19 ++++++++- .../testdata/acl-enabled-but-no-token.golden | 19 ++++++++- ...AIN-and-CONSUL_GRPC_ADDR-TLS-is-tls.golden | 19 ++++++++- ...and-CONSUL_GRPC_ADDR-PLAIN-is-plain.golden | 19 ++++++++- .../envoy/testdata/custom-bootstrap.golden | 10 ++++- .../envoy/testdata/defaults-nodemeta.golden | 19 ++++++++- .../connect/envoy/testdata/defaults.golden | 19 ++++++++- .../deprecated-grpc-addr-config.golden | 19 ++++++++- .../testdata/envoy-readiness-probe.golden | 19 ++++++++- .../envoy/testdata/existing-ca-file.golden | 19 ++++++++- .../envoy/testdata/existing-ca-path.golden | 19 ++++++++- .../envoy/testdata/extra_-multiple.golden | 19 ++++++++- .../envoy/testdata/extra_-single.golden | 19 ++++++++- .../envoy/testdata/grpc-addr-env.golden | 19 ++++++++- .../envoy/testdata/grpc-addr-flag.golden | 19 ++++++++- .../testdata/grpc-addr-unix-with-tls.golden | 19 ++++++++- .../envoy/testdata/grpc-addr-unix.golden | 19 ++++++++- .../testdata/grpc-tls-addr-config.golden | 19 ++++++++- .../ingress-gateway-address-specified.golden | 19 ++++++++- .../ingress-gateway-no-auto-register.golden | 19 ++++++++- .../testdata/ingress-gateway-nodemeta.golden | 19 ++++++++- ...-register-with-service-and-proxy-id.golden | 19 ++++++++- ...ister-with-service-without-proxy-id.golden | 19 ++++++++- .../envoy/testdata/ingress-gateway.golden | 19 ++++++++- .../prometheus-metrics-tls-ca-file.golden | 19 ++++++++- .../prometheus-metrics-tls-ca-path.golden | 19 ++++++++- .../envoy/testdata/prometheus-metrics.golden | 19 ++++++++- .../testdata/stats-config-override.golden | 19 ++++++++- .../envoy/testdata/telemetry-collector.golden | 28 +++++++++++-- .../connect/envoy/testdata/token-arg.golden | 19 ++++++++- .../connect/envoy/testdata/token-env.golden | 19 ++++++++- .../envoy/testdata/token-file-arg.golden | 19 ++++++++- .../envoy/testdata/token-file-env.golden | 19 ++++++++- .../envoy/testdata/xds-addr-config.golden | 19 ++++++++- .../testdata/zipkin-tracing-config.golden | 19 ++++++++- .../service_gateway.hcl | 20 ++++------ .../test/upgrade/ingress_gateway_sds_test.go | 9 ++++- troubleshoot/proxy/testdata/config.json | 28 +++++++++++-- .../ingress-gateway/tls-external-service.mdx | 39 +++++++++++-------- .../content/docs/connect/proxies/envoy.mdx | 10 ++++- 50 files changed, 780 insertions(+), 116 deletions(-) create mode 100644 .changelog/19940.txt diff --git a/.changelog/19940.txt b/.changelog/19940.txt new file mode 100644 index 0000000000..2b314e9391 --- /dev/null +++ b/.changelog/19940.txt @@ -0,0 +1,3 @@ +```release-note:improvement +xds: remove usages of deprecated Envoy fields: `envoy.config.cluster.v3.Cluster.http2_protocol_options`, `envoy.config.bootstrap.v3.Admin.access_log_path` +``` \ No newline at end of file diff --git a/command/connect/envoy/bootstrap_config.go b/command/connect/envoy/bootstrap_config.go index fa3b317255..f07c6817be 100644 --- a/command/connect/envoy/bootstrap_config.go +++ b/command/connect/envoy/bootstrap_config.go @@ -863,7 +863,14 @@ func appendTelemetryCollectorConfig(args *BootstrapTplArgs, telemetryCollectorBi args.StaticClustersJSON += fmt.Sprintf(`{ "name": "consul_telemetry_collector_loopback", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "consul_telemetry_collector_loopback", "endpoints": [ diff --git a/command/connect/envoy/bootstrap_config_test.go b/command/connect/envoy/bootstrap_config_test.go index c3bc04c201..445ae01fdc 100644 --- a/command/connect/envoy/bootstrap_config_test.go +++ b/command/connect/envoy/bootstrap_config_test.go @@ -548,7 +548,14 @@ const ( expectedTelemetryCollectorCluster = `{ "name": "consul_telemetry_collector_loopback", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "consul_telemetry_collector_loopback", "endpoints": [ diff --git a/command/connect/envoy/bootstrap_tpl.go b/command/connect/envoy/bootstrap_tpl.go index 4b4bbc8db7..21634f73ec 100644 --- a/command/connect/envoy/bootstrap_tpl.go +++ b/command/connect/envoy/bootstrap_tpl.go @@ -161,7 +161,15 @@ type GRPC struct { const bootstrapTemplate = `{ "admin": { {{- if (not .AdminAccessLogConfig) }} - "access_log_path": "{{ .AdminAccessLogPath }}", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "{{ .AdminAccessLogPath }}" + } + } + ], {{- end}} {{- if .AdminAccessLogConfig }} "access_log": [ @@ -220,7 +228,14 @@ const bootstrapTemplate = `{ } }, {{- end }} - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "{{ .LocalAgentClusterName }}", "endpoints": [ diff --git a/command/connect/envoy/envoy_test.go b/command/connect/envoy/envoy_test.go index 71c75a8f8b..6f4237af52 100644 --- a/command/connect/envoy/envoy_test.go +++ b/command/connect/envoy/envoy_test.go @@ -693,7 +693,15 @@ func TestGenerateConfig(t *testing.T) { "envoy_bootstrap_json_tpl": ` { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "{{ .AdminBindAddress }}", diff --git a/command/connect/envoy/testdata/CONSUL_GRPC_ADDR-with-https-scheme-enables-tls.golden b/command/connect/envoy/testdata/CONSUL_GRPC_ADDR-with-https-scheme-enables-tls.golden index d9fd8081c6..0c831cbb37 100644 --- a/command/connect/envoy/testdata/CONSUL_GRPC_ADDR-with-https-scheme-enables-tls.golden +++ b/command/connect/envoy/testdata/CONSUL_GRPC_ADDR-with-https-scheme-enables-tls.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/CONSUL_HTTP_ADDR-with-https-scheme-does-not-affect-grpc-tls.golden b/command/connect/envoy/testdata/CONSUL_HTTP_ADDR-with-https-scheme-does-not-affect-grpc-tls.golden index a89575d2c1..4b2b178861 100644 --- a/command/connect/envoy/testdata/CONSUL_HTTP_ADDR-with-https-scheme-does-not-affect-grpc-tls.golden +++ b/command/connect/envoy/testdata/CONSUL_HTTP_ADDR-with-https-scheme-does-not-affect-grpc-tls.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/access-log-path.golden b/command/connect/envoy/testdata/access-log-path.golden index 184a290b24..4192419aec 100644 --- a/command/connect/envoy/testdata/access-log-path.golden +++ b/command/connect/envoy/testdata/access-log-path.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/some/path/access.log", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/some/path/access.log" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/access-logs-enabled-custom.golden b/command/connect/envoy/testdata/access-logs-enabled-custom.golden index 50531f89c2..30b2fd78cd 100644 --- a/command/connect/envoy/testdata/access-logs-enabled-custom.golden +++ b/command/connect/envoy/testdata/access-logs-enabled-custom.golden @@ -46,7 +46,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/access-logs-enabled.golden b/command/connect/envoy/testdata/access-logs-enabled.golden index ea2e150607..191a20a9c4 100644 --- a/command/connect/envoy/testdata/access-logs-enabled.golden +++ b/command/connect/envoy/testdata/access-logs-enabled.golden @@ -68,7 +68,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/acl-enabled-and-token.golden b/command/connect/envoy/testdata/acl-enabled-and-token.golden index a5427c7f24..2181b174f8 100644 --- a/command/connect/envoy/testdata/acl-enabled-and-token.golden +++ b/command/connect/envoy/testdata/acl-enabled-and-token.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/acl-enabled-but-no-token.golden b/command/connect/envoy/testdata/acl-enabled-but-no-token.golden index a89575d2c1..4b2b178861 100644 --- a/command/connect/envoy/testdata/acl-enabled-but-no-token.golden +++ b/command/connect/envoy/testdata/acl-enabled-but-no-token.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-PLAIN-and-CONSUL_GRPC_ADDR-TLS-is-tls.golden b/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-PLAIN-and-CONSUL_GRPC_ADDR-TLS-is-tls.golden index d9fd8081c6..0c831cbb37 100644 --- a/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-PLAIN-and-CONSUL_GRPC_ADDR-TLS-is-tls.golden +++ b/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-PLAIN-and-CONSUL_GRPC_ADDR-TLS-is-tls.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-TLS-and-CONSUL_GRPC_ADDR-PLAIN-is-plain.golden b/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-TLS-and-CONSUL_GRPC_ADDR-PLAIN-is-plain.golden index a89575d2c1..4b2b178861 100644 --- a/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-TLS-and-CONSUL_GRPC_ADDR-PLAIN-is-plain.golden +++ b/command/connect/envoy/testdata/both-CONSUL_HTTP_ADDR-TLS-and-CONSUL_GRPC_ADDR-PLAIN-is-plain.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/custom-bootstrap.golden b/command/connect/envoy/testdata/custom-bootstrap.golden index 59bc467f6b..ff4eb1d780 100644 --- a/command/connect/envoy/testdata/custom-bootstrap.golden +++ b/command/connect/envoy/testdata/custom-bootstrap.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", diff --git a/command/connect/envoy/testdata/defaults-nodemeta.golden b/command/connect/envoy/testdata/defaults-nodemeta.golden index ea65421109..2b1cd345f9 100644 --- a/command/connect/envoy/testdata/defaults-nodemeta.golden +++ b/command/connect/envoy/testdata/defaults-nodemeta.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -34,7 +42,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/defaults.golden b/command/connect/envoy/testdata/defaults.golden index a89575d2c1..4b2b178861 100644 --- a/command/connect/envoy/testdata/defaults.golden +++ b/command/connect/envoy/testdata/defaults.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/deprecated-grpc-addr-config.golden b/command/connect/envoy/testdata/deprecated-grpc-addr-config.golden index e604c61d50..dce3671a2f 100644 --- a/command/connect/envoy/testdata/deprecated-grpc-addr-config.golden +++ b/command/connect/envoy/testdata/deprecated-grpc-addr-config.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/envoy-readiness-probe.golden b/command/connect/envoy/testdata/envoy-readiness-probe.golden index 18680a3206..faa5e958f5 100644 --- a/command/connect/envoy/testdata/envoy-readiness-probe.golden +++ b/command/connect/envoy/testdata/envoy-readiness-probe.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/existing-ca-file.golden b/command/connect/envoy/testdata/existing-ca-file.golden index d9fd8081c6..0c831cbb37 100644 --- a/command/connect/envoy/testdata/existing-ca-file.golden +++ b/command/connect/envoy/testdata/existing-ca-file.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/existing-ca-path.golden b/command/connect/envoy/testdata/existing-ca-path.golden index 16f233e1b8..a5386e180d 100644 --- a/command/connect/envoy/testdata/existing-ca-path.golden +++ b/command/connect/envoy/testdata/existing-ca-path.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/extra_-multiple.golden b/command/connect/envoy/testdata/extra_-multiple.golden index 819994f0c0..974027b21d 100644 --- a/command/connect/envoy/testdata/extra_-multiple.golden +++ b/command/connect/envoy/testdata/extra_-multiple.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/extra_-single.golden b/command/connect/envoy/testdata/extra_-single.golden index b1fb71997b..83b07ef5ca 100644 --- a/command/connect/envoy/testdata/extra_-single.golden +++ b/command/connect/envoy/testdata/extra_-single.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/grpc-addr-env.golden b/command/connect/envoy/testdata/grpc-addr-env.golden index e604c61d50..dce3671a2f 100644 --- a/command/connect/envoy/testdata/grpc-addr-env.golden +++ b/command/connect/envoy/testdata/grpc-addr-env.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/grpc-addr-flag.golden b/command/connect/envoy/testdata/grpc-addr-flag.golden index e604c61d50..dce3671a2f 100644 --- a/command/connect/envoy/testdata/grpc-addr-flag.golden +++ b/command/connect/envoy/testdata/grpc-addr-flag.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/grpc-addr-unix-with-tls.golden b/command/connect/envoy/testdata/grpc-addr-unix-with-tls.golden index d05a466699..c41c67ab7d 100644 --- a/command/connect/envoy/testdata/grpc-addr-unix-with-tls.golden +++ b/command/connect/envoy/testdata/grpc-addr-unix-with-tls.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/grpc-addr-unix.golden b/command/connect/envoy/testdata/grpc-addr-unix.golden index 88e6e46bfb..415321891a 100644 --- a/command/connect/envoy/testdata/grpc-addr-unix.golden +++ b/command/connect/envoy/testdata/grpc-addr-unix.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/grpc-tls-addr-config.golden b/command/connect/envoy/testdata/grpc-tls-addr-config.golden index e65fc5f09c..8ef32de0f7 100644 --- a/command/connect/envoy/testdata/grpc-tls-addr-config.golden +++ b/command/connect/envoy/testdata/grpc-tls-addr-config.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -46,7 +54,14 @@ } } }, - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway-address-specified.golden b/command/connect/envoy/testdata/ingress-gateway-address-specified.golden index 038c8fcc5d..ba4a341f9d 100644 --- a/command/connect/envoy/testdata/ingress-gateway-address-specified.golden +++ b/command/connect/envoy/testdata/ingress-gateway-address-specified.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway-no-auto-register.golden b/command/connect/envoy/testdata/ingress-gateway-no-auto-register.golden index 80f1f9a8b7..f81ac13cdf 100644 --- a/command/connect/envoy/testdata/ingress-gateway-no-auto-register.golden +++ b/command/connect/envoy/testdata/ingress-gateway-no-auto-register.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway-nodemeta.golden b/command/connect/envoy/testdata/ingress-gateway-nodemeta.golden index 8a2d5f6276..7983a070ec 100644 --- a/command/connect/envoy/testdata/ingress-gateway-nodemeta.golden +++ b/command/connect/envoy/testdata/ingress-gateway-nodemeta.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -34,7 +42,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway-register-with-service-and-proxy-id.golden b/command/connect/envoy/testdata/ingress-gateway-register-with-service-and-proxy-id.golden index 6192f674ac..75b8b345ce 100644 --- a/command/connect/envoy/testdata/ingress-gateway-register-with-service-and-proxy-id.golden +++ b/command/connect/envoy/testdata/ingress-gateway-register-with-service-and-proxy-id.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway-register-with-service-without-proxy-id.golden b/command/connect/envoy/testdata/ingress-gateway-register-with-service-without-proxy-id.golden index 92d80e033e..bf106f3426 100644 --- a/command/connect/envoy/testdata/ingress-gateway-register-with-service-without-proxy-id.golden +++ b/command/connect/envoy/testdata/ingress-gateway-register-with-service-without-proxy-id.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/ingress-gateway.golden b/command/connect/envoy/testdata/ingress-gateway.golden index 40a5c74d1b..e270bec33f 100644 --- a/command/connect/envoy/testdata/ingress-gateway.golden +++ b/command/connect/envoy/testdata/ingress-gateway.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/prometheus-metrics-tls-ca-file.golden b/command/connect/envoy/testdata/prometheus-metrics-tls-ca-file.golden index c93286e64e..3f8fc4ce95 100644 --- a/command/connect/envoy/testdata/prometheus-metrics-tls-ca-file.golden +++ b/command/connect/envoy/testdata/prometheus-metrics-tls-ca-file.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/prometheus-metrics-tls-ca-path.golden b/command/connect/envoy/testdata/prometheus-metrics-tls-ca-path.golden index 272175f707..6ea679d723 100644 --- a/command/connect/envoy/testdata/prometheus-metrics-tls-ca-path.golden +++ b/command/connect/envoy/testdata/prometheus-metrics-tls-ca-path.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/prometheus-metrics.golden b/command/connect/envoy/testdata/prometheus-metrics.golden index 5806dd671f..e582cd16d7 100644 --- a/command/connect/envoy/testdata/prometheus-metrics.golden +++ b/command/connect/envoy/testdata/prometheus-metrics.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/stats-config-override.golden b/command/connect/envoy/testdata/stats-config-override.golden index dd4ff53dd1..d045920bda 100644 --- a/command/connect/envoy/testdata/stats-config-override.golden +++ b/command/connect/envoy/testdata/stats-config-override.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/telemetry-collector.golden b/command/connect/envoy/testdata/telemetry-collector.golden index 5992029c2b..a320b8ef50 100644 --- a/command/connect/envoy/testdata/telemetry-collector.golden +++ b/command/connect/envoy/testdata/telemetry-collector.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ @@ -57,7 +72,14 @@ { "name": "consul_telemetry_collector_loopback", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "consul_telemetry_collector_loopback", "endpoints": [ diff --git a/command/connect/envoy/testdata/token-arg.golden b/command/connect/envoy/testdata/token-arg.golden index 816bf74875..2f0a0ef8ed 100644 --- a/command/connect/envoy/testdata/token-arg.golden +++ b/command/connect/envoy/testdata/token-arg.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/token-env.golden b/command/connect/envoy/testdata/token-env.golden index 816bf74875..2f0a0ef8ed 100644 --- a/command/connect/envoy/testdata/token-env.golden +++ b/command/connect/envoy/testdata/token-env.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/token-file-arg.golden b/command/connect/envoy/testdata/token-file-arg.golden index 816bf74875..2f0a0ef8ed 100644 --- a/command/connect/envoy/testdata/token-file-arg.golden +++ b/command/connect/envoy/testdata/token-file-arg.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/token-file-env.golden b/command/connect/envoy/testdata/token-file-env.golden index 816bf74875..2f0a0ef8ed 100644 --- a/command/connect/envoy/testdata/token-file-env.golden +++ b/command/connect/envoy/testdata/token-file-env.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/xds-addr-config.golden b/command/connect/envoy/testdata/xds-addr-config.golden index e604c61d50..dce3671a2f 100644 --- a/command/connect/envoy/testdata/xds-addr-config.golden +++ b/command/connect/envoy/testdata/xds-addr-config.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/command/connect/envoy/testdata/zipkin-tracing-config.golden b/command/connect/envoy/testdata/zipkin-tracing-config.golden index dc4779a775..acddc470ab 100644 --- a/command/connect/envoy/testdata/zipkin-tracing-config.golden +++ b/command/connect/envoy/testdata/zipkin-tracing-config.golden @@ -1,6 +1,14 @@ { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1", @@ -33,7 +41,14 @@ "ignore_health_on_host_removal": false, "connect_timeout": "1s", "type": "STATIC", - "http2_protocol_options": {}, + "typed_extension_protocol_options": { + "envoy.extensions.upstreams.http.v3.HttpProtocolOptions": { + "@type": "type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions", + "explicit_http_config": { + "http2_protocol_options": {} + } + } + }, "loadAssignment": { "clusterName": "local_agent", "endpoints": [ diff --git a/test/integration/connect/envoy/case-ingress-gateway-sds/service_gateway.hcl b/test/integration/connect/envoy/case-ingress-gateway-sds/service_gateway.hcl index 1ffa476e6f..0448749cc8 100644 --- a/test/integration/connect/envoy/case-ingress-gateway-sds/service_gateway.hcl +++ b/test/integration/connect/envoy/case-ingress-gateway-sds/service_gateway.hcl @@ -7,22 +7,18 @@ services { proxy { config { - # Note that http2_protocol_options is a deprecated field and Envoy 1.17 - # and up would prefer: - # typed_extension_protocol_options: - # envoy.extensions.upstreams.http.v3.HttpProtocolOptions: - # "@type": type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions - # explicit_http_config: - # http2_protocol_options: - # - # But that breaks 1.15 and 1.16. For now use this which is supported by - # all our supported versions to avoid needing to setup different - # bootstrap based on the envoy version. envoy_extra_static_clusters_json = < -Refer to the [Envoy documentation](https://www.envoyproxy.io/docs/envoy/v1.17.2/api-v3/config/bootstrap/v3/bootstrap.proto#envoy-v3-api-field-config-bootstrap-v3-bootstrap-staticresources-clusters) for details about configuration parameters for SDS clusters. +Refer to the [Envoy documentation](https://www.envoyproxy.io/docs/envoy/v1.17.2/api-v3/config/bootstrap/v3/bootstrap.proto#envoy-v3-api-field-config-bootstrap-v3-bootstrap-staticresources-clusters) for details about configuration parameters for SDS clusters. -## Register the ingress gateway service definition +## Register the ingress gateway service definition Issue the `consul services register` command on the Consul agent on the Envoy proxy's node to register the service. The following example command registers an ingress gateway proxy from a `public-ingress.hcl` file: @@ -193,19 +200,19 @@ Refer to [Consul Connect Envoy](/consul/commands/connect/envoy) for additional i Create an ingress gateway configuration entry that enables the gateway to use certificates from SDS. The configuration entry also maps downstream ingress listeners to upstream services. Configure the following fields: - [`Kind`](/consul/docs/connect/config-entries/ingress-gateway#kind): Set the value to `ingress-gateway`. -- [`Name`](/consul/docs/connect/config-entries/ingress-gateway#name): Consul applies the configuration entry settings to ingress gateway proxies with names that match the `Name` field. -- [`TLS`](/consul/docs/connect/config-entries/ingress-gateway#tls): The main `TLS` parameter for the configuration entry holds the SDS configuration. You can also specify TLS configurations per listener and per service. +- [`Name`](/consul/docs/connect/config-entries/ingress-gateway#name): Consul applies the configuration entry settings to ingress gateway proxies with names that match the `Name` field. +- [`TLS`](/consul/docs/connect/config-entries/ingress-gateway#tls): The main `TLS` parameter for the configuration entry holds the SDS configuration. You can also specify TLS configurations per listener and per service. - [`TLS.SDS`](/consul/docs/connect/config-entries/ingress-gateway#tls-sds): The `SDS` map includes the following configuration settings: - - [`ClusterName`](/consul/docs/connect/config-entries/ingress-gateway#tls-sds-clustername): Specifies the name of the cluster you specified when [configuring the SDS cluster](#configure-static-SDS-clusters). - - [`CertResource`](/consul/docs/connect/config-entries/ingress-gateway#tls-sds-certresource): Specifies the name of the certificate resource to load. + - [`ClusterName`](/consul/docs/connect/config-entries/ingress-gateway#tls-sds-clustername): Specifies the name of the cluster you specified when [configuring the SDS cluster](#configure-static-SDS-clusters). + - [`CertResource`](/consul/docs/connect/config-entries/ingress-gateway#tls-sds-certresource): Specifies the name of the certificate resource to load. - [`Listeners`](/consul/docs/connect/config-entries/ingress-gateway#listeners): Specify one or more listeners. - [`Listeners.Port`](/consul/docs/connect/config-entries/ingress-gateway#listeners-port): Specify a port for the listener. Each listener is uniquely identified by its port number. - [`Listeners.Protocol`](/consul/docs/connect/config-entries/ingress-gateway#listeners-protocol): The default protocol is `tcp`, but you must specify the protocol used by the services you want to allow traffic from. - - [`Listeners.Services`](/consul/docs/connect/config-entries/ingress-gateway#listeners-services): The `Services` field contains the services that you want to expose to upstream services. The field contains several options and sub-configurations that enable granular control over ingress traffic, such as health check and TLS configurations. + - [`Listeners.Services`](/consul/docs/connect/config-entries/ingress-gateway#listeners-services): The `Services` field contains the services that you want to expose to upstream services. The field contains several options and sub-configurations that enable granular control over ingress traffic, such as health check and TLS configurations. -For Consul Enterprise service meshes, you may also need to configure the [`Partition`](/consul/docs/connect/config-entries/ingress-gateway#partition) and [`Namespace`](/consul/docs/connect/config-entries/ingress-gateway#namespace) fields for the gateway and for each exposed service. +For Consul Enterprise service meshes, you may also need to configure the [`Partition`](/consul/docs/connect/config-entries/ingress-gateway#partition) and [`Namespace`](/consul/docs/connect/config-entries/ingress-gateway#namespace) fields for the gateway and for each exposed service. -Refer to [Ingress gateway configuration entry reference](/consul/docs/connect/config-entries/ingress-gateway) for details about the supported parameters. +Refer to [Ingress gateway configuration entry reference](/consul/docs/connect/config-entries/ingress-gateway) for details about the supported parameters. The following example directs Consul to retrieve `example.com-public-cert` certificates from an SDS cluster named `sds-cluster` and serve them to all listeners: @@ -243,4 +250,4 @@ The following example registers an ingress gateway configuration entry named `pu $ consul config write public-ingress-cfg.hcl ``` -The Envoy instance starts a listener on the port specified in the configuration entry and fetches the TLS certificate named from the SDS server. \ No newline at end of file +The Envoy instance starts a listener on the port specified in the configuration entry and fetches the TLS certificate named from the SDS server. diff --git a/website/content/docs/connect/proxies/envoy.mdx b/website/content/docs/connect/proxies/envoy.mdx index ca059a628b..a3190f7157 100644 --- a/website/content/docs/connect/proxies/envoy.mdx +++ b/website/content/docs/connect/proxies/envoy.mdx @@ -224,7 +224,15 @@ Then, open `bootstrap.json` and update the following sections with your ACL toke ```json { "admin": { - "access_log_path": "/dev/null", + "access_log": [ + { + "name": "envoy.access_loggers.file", + "typed_config": { + "@type": "type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog", + "path": "/dev/null" + } + } + ], "address": { "socket_address": { "address": "127.0.0.1",