Tink vs CoreDNS
CoreDNS is Kubernetes cluster DNS. It also exposes Prometheus gauges on :9153/metrics — request totals, cache hits, panics. That is not a mechanic. Tink installs in one command, watches the Linux server, explains what is wrong, and helps you fix it.
CoreDNS scrapes DNS. Tink answers “why is this VPS sick?”
Accidental sysadmins land on CoreDNS metrics because every Kubernetes diagram includes a scrape. Then the volume fills, nginx dies, and Grafana still shows A-record traffic — no PromQL matched host fill. A filling /var is a Tink warning; it is not a CoreDNS job unless the resolver itself is the failure.
Tink is the other job: detect the issue on the machine, say why it happened in plain English, propose the command, and run it only after you approve. Keep scraping CoreDNS if you already operate Kubernetes and need DNS SLOs. Use Tink if you run Linux servers and want a mechanic.
| Feature | Tink | CoreDNS |
|---|---|---|
| Setup time | 30 seconds (one curl | sh command) | Hours — Corefile, prometheus plugin, :9153/metrics, prometheus.yml scrape, dashboards, and Alertmanager |
| What you get | Working monitoring, diagnosis, and approved fixes | A cluster DNS scrape target. Host disk fill, nginx, Postgres, and certs stay your problem until PromQL fires and you SSH in |
| Pricing | Free (Scout) / $9 / $29 per machine per month | Free software (Apache 2.0). You still pay for Prometheus, Grafana, Alertmanager, and the engineer who writes the rules |
| Hidden costs | None — fully managed | Corefile plugin order, cache sizing, a noisy request histogram, and a second tool to tell you the box is sick |
| Monitoring approach | Agent on the server — CPU, disk, services, logs, certs, ports | coredns_dns_requests_total and coredns_cache_hits_total. CoreDNS does not watch host fill or a quiet cert unless you added another exporter |
| Configuration | None after install — heuristics and AI | Corefile, kubernetes/forward/cache plugins, --metricslisten, and which PromQL actually pages you |
| Plain-English diagnosis | Yes — AI explains root cause, impact, and fix | You graph coredns_dns_request_duration_seconds in Grafana, then SSH in to change the box |
| Fix execution | Proposes and executes approved commands with an audit trail | Metrics only — CoreDNS cannot free disk, restart nginx, or rotate a cert |
| Alerting | Built-in across 8 channels | Not a CoreDNS job — Prometheus rules and Alertmanager have to fire |
| Predictive alerts | Yes — disk fills in ~6 days, memory and CPU trends | Not a CoreDNS job — a DNS scrape does not forecast a quiet volume filling up |
| SSH brute-force detection | Built-in — parses auth.log every scan | Never — CoreDNS does not read auth.log, journald, or host firewall state |
| Machine offline detection | Agent presence monitoring with multi-channel alerts | Silence if CoreDNS dies — unless you built an up{job="coredns"} deadman check |
| Public status page | Shareable URL with 90-day history | None — CoreDNS has no customer-facing status page |
| Weekly fleet digest | Automated Monday digest + daily brief when issues are open | None — a DNS scrape target is not a plain-English fleet narrative |
| On-call tracking | Built-in /oncall command + incident acknowledgment | Not included — wire Alertmanager into PagerDuty or another incident tool |
| Conversation interface | Telegram, WhatsApp, web dashboard, CLI | kubectl logs and Grafana. No mechanic you text when /var filled and CoreDNS still answered A records |
| Learning curve | None — works after install | Steep — Corefile plugins, cache/forward SLOs, PromQL, scrape config, and which rule actually pages |
| Best for | Freelancers, small teams, accidental sysadmins (1-50 Linux servers) | Teams that already run Prometheus and need CoreDNS scrapes, not a sick-VPS mechanic |
When CoreDNS metrics are the right choice
Keep scraping CoreDNS when you already want that exact job:
- Kubernetes DNS SLOs — you need request rate, cache hits, and panics, not a mechanic.
- Resolver latency — request duration histograms matter more than host nginx, certs, and SSH on a quiet VPS.
- An existing Prometheus + Grafana stack — CoreDNS already serves the cluster, scrapes already run, and someone owns the Corefile.
- Hosts that only page on DNS — you already run exporters and PromQL, not a sick-box SSH loop.
The real cost of “just scrape CoreDNS”
CoreDNS is in every Kubernetes monitoring diagram. A working ops loop for five Linux boxes is not:
- A healthy coredns_dns_requests_total still means you SSH in and change the box by hand
- Host fill, nginx, certs, and SSH brute-force never appear unless Prometheus scraped those signals and a rule fired
- A filling /var is a Tink disk warning on every scan — CoreDNS will stay quiet until the resolver itself is the failure
- A single VPS with a dead CoreDNS still needs a mechanic, not another DNS scrape
For a 5-server team, Tink Mechanic at $45/month is cheaper than CoreDNS plus the engineer who keeps Prometheus rules and the Corefile alive, and every scan includes a diagnosis a quiet :9153 scrape will not type.
No Corefile homework. No silent host. One command install.
Start MechanicAlso compare: Tink vs Prometheus · Tink vs BIND Exporter · Tink vs Alertmanager