<p>I cannot reach the following Kubernetes service when <code>externalTrafficPolicy: Local</code> is set. I access it directly through the NodePort but always get a timeout.</p>

<pre><code>{
  "kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "echo",
    "namespace": "default",
    "selfLink": "/api/v1/namespaces/default/services/echo",
    "uid": "c1b66aca-cc53-11e8-9062-d43d7ee2fdff",
    "resourceVersion": "5190074",
    "creationTimestamp": "2018-10-10T06:14:33Z",
    "labels": {
      "k8s-app": "echo"
    }
  },
  "spec": {
    "ports": [
      {
        "name": "tcp-8080-8080-74xhz",
        "protocol": "TCP",
        "port": 8080,
        "targetPort": 3333,
        "nodePort": 30275
      }
    ],
    "selector": {
      "k8s-app": "echo"
    },
    "clusterIP": "10.101.223.0",
    "type": "NodePort",
    "sessionAffinity": "None",
    "externalTrafficPolicy": "Local"
  },
  "status": {
    "loadBalancer": {}
  }
}
</code></pre>

<p>I know that for this pods of the service need to be available on a node because traffic is not routed to other nodes. I checked this.</p>

Johannes Mittendorfer
<p>Not sure where you are connecting from and what command you are typing to test connectivity or what's your environment like.  But this is most likely due to <a href="https://kubernetes.io/docs/setup/independent/troubleshooting-kubeadm/#services-with-externaltrafficpolicy-local-are-not-reachable" rel="nofollow noreferrer">this known issue</a> where the node ports are not reachable with <code>externalTrafficPolicy</code> set to <code>Local</code> if the <code>kube-proxy</code> cannot find the IP address for the node where it's running on.</p>

<p>This <a href="https://github.com/kubernetes/kubeadm/issues/857" rel="nofollow noreferrer">link</a> sheds more light into the problem. Apparently <code>--hostname-override</code> on the kube-proxy is not working as of K8s 1.10. You have to specify the <code>HostnameOverride</code> option in the kube-proxy ConfigMap.  There's also a fix described <a href="https://github.com/kubernetes/kubernetes/pull/69340" rel="nofollow noreferrer">here</a> that will make it upstream at some point in the future from this writing.</p>
