1

guys! i want to distribute flow in egress by using hcm, such as

www.xxx.com:8000(sidecar) -> clusterA(egress)

www.yyy.com:8000(sidecar) -> clusterB(egress)

rest request (sidecar) -> original process(egress)

the match request can be routed correctly,but how about the unmatched request?

the unmatched request get 404 response now.

i want to unmatched request to be processed in the original path.

so how can i modify yaml configure to achieve this goal ??does there have best practice?

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: test
  namespace: istio-system
spec:
  workloadSelector:
    labels:
      istio: egressgateway
  configPatches:
    - applyTo: NETWORK_FILTER
      match:
        context: GATEWAY
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.http_connection_manager"
      patch:
        operation: REPLACE
        value:
          name: envoy.filters.network.http_connection_manager
          typed_config:
            "@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager"
            codec_type: AUTO
            stat_prefix: ingress_http
            route_config:
              name: local_route
              virtual_hosts:
              - name: local_service1
                domains: ["www.xxx.com:8000"]
                routes:
                - match:
                    prefix: "/"
                  route:
                    host_rewrite_literal: www.xxx.com:80
                    prefix_rewrite: "/"
                    cluster: "clusterA"
              - name: local_service2
                domains: ["www.yyy.com:8000"]
                routes:
                - match:
                    prefix: "/"
                  route:
                    host_rewrite_literal: www.yyy.com:80
                    prefix_rewrite: "/"
                    cluster: "clusterB"

            http_filters:
              - name: envoy.filters.http.router
                typed_config:
                  "@type": "type.googleapis.com/envoy.extensions.filters.http.router.v3.Router"
    
    #... other configure here.
    # cluster configure

0 Answers0