<p>I was following along with the <a href="http://kubernetes.io/docs/hellonode/#create-your-cluster" rel="noreferrer">Hello, World example</a> in Kubernetes getting started guide.</p>

<p>In that example, a cluster with 3 nodes/instances is created on Google Container Engine.</p>

<p>The <code>container</code> to be deployed is a basic nodejs http server, which listens on port 8080.</p>

<p>Now when I run <br>
<code>kubectl run hello-node --image &lt;image-name&gt; --port 8080</code> <br> 
it creates a <code>pod</code> and a <code>deployment</code>, deploying the <code>pod</code> on one of nodes.</p>

<p>Running the <br>
<code>kubectl scale deployment hello-node --replicas=4</code> <br>
command increases the number of pods to 4.</p>

<p><em>But since each pod exposes the 8080 port, will it not create a port conflict on the pod where two nodes are deployed?
I can see 4 pods when I do <code>kubernetes get pods</code>, however what the behaviour will be in this case?</em></p>

<p>Got some help in <code>#kubernetes-users</code> <a href="http://slack.k8s.io" rel="noreferrer">channel</a> on slack :</p>

<ol>
<li>The port specified in <code>kubectl run ...</code> is that of a <code>pod</code>. And each pod has its unique IP address. So, there are no port conflicts.</li>
<li>The pods won’t serve traffic until and unless you expose them as a <code>service</code>.</li>
<li>Exposing a <code>service</code> by running <code>kubectl expose ...</code> assigns a <code>NodePort</code> (which is in range 30000-32000) on <em>every</em> <code>node</code>. This port must be unique for every service.</li>
<li>If a node has multiple pods <code>kube-proxy</code> balances the traffic between those pods. </li>
</ol>

<p>Also, when I accessed my service from the browser, I was able to see logs in all the 4 pods, so the traffic was served from all the 4 pods.</p>
