Skip to content

Improve kubedns QPS to be closer to GCE DNS server performance #28366

Closed
@girishkalele

Description

@girishkalele

Ran a DNS performance test against the kubedns pod vs the native GCE DNS server.
kubedns performance was only around 10% that of going directly to the GCE DNS at "169.254.169.254".

The single kubedns pod seems to max out at around the same performance as provided by the GCE DNS to each unique IP address. Since all 10 Pods are running the same query-file, we would expect the dnsmasq caching would dramatically speed up performance.

Running against DNS cluster ip 10.0.0.10 is around 109 QPS

  Queries per second:   137.991371
  Queries per second:   112.373670
  Queries per second:   97.577085
  Queries per second:   131.381920
  Queries per second:   35.410735
  Queries per second:   136.044372
  Queries per second:   49.806700
  Queries per second:   128.092776
  Queries per second:   133.084200
  Queries per second:   133.843242

Running directly against 169.254.169.254 is 1256 QPS

  Queries per second:   1233.658841
  Queries per second:   1292.178002
  Queries per second:   1204.961019
  Queries per second:   1278.054183
  Queries per second:   1297.116902
  Queries per second:   1209.742660
  Queries per second:   1250.562897
  Queries per second:   1233.336819
  Queries per second:   1303.879214
  Queries per second:   1255.794775

Methodology:

2 n1-standard-2 instances as schedulable nodes.
Hairpin_veth mode is on.
1 kubedns pod.
10 DNSPerf client pods running as 10 parallel completions under one "Job".

Metadata

Metadata

Assignees

Labels

area/dnslifecycle/rottenDenotes an issue or PR that has aged beyond stale and will be auto-closed.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