I have a ClusterIP service in my cluster with 4 pods behind it. I noticed that 
requests to the service are not evenly distributed among pods. After further 
reading I learned that the kube-proxy pod is responsible for setting up the 
iptables rules that forward requests to the pods. After logging into the 
kube-proxy pod and listing the nat table rules, this is what I got:

Chain KUBE-SVC-4F4JXO37LX4IKRUC (1 references)
target     prot opt source               destination
KUBE-SEP-6X4IVU3LDAAZJUPD  all  --  0.0.0.0/0            0.0.0.0/0            
/* default/btm-calculator: */ statistic mode random probability 0.25000000000
KUBE-SEP-TXRPWWIIUWW3MNFH  all  --  0.0.0.0/0            0.0.0.0/0            
/* default/btm-calculator: */ statistic mode random probability 0.33332999982
KUBE-SEP-HW6SF2LJM4S7X5ZN  all  --  0.0.0.0/0            0.0.0.0/0            
/* default/btm-calculator: */ statistic mode random probability 0.50000000000
KUBE-SEP-TTJKD52QZSH2OH4O  all  --  0.0.0.0/0            0.0.0.0/0            
/* default/btm-calculator: */

The comments seem to suggest that the load is balanced according to the static 
mode random probability with an uneven probability distribution. Is this how 
it's supposed to work? Every piece of documentation that I read about load 
balancing by a ClusterIP service indicates that it should be round robin. 
Obviously this is not the case here. 
Is there a way to set a ClusterIP to perform round robin load balancing?

Thank you,
Cristian

-- 
You received this message because you are subscribed to the Google Groups 
"Kubernetes user discussion and Q&A" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to kubernetes-users+unsubscr...@googlegroups.com.
To post to this group, send email to kubernetes-users@googlegroups.com.
Visit this group at https://groups.google.com/group/kubernetes-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to