Add xtal node metrics scrape#2250
Conversation
There was a problem hiding this comment.
Pull request overview
This PR exposes xtal’s node_exporter metrics to the Kubernetes cluster via the Tailscale operator and adds a static Prometheus scrape target for it.
Changes:
- Adds a Tailscale ACL rule allowing
tag:k8sclients to reachxtalon TCP/9100. - Introduces an operator-managed
ExternalNameService forxtalnode_exporter and wires it into the tailscale-operator kustomization. - Updates Prometheus static scrape config and ArgoCD ApplicationSet to ignore operator-managed
externalNamedrift.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
opentofu/tailscale.tf |
Adds ACL entry permitting k8s-tagged Tailscale clients to scrape xtal on port 9100. |
kubernetes/tailscale-operator/xtal-node-exporter.yaml |
New ExternalName Service intended to represent the xtal node_exporter endpoint. |
kubernetes/tailscale-operator/kustomization.yaml |
Includes the new Service manifest in the tailscale-operator deployment. |
kubernetes/prometheus/config/prometheus.yml |
Adds xtal-node-exporter Service DNS name as a Prometheus scrape target with an explicit instance label. |
kubernetes/argocd/appset.yaml |
Enables RespectIgnoreDifferences and ignores drift for the operator-managed Service.spec.externalName. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
✅ Files skipped from review due to trivial changes (1)
WalkthroughAdds an ExternalName Service annotated for Tailscale, registers it in kustomize, adds a Prometheus scrape target, configures Argo CD to ignore externalName drift, and extends Tailscale ACLs to allow k8s access to the node exporter. ChangesXtal Node Exporter Monitoring via Tailscale
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
6cfb0c2 to
7712de6
Compare
Expose xtal node_exporter through the Tailscale operator and add it to Prometheus scraping. - Add the ExternalName service and ArgoCD ignore for the operator-managed externalName - Allow k8s-tagged Tailscale clients to reach xtal on port 9100
7712de6 to
59e536b
Compare
Expose xtal node_exporter through the Tailscale operator and add it to Prometheus scraping.
Add the ExternalName service and ArgoCD ignore for the operator-managed externalName
Allow k8s-tagged Tailscale clients to reach xtal on port 9100