Reputation: 9116
I have a Kubernetes deployment that has 3 replicas. It starts 3 pods which are distributed across a given cluster. I would like to know how to reliably get one pod to contact another pod within the same ReplicaSet
.
The deployment above is already wrapped up in a Kubernetes Service
. But Services
do not cover my use case. I need each instance of my container (each Pod
) to start-up a local in memory cache and have these cache communicate/sync with other cache instances running on other Pods
. This is how I see a simple distributed cache working on for my service. Pod to pod communication within the same cluster is allowed as per the Kubernetes Network Model but I cannot see a reliable way to address each a pod from another pod.
I believe I can use a StatefulSet
, however, I don't want to lose the ClusterIP
assigned to the service which is required by Ingress
for load balancing.
Upvotes: 1
Views: 551
Reputation: 2755
Ofcourse you can use statefulset, and ingress doesn't need ClusterIP that assigned to the service, since it uses the endpoints, so 'headless service' is ok.
Upvotes: 3