Kubernetes – exposing port outside cluster

So there is a ton of documentation out there on Kubernetes and how to expose ports outside the cluster. Perhaps I was having an issues interpreting the docs but I struggled for a long time with this. No matter what I did I found that I could get to the pod as long as I was inside the cluster (vagrant ssh minion-1) but could not get it from my browser.

After a lot of spinning I finally got this figured out and figured I’d post it in case it helps anyone else. The key was using nodePort value in the configuration, along with the nodeĀ IP address, to reach into the pod from outside the cluster. This means setting ‘type: NodePort’ in your configuration then using the nodePort assigned with the IP address of the node to access: ‘http://10.245.1.3:30892/’.

Image to help clarify:

 

Screen Shot 2015-08-27 at 7.53.44 PM kube-nodeport