This release includes many new features for effective AKS cluster troubleshooting especially when API server is down:
Cluster-wide checks
You can now run checks across the entire cluster, making it easier to identify issues affecting multiple nodes or workloads during outages and degraded cluster states.
→ kubectl aks check verify apiserver-connectivity
✔ (all nodes in cluster)
=== aks-nodepool1-58771399-vmss000008 ===
✓ Connectivity check: succeeded
=== aks-nodepool1-58771399-vmss000009 ===
✓ Connectivity check: succeeded
=== aks-nodepool1-58771399-vmss000007 ===
✓ Connectivity check: succeeded
Generic troubleshooting checks
Added a new framework for generic checks to simplify diagnostics and provide reusable validation logic across different troubleshooting scenarios with checks powered by Inspektor Gadget.
→ kubectl aks check trace dns-failed
✔ (all nodes in cluster)
=== aks-nodepool1-58771399-vmss000008 ===
✓ DNS trace: no DNS failures observed during trace period
=== aks-nodepool1-58771399-vmss000009 ===
✗ DNS trace: 3 DNS failure(s) observed
NAME RCODE QTYPE NAMESERVER POD PROCESS
ama-metrics-operator-targets.kube-system.svc.cluster.local.porvznvo3j2ulmh44ss01jatoe.fx.internal.cloudapp.net. NameError A 10.244.0.192
ama-metrics-operator-targets.kube-system.svc.cluster.local.porvznvo3j2ulmh44ss01jatoe.fx.internal.cloudapp.net. NameError A 10.0.0.10 systemd-resolve(657)
ama-metrics-operator-targets.kube-system.svc.cluster.local.porvznvo3j2ulmh44ss01jatoe.fx.internal.cloudapp.net. NameError A 10.0.0.10 kube-system/ama-metrics-5f7f4b8b7d-47tjn flb-pipeline(1476927)
=== aks-nodepool1-58771399-vmss000007 ===
✓ DNS trace: no DNS failures observed during trace period
You can see documentation on writing a check and sharing it with the entire community.
What's Changed
- Allow running checks across cluster by @mqasimsarfraz in #82
- pkg: Add generic checks by @mqasimsarfraz in #83
Full Changelog: v0.2.5...v0.3.0