https://github.com/guessi/dnsperf-bench
DNS Performance Testing with Kubernetes Pods
https://github.com/guessi/dnsperf-bench
benchmark dnsperf docker kubernetes performance-testing
Last synced: about 1 year ago
JSON representation
DNS Performance Testing with Kubernetes Pods
- Host: GitHub
- URL: https://github.com/guessi/dnsperf-bench
- Owner: guessi
- Created: 2018-06-28T03:45:38.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2025-02-12T05:46:34.000Z (over 1 year ago)
- Last Synced: 2025-03-25T06:51:15.428Z (over 1 year ago)
- Topics: benchmark, dnsperf, docker, kubernetes, performance-testing
- Language: Dockerfile
- Homepage: https://hub.docker.com/r/guessi/dnsperf/
- Size: 37.1 KB
- Stars: 25
- Watchers: 3
- Forks: 14
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DNS Performance Testing with Kubernetes Pods
[](https://hub.docker.com/r/guessi/dnsperf/)
[](https://hub.docker.com/r/guessi/dnsperf/)
[](https://hub.docker.com/r/guessi/dnsperf/)
## Integrated Items
* DNSPerf 2.14.0
## 🔥 Stress Test 🔥 Benchmark with Kubernetes Pods
Apply pre-configured testing deployment/pods
```bash
kubectl apply -f https://raw.githubusercontent.com/guessi/dnsperf-bench/main/k8s-dnsperf-bench.yaml
```
Make sure the deployment is running as expected
```bash
kubectl get pods -l app=dnsperf
NAME READY STATUS RESTARTS AGE
dnsperf-7b9cc5b497-d5nfs 1/1 Running 0 1m16s
```
Check benchmark results
```bash
kubectl logs -f deployments/dnsperf
...
Statistics:
...
Queries per second: 17241.513774
...
```
Even more stress 🔥🔥🔥
```bash
kubectl scale deployments/dnsperf --replicas 10
```
## 🤔 Evaluate why there would have performance issue
Does CoreDNS running expected version?
```bash
kubectl describe deployments coredns -n kube-system | grep 'Image:'
```
Does CoreDNS running with expected Corefile?
```bash
kubectl describe configmap coredns -n kube-system
```
Does CoreDNS running with correct resources configuration?
```bash
kubectl get deployments coredns -n kube-system -o json | jq -r '.spec.template.spec.containers[0].resources'
```
Does CoreDNS need more CPU/Memory resources?
```bash
kubectl top pods -n kube-system -l k8s-app=kube-dns
```
How many CoreDNS Pods running? Have you enabled CoreDNS AutoScaler?
```bash
kubectl get deployments coredns -n kube-system
```
> DO NOT report bug without trying to do performance tuning. If you try to gain too much stress without tuning CoreDNS configureation, it is expected to have some TIMEOUT or packet losts. It's expected if you don't change.
## 📑 Reference
- https://www.dnsperf.com/