<p><strong>What I Have:</strong> A Kubernetes Cluster on GCE with three Nodes. Lets suppose the master has the IP <code>&lt;MasterIP&gt;</code>. Additionally I have a Service within the cluster of Type NodePort which listens to the port <code>&lt;PORT&gt;</code>. I can access the service using <code>&lt;NodeIP&gt;:&lt;PORT&gt;</code></p>

<p><strong>What I would like to do:</strong> Access the service with <code>&lt;MasterIP&gt;:&lt;PORT&gt;</code> How can I forward the port from <code>&lt;MasterIP&gt;</code> to within the cluster? in other words: <code>&lt;MasterIP&gt;:&lt;PORT&gt; --&gt; &lt;NodeIP&gt;:&lt;PORT&gt;</code></p>

<p>The reason why I would like to do this is simply I don't want to rely on a specific <code>NodeIP</code> since the Pod can be rescheduled to another Node.</p>

<p>Thank you</p>

<p>A Kubernetes <code>Service</code> with <code>type: NodePort</code> opens the same port on every Node and sends the traffic to wherever the pod is currently scheduled using internal IP routing. You should be able to access the service at <code>&lt;AnyNodeIP&gt;:&lt;PORT&gt;</code>.</p>

<p>In Google's Kubernetes cluster, the master machines are not available for routing traffic. The way to reliably expose your services is to use a <code>Service</code> with <code>type: LoadBalancer</code> which will provide a single IP that resolves to your service regardless of which Nodes are up or what their IPs are.</p>
