Tink vs Karpenter
Karpenter is a Kubernetes node provisioner. It watches pending pods and launches right-sized EC2 instances, then consolidates them when they are empty. That is not a mechanic. Tink installs in one command, watches the Linux server, explains what is wrong, and helps you fix it.
Karpenter provisions Nodes. Tink answers “why is this VPS sick?”
Accidental sysadmins land on Karpenter because every AWS EKS capacity diagram mentions it. Then the volume fills, nginx dies, and the NodePool stays the same size — the VPS was never a Node. A filling /var is a Tink warning; it is not an unschedulable pod unless you already run Karpenter on that cluster.
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 Karpenter if you already operate EKS and need just-in-time Nodes. Use Tink if you run Linux servers and want a mechanic.
| Feature | Tink | Karpenter |
|---|---|---|
| Setup time | 30 seconds (one curl | sh command) | Hours — a cluster, IRSA, NodePools, EC2NodeClass, and still no host mechanic until Prometheus and a disruption budget exist |
| What you get | Working monitoring, diagnosis, and approved fixes | More or fewer EC2 Nodes. The box that already exists is still yours to diagnose and SSH |
| Pricing | Free (Scout) / $9 / $29 per machine per month | Free software (Apache 2.0). You still pay for EKS, EC2, and the engineer who owns NodePool disruption |
| Hidden costs | None — fully managed | Spot interruption loops, consolidation drift, IAM, and a second tool that pages you when /var fills |
| Monitoring approach | Agent on the server — CPU, disk, services, logs, certs, ports | None on the OS — Karpenter only watches pending pods and NodePool capacity |
| Configuration | None after install — heuristics and AI | NodePool limits, EC2NodeClass AMI, disruption budgets, and which instance families Karpenter may launch |
| Plain-English diagnosis | Yes — AI explains root cause, impact, and fix | No — Karpenter logs a provision. You still SSH or kubectl describe to learn why a VPS is sick |
| Fix execution | Proposes and executes approved commands with an audit trail | Provision only — Karpenter cannot free disk, restart nginx, or rotate a cert on a VPS |
| Alerting | Built-in across 8 channels | None — scrape controller metrics or watch Node count before anyone is paged about the host |
| Predictive alerts | Yes — disk fills in ~6 days, memory and CPU trends | Never — Karpenter adds a Node after pods already failed to schedule. It does not forecast host fill |
| SSH brute-force detection | Built-in — parses auth.log every scan | Never — Karpenter does not read auth.log, journald SSH, or host firewall state |
| Machine offline detection | Agent presence monitoring with multi-channel alerts | A silent Karpenter is a missing Deployment — only if the API server still answers |
| Public status page | Shareable URL with 90-day history | None — Karpenter has no customer-facing status page |
| Weekly fleet digest | Automated Monday digest + daily brief when issues are open | None — a provision event is not a plain-English fleet narrative |
| On-call tracking | Built-in /oncall command + incident acknowledgment | Not included — wire NodePool metrics into PagerDuty or another incident tool |
| Conversation interface | Telegram, WhatsApp, web dashboard, CLI | kubectl get nodes. No mechanic you text when /var filled on a VPS that is not a Node |
| Learning curve | None — works after install | Steep — EKS, IRSA, NodePools, consolidation, and which pending pod actually means you needed another VM |
| Best for | Freelancers, small teams, accidental sysadmins (1-50 Linux servers) | Teams that already run EKS and need just-in-time Nodes, not a sick-VPS mechanic |
When Karpenter is the right choice
Keep Karpenter when you already want that exact job:
- Just-in-time Nodes — Karpenter is how EKS launches an EC2 instance when pods will not schedule. You need it to grow capacity, not to watch a quiet VPS.
- An existing cluster — IRSA, NodePools, and an EC2NodeClass already exist, and someone owns disruption budgets.
- Capacity questions — pending pods and empty Nodes matter more than host nginx, certs, and SSH.
- Hosts that only exist as Nodes — you already run Kubernetes, not a sick-box SSH loop.
The real cost of “just run Karpenter”
Karpenter is in every EKS capacity diagram. A working ops loop for five Linux boxes is not:
- A provision event still means you SSH in and change the box by hand
- Host fill, nginx, certs, and SSH brute-force never appear unless they show up as pending pods you already have
- A filling /var is a Tink disk warning on every scan — Karpenter will stay quiet until pods already failed to schedule
- A single VPS with no cluster still needs a mechanic, not a NodePool controller
For a 5-server team, Tink Mechanic at $45/month is cheaper than Karpenter plus the engineer who keeps NodePools and disruption budgets alive, and every scan includes a diagnosis a quiet Node count will not type.
No NodePool homework. No silent host. One command install.
Start MechanicAlso compare: Tink vs kubelet · Tink vs kube-controller-manager · Tink vs Prometheus