apiVersion: v1 kind: Pod metadata: name: client namespace: istio-vt-t65 labels: app: client annotations: sidecar.istio.io/inject: "true" spec: containers: - name: curl image: curlimages/curl:8.14.1 command: ["sleep", "infinity"] --- apiVersion: apps/v1 kind: Deployment metadata: name: chain-echo-v1 namespace: istio-vt-t65 labels: app: chain-echo version: v1 spec: replicas: 1 selector: matchLabels: app: chain-echo version: v1 template: metadata: labels: app: chain-echo version: v1 annotations: sidecar.istio.io/inject: "true" spec: containers: - name: echo image: hashicorp/http-echo:0.2.3 args: ["-text=v1-ok", "-listen=:5678"] ports: - containerPort: 5678 --- apiVersion: v1 kind: Service metadata: name: chain-echo namespace: istio-vt-t65 spec: selector: app: chain-echo ports: - name: http port: 80 targetPort: 5678 --- apiVersion: networking.istio.io/v1 kind: DestinationRule metadata: name: chain-echo-dr namespace: istio-vt-t65 spec: host: chain-echo.istio-vt-t65.svc.cluster.local subsets: - name: v1 labels: version: v1 - name: v3-mismatched-selector labels: version: v3-does-not-exist --- apiVersion: networking.istio.io/v1 kind: VirtualService metadata: name: chain-echo-vs-nc namespace: istio-vt-t65 spec: hosts: - chain-echo.istio-vt-t65.svc.homelab.local http: - match: - headers: x-target: exact: nc route: - destination: host: chain-echo.istio-vt-t65.svc.cluster.local subset: v2-undefined-in-dr - match: - headers: x-target: exact: uh route: - destination: host: chain-echo.istio-vt-t65.svc.cluster.local subset: v3-mismatched-selector - route: - destination: host: chain-echo.istio-vt-t65.svc.cluster.local subset: v1