<p>I started a cluster in aws following the guides and then went about following the guestbook.  The problem I have is accessing it externally.  I set the PublicIP to the ec2 publicIP and then use the ip to access it in the browser with port 8000 as specified in the guide.  </p>

<p>Nothing showed.  To make sure it was actually the service that wasn't showing anything I then removed the service and set a host port to be 8000.  When I went to the ec2 instance IP I could access it correctly.  So it seems there is a problem with my setup or something.  The one thing I can think of is, I am inside a VPC with an internet gateway.  I didn't add any of my json files I used, because they are almost exactly the same as the <a href="https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/guestbook" rel="nofollow">guestbook example</a> with a few changes to allow my ec2 PublicIP, and a few changes for the VPC.  </p>

<p>On AWS you have to use your PRIVATE ip address with Kubernetes' services, since your instance is not aware of its public ip. The NAT-ing on amazon's side is done in such a way that your service will be accessible using this configuration. </p>

<p><strong>Update:</strong> please note that the possibility to set the public IP of a service explicitly was removed in the v1 API, so this issue is not relevant anymore.</p>

<p>Please check the following documentation page for workarounds: <a href="https://kubernetes.io/docs/user-guide/services/" rel="nofollow noreferrer">https://kubernetes.io/docs/user-guide/services/</a></p>
