Skip to content

IPVS low throughput #70747

@annProg

Description

@annProg

What happened:
Service A with clusterIP 169.169.14.147 and a domain k8s.dev.example.com, the domain resolve to ingress-nginx. Anothor service B will request A, when use domain it works fine. I think using clusterIP directly will get better performance because it saves some time for dns resolve and ingress-nginx proxy, so I change domain to clusterIP. But the result was not expected, it got worse, very low throughput and high latency.

What you expected to happen:
On the above situation, clusterIP should have better performance than ingress-nginx.

How to reproduce it (as minimally and precisely as possible):
ipvs mode, do test with ab

# clusterIP
ab -c100 -t300 -n20000000 -r http://169.169.14.147/

# domain resolve to ingress-nginx
ab -c100 -t300 -n20000000 -r http://k8s.dev.example.com/

Anything else we need to know?:
I install an ipvs enviroment manually and do some test, and found it possiblly because ipvs will use iptables to realize SNAT

ipvs

Environment:

  • Kubernetes version (use kubectl version): 1.11.1
  • Cloud provider or hardware configuration:
  • OS (e.g. from /etc/os-release): centos 7.2
  • Kernel (e.g. uname -a): 3.10
  • Install tools: binary
  • Others:

/kind bug

Metadata

Metadata

Assignees

Labels

area/ipvskind/bugCategorizes issue or PR as related to a bug.sig/networkCategorizes an issue or PR as relevant to SIG Network.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions