apiVersion: v1
kind: ConfigMap
metadata:
  name: envoy-conf
data:
  envoy.yaml: |
    admin:
      access_log_path: "/dev/null"
      address:
        socket_address:
          address: 0.0.0.0
          protocol: TCP
          port_value: 9901
    static_resources:
      listeners:
      - name: listener_0
        address:
          socket_address:
            address: 0.0.0.0
            protocol: TCP
            port_value: 10000
        filter_chains:
        - filters:
          - name: envoy.filters.network.http_connection_manager
            typed_config:
              '@type': type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
              stat_prefix: ingress_http
              access_log:
              - name: envoy.file_access_log
                typed_config:
                  "@type": type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
                  path: "/dev/stdout"
              route_config:
                name: local_route
                virtual_hosts:
                - name: http
                  domains:
                  - '*'
                  routes:
                  - match:
                      prefix: /
                    route:
                      cluster: dynamic_forward_proxy_cluster
                    typed_per_filter_config:
                      envoy.filters.http.dynamic_forward_proxy:
                        '@type': type.googleapis.com/envoy.extensions.filters.http.dynamic_forward_proxy.v3.PerRouteConfig
                        host_rewrite_header: X-Host-Port
              http_filters:
              - name: envoy.filters.http.dynamic_forward_proxy
                typed_config:
                  '@type': type.googleapis.com/envoy.extensions.filters.http.dynamic_forward_proxy.v3.FilterConfig
                  dns_cache_config:
                    name: dynamic_forward_proxy_cache_config
                    dns_lookup_family: V4_ONLY
              - name: envoy.filters.http.router
      clusters:
      - name: dynamic_forward_proxy_cluster
        connect_timeout: 1s
        lb_policy: CLUSTER_PROVIDED
        ignore_health_on_host_removal: true
        http2_protocol_options: {}
        cluster_type:
          name: envoy.clusters.dynamic_forward_proxy
          typed_config:
            '@type': type.googleapis.com/envoy.extensions.clusters.dynamic_forward_proxy.v3.ClusterConfig
            dns_cache_config:
              name: dynamic_forward_proxy_cache_config
              dns_lookup_family: V4_ONLY
