apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: name: kube-apiserver labels: k8s-apps: https spec: jobLabel: provider selector: matchLabels: component: apiserver provider: kubernetes namespaceSelector: matchNames: - default endpoints: - port: https interval: 15s scheme: https tlsConfig: caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt serverName: kubernetes bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token --- apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: name: k8s-apps-http labels: k8s-apps: http spec: jobLabel: k8s-app selector: matchExpressions: - {key: k8s-app, operator: Exists} namespaceSelector: matchNames: - kube-system - monitoring endpoints: - port: http-metrics interval: 15s - port: http-metrics-dnsmasq interval: 15s - port: http-metrics-skydns interval: 15s --- apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: name: prometheus labels: prometheus: k8s spec: endpoints: - port: web selector: matchExpressions: - {key: prometheus, operator: In, values: [k8s]} --- apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: labels: alertmanager: main name: alertmanager spec: endpoints: - port: web selector: matchExpressions: - {key: alertmanager, operator: In, values: [main]}