Files
homelab/cluster/platform/pure-exporter/servicemonitor.yaml
Hermes Agent service account cb5ffc16d8 Add Pure FlashArray OpenMetrics exporter to monitoring namespace
- Deploy purestorage/pure-fa-om-exporter:v1.0.27 container
- Configure API token secret for utilidor FlashArray (jarvis user)
- Expose /metrics endpoint via ClusterIP service on port 9490
- ServiceMonitor for kube-prometheus-stack auto-discovery
- ArgoCD application for GitOps deployment (wave 3)
- Scrape interval: 60s (storage metrics low frequency)
- Resource limits: 200m CPU / 128Mi memory

Provides pure_* metrics namespace for FlashArray capacity, performance,
volume stats, host connectivity, etc.
2026-06-19 17:48:20 -05:00

48 lines
1.4 KiB
YAML

# ------------------------------------------------------------------------------
# Pure FlashArray OpenMetrics Exporter - ServiceMonitor
#
# Configures Prometheus Operator to scrape Pure FlashArray metrics
#
# Scrape interval: 60s (storage metrics don't need high frequency)
# Endpoint: /metrics?endpoint=utilidor (multi-target exporter pattern)
# Metrics namespace: pure_* (purefa_info, purefa_array_*, purefa_volume_*, etc.)
# ------------------------------------------------------------------------------
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: pure-fa-exporter
namespace: monitoring
labels:
app.kubernetes.io/name: pure-fa-exporter
app.kubernetes.io/component: metrics
# Label selector for kube-prometheus-stack
release: monitoring
spec:
# Select the pure-fa-exporter service
selector:
matchLabels:
app.kubernetes.io/name: pure-fa-exporter
# Namespace selector
namespaceSelector:
matchNames:
- monitoring
# Scrape endpoint configuration
endpoints:
- port: metrics
interval: 60s
scrapeTimeout: 30s
path: /metrics
# Query parameter for multi-target exporter pattern
# Uses the array_id from tokens.yaml (utilidor)
params:
endpoint:
- utilidor
# Relabeling to add FlashArray identifier
relabelings:
- sourceLabels: [__param_endpoint]
targetLabel: array
action: replace