summaryrefslogtreecommitdiff
path: root/f3s/prometheus/manifests/additional-scrape-configs-secret.yaml
blob: bb89e4c52ec1cb6c1d2214334f9baea6bffb9e62 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
apiVersion: v1
kind: Secret
metadata:
  name: additional-scrape-configs
  namespace: monitoring
  annotations:
    argocd.argoproj.io/sync-wave: "1"
type: Opaque
stringData:
  additional-scrape-configs.yaml: |
    - job_name: 'node-exporter'
      static_configs:
        - targets:
          - '192.168.2.130:9100'  # f0 via WireGuard
          - '192.168.2.131:9100'  # f1 via WireGuard
          - '192.168.2.132:9100'  # f2 via WireGuard
          labels:
            os: freebsd
        - targets:
          - '192.168.2.110:9100'  # blowfish via WireGuard
          - '192.168.2.111:9100'  # fishfinger via WireGuard
          labels:
            os: openbsd

    - job_name: 'garage'
      static_configs:
        - targets:
            - '192.168.2.130:3903'  # f0 via WireGuard
            - '192.168.2.131:3903'  # f1 via WireGuard
            - '192.168.2.132:3903'  # f2 via WireGuard
          labels:
            os: freebsd

    - job_name: 'pushgateway'
      honor_labels: true
      static_configs:
        - targets:
          - 'pushgateway.monitoring.svc.cluster.local:9091'

    # Radicale does not expose Prometheus metrics, so we don't scrape it.
    # The radicale-drop job and kubernetes-services-no-radicale job below
    # ensure radicale is excluded from any service discovery.

    # Drop radicale service from being scraped (does not expose Prometheus metrics)
    - job_name: 'radicale-drop'
      static_configs:
        - targets:
          - 'radicale-service.services.svc.cluster.local:80'
      relabel_configs:
        - source_labels: [__address__]
          action: drop

    # Kubernetes service discovery with radicale dropped
    - job_name: 'kubernetes-services-no-radicale'
      kubernetes_sd_configs:
        - role: service
          namespaces:
            names:
              - services
      relabel_configs:
        # Drop radicale service
        - source_labels: [__meta_kubernetes_service_name]
          regex: radicale-service
          action: drop
        # Keep only metrics ports
        - source_labels: [__meta_kubernetes_service_port_name]
          regex: metrics|prometheus
          action: keep
        - source_labels: [__meta_kubernetes_service_name]
          target_label: job
        - source_labels: [__meta_kubernetes_namespace]
          target_label: namespace