<p>I have a multiplayer application consisting of many containers and at the top level i have a REST API. I managed to run this application and i can access the rest api using the public ip. 
I am using the google cloud kubernetes engine.
I would like to make many replicas of this multilayer application that each one should have a public ip so as to be able to communicate.
Is it possible to have many public ips (not loadbalancer) each one pointing to a replica?</p>

<p>You should use statefulsets. Then create as many load balancer services equal to your number of replicas. Use the custom labels that are added to the statefulset pods by default for  selecting one service for one pod (see <a href="https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-identity" rel="nofollow noreferrer">here</a>). This will serve your purpose. </p>

<p>Also you can use <code>external-dns.alpha.kubernetes.io/hostname</code> in the <code>annotations</code> for your services to provide your own public dns for each of the pods.</p>
