sigs.k8s.io/cluster-api-provider-azure@v1.14.3/hack/observability/prometheus/resources/prometheus.yaml (about)

     1  ---
     2  apiVersion: v1
     3  kind: ServiceAccount
     4  metadata:
     5    name: prometheus
     6  
     7  ---
     8  apiVersion: rbac.authorization.k8s.io/v1
     9  kind: ClusterRole
    10  metadata:
    11    name: prometheus
    12  rules:
    13    - apiGroups: [""]
    14      resources:
    15        - nodes
    16        - nodes/metrics
    17        - services
    18        - endpoints
    19        - pods
    20      verbs: ["get", "list", "watch"]
    21    - apiGroups: [""]
    22      resources:
    23        - configmaps
    24      verbs: ["get"]
    25    - apiGroups:
    26        - networking.k8s.io
    27      resources:
    28        - ingresses
    29      verbs: ["get", "list", "watch"]
    30    - nonResourceURLs: ["/metrics"]
    31      verbs: ["get"]
    32  
    33  ---
    34  apiVersion: rbac.authorization.k8s.io/v1
    35  kind: ClusterRoleBinding
    36  metadata:
    37    name: prometheus
    38  roleRef:
    39    apiGroup: rbac.authorization.k8s.io
    40    kind: ClusterRole
    41    name: prometheus
    42  subjects:
    43    - kind: ServiceAccount
    44      name: prometheus
    45  
    46  ---
    47  apiVersion: monitoring.coreos.com/v1
    48  kind: Prometheus
    49  metadata:
    50    name: prometheus
    51  spec:
    52    serviceAccountName: prometheus
    53    serviceMonitorSelector:
    54      matchExpressions:
    55        - key: control-plane
    56          operator: In
    57          values:
    58            - capz-controller-manager
    59            - azureserviceoperator-controller-manager
    60    resources:
    61      requests:
    62        memory: 400Mi
    63    enableAdminAPI: true
    64  
    65  ---
    66  apiVersion: v1
    67  kind: Service
    68  metadata:
    69    name: prometheus
    70  spec:
    71    type: NodePort
    72    ports:
    73      - name: web
    74        nodePort: 30900
    75        port: 9090
    76        protocol: TCP
    77        targetPort: web
    78    selector:
    79      prometheus: prometheus
    80  
    81  ---
    82  # Prometheus Monitor Service (Metrics)
    83  apiVersion: monitoring.coreos.com/v1
    84  kind: ServiceMonitor
    85  metadata:
    86    labels:
    87      control-plane: capz-controller-manager
    88    name: capz-controller-manager-metrics-monitor
    89  spec:
    90    endpoints:
    91      - path: /metrics
    92        port: metrics
    93        scheme: http
    94    selector:
    95      matchLabels:
    96        control-plane: capz-controller-manager
    97  ---
    98  apiVersion: monitoring.coreos.com/v1
    99  kind: ServiceMonitor
   100  metadata:
   101    labels:
   102      control-plane: azureserviceoperator-controller-manager
   103    name: azureserviceoperator-controller-manager-metrics-monitor
   104  spec:
   105    endpoints:
   106      - path: /metrics
   107        port: metrics
   108        scheme: http
   109    selector:
   110      matchLabels:
   111        control-plane: controller-manager