diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1bef2955c288..bafe92bb2d8a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -69,7 +69,7 @@ versioning guidelines: cause a configuration load failure, unless the feature in question is explicitly overridden in [runtime](https://www.envoyproxy.io/docs/envoy/latest/configuration/operations/runtime#using-runtime-overrides-for-deprecated-features) - config ([example](configs/using_deprecated_config.v2.yaml)). Finally, following the deprecation + config ([example](configs/using_deprecated_config.yaml)). Finally, following the deprecation of the API major version where the field was first marked deprecated, the entire implementation code will be removed from the Envoy implementation. * This policy means that organizations deploying master should have some time to get ready for diff --git a/ci/Dockerfile-envoy b/ci/Dockerfile-envoy index eecb68be7d17..435250d08185 100644 --- a/ci/Dockerfile-envoy +++ b/ci/Dockerfile-envoy @@ -28,7 +28,7 @@ RUN mkdir -p /etc/envoy ARG ENVOY_BINARY_SUFFIX=_stripped ADD ${TARGETPLATFORM}/build_release${ENVOY_BINARY_SUFFIX}/* /usr/local/bin/ -ADD configs/google_com_proxy.v2.yaml /etc/envoy/envoy.yaml +ADD configs/google_com_proxy.yaml /etc/envoy/envoy.yaml EXPOSE 10000 diff --git a/ci/Dockerfile-envoy-alpine b/ci/Dockerfile-envoy-alpine index de13be43162d..b7bfba617f80 100644 --- a/ci/Dockerfile-envoy-alpine +++ b/ci/Dockerfile-envoy-alpine @@ -1,7 +1,7 @@ FROM frolvlad/alpine-glibc:alpine-3.12_glibc-2.31 RUN mkdir -p /etc/envoy -ADD configs/google_com_proxy.v2.yaml /etc/envoy/envoy.yaml +ADD configs/google_com_proxy.yaml /etc/envoy/envoy.yaml RUN apk add --no-cache shadow su-exec \ && addgroup -S envoy && adduser --no-create-home -S envoy -G envoy diff --git a/ci/Dockerfile-envoy-windows b/ci/Dockerfile-envoy-windows index b8f8f3c958d9..4b0db0161531 100644 --- a/ci/Dockerfile-envoy-windows +++ b/ci/Dockerfile-envoy-windows @@ -8,7 +8,7 @@ RUN setx path "%path%;c:\Program Files\envoy" ADD ["windows/amd64/envoy.exe", "C:/Program Files/envoy/"] RUN mkdir "C:\\ProgramData\\envoy" -ADD ["configs/google_com_proxy.v2.yaml", "C:/ProgramData/envoy/envoy.yaml"] +ADD ["configs/google_com_proxy.yaml", "C:/ProgramData/envoy/envoy.yaml"] # Replace temp path with Windows temp path RUN powershell -Command "(cat C:\ProgramData\envoy\envoy.yaml -raw) -replace '/tmp/','C:\Windows\Temp\' | Set-Content -Encoding Ascii C:\ProgramData\envoy\envoy.yaml" diff --git a/configs/Dockerfile b/configs/Dockerfile index 2d7b7a6a5e3b..ac1bc7aeece8 100644 --- a/configs/Dockerfile +++ b/configs/Dockerfile @@ -3,5 +3,5 @@ FROM envoyproxy/envoy-dev:latest RUN apt-get update -COPY google_com_proxy.v2.yaml /etc/envoy.yaml +COPY google_com_proxy.yaml /etc/envoy.yaml CMD /usr/local/bin/envoy -c /etc/envoy.yaml diff --git a/configs/access_log_format_helper.template.yaml b/configs/access_log_format_helper.template.yaml new file mode 100644 index 000000000000..9861a51e9bfb --- /dev/null +++ b/configs/access_log_format_helper.template.yaml @@ -0,0 +1,15 @@ +{% macro ingress_sampled_log() -%} + log_format: {text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\"\n"} +{% endmacro %} + +{% macro ingress_full() -%} + log_format: {text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\"\n"} +{% endmacro %} + +{% macro egress_error_log() -%} + log_format: {text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n"} +{% endmacro %} + +{% macro egress_error_amazon_service() -%} + log_format: {text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\" \"%RESP(X-AMZN-RequestId)%\"\n"} +{% endmacro %} diff --git a/configs/access_log_format_helper_v2.template.yaml b/configs/access_log_format_helper_v2.template.yaml deleted file mode 100644 index 7a5d711c088b..000000000000 --- a/configs/access_log_format_helper_v2.template.yaml +++ /dev/null @@ -1,15 +0,0 @@ -{% macro ingress_sampled_log() -%} - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\"\n" -{% endmacro %} - -{% macro ingress_full() -%} - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\"\n" -{% endmacro %} - -{% macro egress_error_log() -%} - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n" -{% endmacro %} - -{% macro egress_error_amazon_service() -%} - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH):256% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\" \"%RESP(X-AMZN-RequestId)%\"\n" -{% endmacro %} diff --git a/configs/configgen.py b/configs/configgen.py index d5409c481a91..8f5e20cd562d 100755 --- a/configs/configgen.py +++ b/configs/configgen.py @@ -111,16 +111,16 @@ def generate_config(template_path, template, output_file, **context): # Generate a demo config for the main front proxy. This sets up both HTTP and HTTPS listeners, # as well as a listener for the double proxy to connect to via SSL client authentication. generate_config(SCRIPT_DIR, - 'envoy_front_proxy_v2.template.yaml', - '{}/envoy_front_proxy.v2.yaml'.format(OUT_DIR), + 'envoy_front_proxy.template.yaml', + '{}/envoy_front_proxy.yaml'.format(OUT_DIR), clusters=front_envoy_clusters, tracing=tracing_enabled) # Generate a demo config for the double proxy. This sets up both an HTTP and HTTPS listeners, # and backhauls the traffic to the main front proxy. generate_config(SCRIPT_DIR, - 'envoy_double_proxy_v2.template.yaml', - '{}/envoy_double_proxy.v2.yaml'.format(OUT_DIR), + 'envoy_double_proxy.template.yaml', + '{}/envoy_double_proxy.yaml'.format(OUT_DIR), tracing=tracing_enabled) # Generate a demo config for the service to service (local) proxy. This sets up several different @@ -132,14 +132,12 @@ def generate_config(template_path, template, output_file, **context): # that Envoy proxies to listens on its own port. # optional mongo ports: built from mongos_servers above. generate_config(SCRIPT_DIR, - 'envoy_service_to_service_v2.template.yaml', + 'envoy_service_to_service.template.yaml', '{}/envoy_service_to_service.yaml'.format(OUT_DIR), internal_virtual_hosts=service_to_service_envoy_clusters, external_virtual_hosts=external_virtual_hosts, mongos_servers=mongos_servers) -for google_ext in ['v2.yaml']: - shutil.copy(os.path.join(SCRIPT_DIR, 'google_com_proxy.%s' % google_ext), OUT_DIR) - -shutil.copy(os.path.join(SCRIPT_DIR, 'encapsulate_in_connect.v3.yaml'), OUT_DIR) -shutil.copy(os.path.join(SCRIPT_DIR, 'terminate_connect.v3.yaml'), OUT_DIR) +shutil.copy(os.path.join(SCRIPT_DIR, 'google_com_proxy.yaml'), OUT_DIR) +shutil.copy(os.path.join(SCRIPT_DIR, 'encapsulate_in_connect.yaml'), OUT_DIR) +shutil.copy(os.path.join(SCRIPT_DIR, 'terminate_connect.yaml'), OUT_DIR) diff --git a/configs/encapsulate_in_connect.v3.yaml b/configs/encapsulate_in_connect.yaml similarity index 100% rename from configs/encapsulate_in_connect.v3.yaml rename to configs/encapsulate_in_connect.yaml diff --git a/configs/envoy_double_proxy_v2.template.yaml b/configs/envoy_double_proxy.template.yaml similarity index 82% rename from configs/envoy_double_proxy_v2.template.yaml rename to configs/envoy_double_proxy.template.yaml index feb9f3e1f95f..aea9127c74f6 100644 --- a/configs/envoy_double_proxy_v2.template.yaml +++ b/configs/envoy_double_proxy.template.yaml @@ -11,7 +11,7 @@ transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.DownstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext common_tls_context: tls_certificates: - certificate_chain: @@ -29,7 +29,7 @@ filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO stat_prefix: router route_config: @@ -47,24 +47,23 @@ http_filters: - name: envoy.filters.http.health_check typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.health_check.v2.HealthCheck + "@type": type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck pass_through_mode: false headers: - exact_match: /healthcheck name: :path - name: envoy.filters.http.buffer typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.buffer.v2.Buffer + "@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.Buffer max_request_bytes: 5242880 - name: envoy.filters.http.router typed_config: {} {% if tracing %} tracing: - operation_name: INGRESS provider: name: envoy.tracers.lightstep typed_config: - "@type": type.googleapis.com/envoy.config.trace.v2.LightstepConfig + "@type": type.googleapis.com/envoy.config.trace.v3.LightstepConfig access_token_file: "/etc/envoy/lightstep_access_token" collector_cluster: lightstep_saas {% endif %} @@ -89,9 +88,10 @@ runtime_key: access_log.access_error.duration - traceable_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: /var/log/envoy/access_error.log - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%REQ(X-LYFT-USER-ID)%\" \"%RESP(GRPC-STATUS)%\"\n" + log_format: + text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%REQ(X-LYFT-USER-ID)%\" \"%RESP(GRPC-STATUS)%\"\n" {% if proxy_proto %} use_remote_address: true {%endif -%} @@ -141,7 +141,7 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext common_tls_context: tls_certificates: - certificate_chain: @@ -151,7 +151,7 @@ static_resources: validation_context: trusted_ca: filename: certs/cacert.pem - match_subject_alt_names: + match_subject_alt_names: exact: "front-proxy.yourcompany.net" http2_protocol_options: {} - name: lightstep_saas @@ -172,18 +172,18 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext common_tls_context: validation_context: trusted_ca: filename: certs/cacert.pem - match_subject_alt_names: + match_subject_alt_names: exact: "collector-grpc.lightstep.com" flags_path: "/etc/envoy/flags" stats_sinks: - name: envoy.stat_sinks.statsd typed_config: - "@type": type.googleapis.com/envoy.config.metrics.v2.StatsdSink + "@type": type.googleapis.com/envoy.config.metrics.v3.StatsdSink tcp_cluster_name: statsd layered_runtime: layers: diff --git a/configs/envoy_front_proxy_v2.template.yaml b/configs/envoy_front_proxy.template.yaml similarity index 83% rename from configs/envoy_front_proxy_v2.template.yaml rename to configs/envoy_front_proxy.template.yaml index a9b9bc97f859..1dcb1e6f919f 100644 --- a/configs/envoy_front_proxy_v2.template.yaml +++ b/configs/envoy_front_proxy.template.yaml @@ -1,4 +1,4 @@ -{% import 'routing_helper_v2.template.yaml' as helper -%} +{% import 'routing_helper.template.yaml' as helper -%} {% macro router_file_content() -%}{% include kwargs['router_file'] -%}{% endmacro -%} {% macro listener(protocol, address, port_value, proxy_proto, tls, tracing) -%} name: not_required_for_static_listeners @@ -12,7 +12,7 @@ - transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.DownstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.DownstreamTlsContext common_tls_context: alpn_protocols: h2,http/1.1 tls_certificates: @@ -35,7 +35,7 @@ filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO stat_prefix: router {% if proxy_proto -%} @@ -43,18 +43,18 @@ {%endif-%} stat_prefix: ingress_http route_config: - {{ router_file_content(router_file='envoy_router_v2.template.yaml')|indent(10) }} + {{ router_file_content(router_file='envoy_router.template.yaml')|indent(10) }} http_filters: - name: envoy.filters.http.health_check typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.health_check.v2.HealthCheck + "@type": type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck pass_through_mode: false headers: - name: ":path" exact_match: "/healthcheck" - name: envoy.filters.http.buffer typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.buffer.v2.Buffer + "@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.Buffer max_request_bytes: 5242880 - name: envoy.filters.http.ratelimit typed_config: @@ -70,11 +70,10 @@ add_user_agent: true {% if tracing %} tracing: - operation_name: INGRESS provider: name: envoy.tracers.lightstep typed_config: - "@type": type.googleapis.com/envoy.config.trace.v2.LightstepConfig + "@type": type.googleapis.com/envoy.config.trace.v3.LightstepConfig collector_cluster: lightstep_saas access_token_file: "/etc/envoy/lightstep_access_token" {% endif %} @@ -99,9 +98,10 @@ runtime_key: access_log.access_error.duration - traceable_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/access_error.log" - format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%REQ(X-LYFT-USER-ID)%\" \"%RESP(GRPC-STATUS)%\"\n" + log_format: + text_format: "[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%REQ(X-LYFT-USER-ID)%\" \"%RESP(GRPC-STATUS)%\"\n" {% endmacro -%} static_resources: listeners: diff --git a/configs/envoy_router_v2.template.yaml b/configs/envoy_router.template.yaml similarity index 93% rename from configs/envoy_router_v2.template.yaml rename to configs/envoy_router.template.yaml index 0d09269b6cab..338363af6c8c 100644 --- a/configs/envoy_router_v2.template.yaml +++ b/configs/envoy_router.template.yaml @@ -1,4 +1,4 @@ -{% import 'routing_helper_v2.template.yaml' as helper with context -%} +{% import 'routing_helper.template.yaml' as helper with context -%} name: local_route virtual_hosts: - name: www diff --git a/configs/envoy_service_to_service_v2.template.yaml b/configs/envoy_service_to_service.template.yaml similarity index 90% rename from configs/envoy_service_to_service_v2.template.yaml rename to configs/envoy_service_to_service.template.yaml index 4ef5ac9d1a05..9237d117f035 100644 --- a/configs/envoy_service_to_service_v2.template.yaml +++ b/configs/envoy_service_to_service.template.yaml @@ -1,5 +1,5 @@ -{% import 'routing_helper_v2.template.yaml' as helper -%} -{% import 'access_log_format_helper_v2.template.yaml' as access_log_helper -%} +{% import 'routing_helper.template.yaml' as helper -%} +{% import 'access_log_format_helper.template.yaml' as access_log_helper -%} {% macro ingress_listener(protocol, address, port_value) -%} - address: socket_address: @@ -11,7 +11,7 @@ - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO stat_prefix: ingress_http route_config: @@ -35,7 +35,7 @@ http_filters: - name: envoy.filters.http.health_check typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.health_check.v2.HealthCheck + "@type": type.googleapis.com/envoy.extensions.filters.http.health_check.v3.HealthCheck pass_through_mode: true headers: - name: ":path" @@ -43,7 +43,7 @@ cache_time: 2.5s - name: envoy.filters.http.buffer typed_config: - "@type": type.googleapis.com/envoy.config.filter.http.buffer.v2.Buffer + "@type": type.googleapis.com/envoy.extensions.filters.http.buffer.v3.Buffer max_request_bytes: 5242880 - name: envoy.filters.http.router typed_config: {} @@ -52,7 +52,7 @@ filter: not_health_check_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/ingress_http.log" {{ access_log_helper.ingress_full()|indent(10)}} - name: envoy.access_loggers.file @@ -81,7 +81,7 @@ runtime_key: access_log.access_error.duration - not_health_check_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/ingress_http_error.log" {{ access_log_helper.ingress_sampled_log()|indent(10)}} - name: envoy.access_loggers.file @@ -92,7 +92,7 @@ - runtime_filter: runtime_key: access_log.ingress_http typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/ingress_http_sampled.log" {{ access_log_helper.ingress_sampled_log()|indent(10)}} common_http_protocol_options: @@ -111,7 +111,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO stat_prefix: egress_http route_config: @@ -149,7 +149,7 @@ static_resources: runtime_key: access_log.access_error.duration - traceable_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/egress_http_error.log" {{ access_log_helper.egress_error_log()|indent(10) }} use_remote_address: true @@ -177,7 +177,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO stat_prefix: egress_http rds: @@ -210,7 +210,7 @@ static_resources: runtime_key: access_log.access_error.duration - traceable_filter: {} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/egress_http_error.log" {{ access_log_helper.egress_error_log()|indent(10) }} use_remote_address: true @@ -239,7 +239,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager codec_type: AUTO common_http_protocol_options: idle_timeout: 840s @@ -259,7 +259,7 @@ static_resources: retry_policy: retry_on: connect-failure {% if host.get('host_rewrite', False) %} - host_rewrite: "{{host['host_rewrite']}}" + host_rewrite_literal: "{{host['host_rewrite']}}" {% endif %} {% endfor %} http_filters: @@ -295,7 +295,7 @@ static_resources: runtime_key: access_log.access_error.duration {% endif %} typed_config: - "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog + "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog path: "/var/log/envoy/egress_{{ mapping['name'] }}_http_error.log" {% if mapping.get('is_amzn_service', False) -%} {{ access_log_helper.egress_error_amazon_service()|indent(10) }} @@ -315,12 +315,12 @@ static_resources: - filters: - name: envoy.filters.network.tcp_proxy typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.tcp_proxy.v2.TcpProxy + "@type": type.googleapis.com/envoy.extensions.filters.network.tcp_proxy.v3.TcpProxy stat_prefix: mongo_{{ key }} cluster: mongo_{{ key }} - name: envoy.filters.network.mongo_proxy typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.mongo_proxy.v2.MongoProxy + "@type": type.googleapis.com/envoy.extensions.filters.network.mongo_proxy.v3.MongoProxy stat_prefix: "{{ key }}" access_log: "/var/log/envoy/mongo_{{ key }}.log" {% if value.get('ratelimit', False) %} @@ -346,7 +346,7 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext common_tls_context: validation_context: trusted_ca: @@ -413,7 +413,7 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext sni: www.main_website.com - name: local_service connect_timeout: 0.25s @@ -505,7 +505,7 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext common_tls_context: validation_context: trusted_ca: @@ -552,7 +552,7 @@ flags_path: "/etc/envoy/flags" stats_sinks: - name: envoy.stat_sinks.statsd typed_config: - "@type": type.googleapis.com/envoy.config.metrics.v2.StatsdSink + "@type": type.googleapis.com/envoy.config.metrics.v3.StatsdSink tcp_cluster_name: statsd layered_runtime: layers: diff --git a/configs/freebind/freebind.yaml b/configs/freebind/freebind.yaml index 08214b8b044d..367e5ba3568a 100644 --- a/configs/freebind/freebind.yaml +++ b/configs/freebind/freebind.yaml @@ -17,7 +17,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http route_config: name: local_route diff --git a/configs/google_com_proxy.v2.yaml b/configs/google_com_proxy.yaml similarity index 83% rename from configs/google_com_proxy.v2.yaml rename to configs/google_com_proxy.yaml index 01d0869ea0b5..32e79bb306a9 100644 --- a/configs/google_com_proxy.v2.yaml +++ b/configs/google_com_proxy.yaml @@ -17,7 +17,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http route_config: name: local_route @@ -28,7 +28,7 @@ static_resources: - match: prefix: "/" route: - host_rewrite: www.google.com + host_rewrite_literal: www.google.com cluster: service_google http_filters: - name: envoy.filters.http.router @@ -51,5 +51,5 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext sni: www.google.com diff --git a/configs/original-dst-cluster/proxy_config.yaml b/configs/original-dst-cluster/proxy_config.yaml index 9797daf46b26..b2e925957cda 100644 --- a/configs/original-dst-cluster/proxy_config.yaml +++ b/configs/original-dst-cluster/proxy_config.yaml @@ -8,7 +8,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http route_config: name: local_service diff --git a/configs/routing_helper_v2.template.yaml b/configs/routing_helper.template.yaml similarity index 100% rename from configs/routing_helper_v2.template.yaml rename to configs/routing_helper.template.yaml diff --git a/configs/terminate_connect.v3.yaml b/configs/terminate_connect.yaml similarity index 100% rename from configs/terminate_connect.v3.yaml rename to configs/terminate_connect.yaml diff --git a/configs/using_deprecated_config.v2.yaml b/configs/using_deprecated_config.yaml similarity index 89% rename from configs/using_deprecated_config.v2.yaml rename to configs/using_deprecated_config.yaml index 55ca2797acb9..a98e64f365b9 100644 --- a/configs/using_deprecated_config.v2.yaml +++ b/configs/using_deprecated_config.yaml @@ -17,7 +17,7 @@ static_resources: - filters: - name: envoy.filters.network.http_connection_manager typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http route_config: name: local_route @@ -54,7 +54,7 @@ static_resources: transport_socket: name: envoy.transport_sockets.tls typed_config: - "@type": type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext + "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext sni: www.google.com tracing: http: diff --git a/docs/root/configuration/operations/runtime.rst b/docs/root/configuration/operations/runtime.rst index 2e72e52bb953..3ae9b3783f0e 100644 --- a/docs/root/configuration/operations/runtime.rst +++ b/docs/root/configuration/operations/runtime.rst @@ -248,7 +248,7 @@ envoy.deprecated_features:full_fieldname or envoy.deprecated_features:full_enum_ to true. For example, for a deprecated field ``Foo.Bar.Eep`` set ``envoy.deprecated_features:Foo.bar.Eep`` to ``true``. There is a production example using static runtime to allow both fail-by-default fields here: -:repo:`configs/using_deprecated_config.v2.yaml` +:repo:`configs/using_deprecated_config.yaml` Use of these override is **strongly discouraged** so please use with caution and switch to the new fields as soon as possible. Fatal-by-default configuration indicates that the removal of the old code paths is imminent. It is far better for both Envoy users and for Envoy contributors if any bugs or feature gaps diff --git a/docs/root/intro/arch_overview/http/upgrades.rst b/docs/root/intro/arch_overview/http/upgrades.rst index bcf9f0a21fd9..4f9b62f7ded5 100644 --- a/docs/root/intro/arch_overview/http/upgrades.rst +++ b/docs/root/intro/arch_overview/http/upgrades.rst @@ -97,8 +97,8 @@ An example set up proxying SMTP would look something like this [SMTP Upstream] --- raw SMTP --- [L2 Envoy] --- SMTP tunneled over HTTP/2 --- [L1 Envoy] --- raw SMTP --- [Client] Examples of such a set up can be found in the Envoy example config :repo:`directory ` -If you run `bazel-bin/source/exe/envoy-static --config-path configs/encapsulate_in_connect.v3.yaml --base-id 1` -and `bazel-bin/source/exe/envoy-static --config-path configs/terminate_connect.v3.yaml` +If you run `bazel-bin/source/exe/envoy-static --config-path configs/encapsulate_in_connect.yaml --base-id 1` +and `bazel-bin/source/exe/envoy-static --config-path configs/terminate_connect.yaml` you will be running two Envoys, the first listening for TCP traffic on port 10000 and encapsulating it in an HTTP/2 CONNECT request, and the second listening for HTTP/2 on 10001, stripping the CONNECT headers, and forwarding the original TCP upstream, in this case to google.com. diff --git a/docs/root/start/install/ref_configs.rst b/docs/root/start/install/ref_configs.rst index 7aebc814da96..b7bb405175b2 100644 --- a/docs/root/start/install/ref_configs.rst +++ b/docs/root/start/install/ref_configs.rst @@ -23,9 +23,9 @@ source distribution includes a version of the configuration generator that uses have also included three example configuration templates for each of the above three scenarios. * Generator script: :repo:`configs/configgen.py` -* Service to service template: :repo:`configs/envoy_service_to_service_v2.template.yaml` -* Front proxy template: :repo:`configs/envoy_front_proxy_v2.template.yaml` -* Double proxy template: :repo:`configs/envoy_double_proxy_v2.template.yaml` +* Service to service template: :repo:`configs/envoy_service_to_service.template.yaml` +* Front proxy template: :repo:`configs/envoy_front_proxy.template.yaml` +* Double proxy template: :repo:`configs/envoy_double_proxy.template.yaml` To generate the example configurations run the following from the root of the repo: diff --git a/docs/root/start/start.rst b/docs/root/start/start.rst index 4d4529e2f260..79ddfc5acd0c 100644 --- a/docs/root/start/start.rst +++ b/docs/root/start/start.rst @@ -32,7 +32,7 @@ more detailed explanation of the configuration file and execution steps for the same configuration. A very minimal Envoy configuration that can be used to validate basic plain HTTP -proxying is available in :repo:`configs/google_com_proxy.v2.yaml`. This is not +proxying is available in :repo:`configs/google_com_proxy.yaml`. This is not intended to represent a realistic Envoy deployment: .. substitution-code-block:: none diff --git a/test/config/integration/BUILD b/test/config/integration/BUILD index 3baa54708100..1fbb9f235da1 100644 --- a/test/config/integration/BUILD +++ b/test/config/integration/BUILD @@ -42,5 +42,5 @@ filegroup( filegroup( name = "google_com_proxy_port_0", - srcs = ["google_com_proxy_port_0.v2.yaml"], + srcs = ["google_com_proxy_port_0.yaml"], ) diff --git a/test/config/integration/google_com_proxy_port_0.v2.yaml b/test/config/integration/google_com_proxy_port_0.yaml similarity index 83% rename from test/config/integration/google_com_proxy_port_0.v2.yaml rename to test/config/integration/google_com_proxy_port_0.yaml index c67b6845960d..236942d3379d 100644 --- a/test/config/integration/google_com_proxy_port_0.v2.yaml +++ b/test/config/integration/google_com_proxy_port_0.yaml @@ -16,7 +16,7 @@ static_resources: - filters: - name: http typed_config: - "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager + "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager stat_prefix: ingress_http codec_type: AUTO route_config: @@ -26,7 +26,7 @@ static_resources: domains: ["*"] routes: - match: { prefix: "/" } - route: { host_rewrite: www.google.com, cluster: service_google } + route: { host_rewrite_literal: www.google.com, cluster: service_google } clusters: - name: service_google connect_timeout: 0.25s diff --git a/test/config_test/config_test.cc b/test/config_test/config_test.cc index 5d153d124ddc..162c09c2f0ac 100644 --- a/test/config_test/config_test.cc +++ b/test/config_test/config_test.cc @@ -160,7 +160,7 @@ void testMerge() { Api::ApiPtr api = Api::createApiForTest(); const std::string overlay = "static_resources: { clusters: [{name: 'foo'}]}"; - OptionsImpl options(Server::createTestOptionsImpl("google_com_proxy.v2.yaml", overlay, + OptionsImpl options(Server::createTestOptionsImpl("google_com_proxy.yaml", overlay, Network::Address::IpVersion::v6)); envoy::config::bootstrap::v3::Bootstrap bootstrap; Server::InstanceUtil::loadBootstrapConfig(bootstrap, options, diff --git a/test/exe/main_common_test.cc b/test/exe/main_common_test.cc index 000142b7ff2e..8428cf6b43fe 100644 --- a/test/exe/main_common_test.cc +++ b/test/exe/main_common_test.cc @@ -57,7 +57,7 @@ class MainCommonTest : public testing::TestWithParam tar -tvf ./envoy.tar -rw------- htuch/eng 0 2017-08-13 21:13 access_0.log