$ kubectl apply -f manifest.yaml && kubectl -n istio-vt-t81 wait --for=condition=available deploy/snat-echo --timeout=60s pod/client configured deployment.apps/snat-echo unchanged service/snat-echo unchanged deployment.apps/snat-echo condition met $ TARGET_NODE_IP=$(kubectl get nodes -o jsonpath='{.items[?(@.metadata.name!="'$(kubectl -n istio-vt-t81 get pod -l app=snat-echo -o jsonpath="{.items[0].spec.nodeName}")'")].status.addresses[?(@.type=="InternalIP")].address}' | awk '{print $1}'); export TARGET_NODE_IP; echo "TARGET_NODE_IP=$TARGET_NODE_IP" TARGET_NODE_IP=192.168.0.212 $ echo target_node_without_endpoint=$TARGET_NODE_IP target_node_without_endpoint=192.168.0.212 $ curl -s -o /dev/null -w 'cluster_policy_cross_node=%{http_code} ' --max-time 4 http://$TARGET_NODE_IP:30880/ cluster_policy_cross_node=200 $ kubectl -n istio-vt-t81 patch svc snat-echo -p '{"spec":{"externalTrafficPolicy":"Local"}}' service/snat-echo patched $ sleep 3 $ curl -s -o /dev/null -w 'local_policy_cross_node=%{http_code} ' --max-time 4 http://$TARGET_NODE_IP:30880/ ; echo exit=$? local_policy_cross_node=000 exit=28