Created
January 20, 2020 19:58
-
-
Save daxmc99/c9868ce659ec78c3ab605565327540f4 to your computer and use it in GitHub Desktop.
Prometheus yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: v1 | |
kind: ConfigMap | |
metadata: | |
annotations: | |
linkerd.io/created-by: linkerd/cli stable-2.6.1 | |
labels: | |
linkerd.io/control-plane-component: prometheus | |
linkerd.io/control-plane-ns: linkerd | |
name: linkerd-prometheus-config | |
namespace: linkerd | |
data: | |
prometheus.yml: |- | |
global: | |
scrape_interval: 10s | |
scrape_timeout: 10s | |
evaluation_interval: 10s | |
rule_files: | |
- /etc/prometheus/*_rules.yml | |
scrape_configs: | |
- job_name: 'prometheus' | |
static_configs: | |
- targets: ['localhost:9090'] | |
- job_name: 'grafana' | |
kubernetes_sd_configs: | |
- role: pod | |
namespaces: | |
names: ['linkerd'] | |
relabel_configs: | |
- source_labels: | |
- __meta_kubernetes_pod_container_name | |
action: keep | |
regex: ^grafana$ | |
# Required for: https://grafana.com/grafana/dashboards/315 | |
- job_name: 'kubernetes-nodes-cadvisor' | |
scheme: https | |
tls_config: | |
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt | |
insecure_skip_verify: true | |
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token | |
kubernetes_sd_configs: | |
- role: node | |
relabel_configs: | |
- action: labelmap | |
regex: __meta_kubernetes_node_label_(.+) | |
- target_label: __address__ | |
replacement: kubernetes.default.svc:443 | |
- source_labels: [__meta_kubernetes_node_name] | |
regex: (.+) | |
target_label: __metrics_path__ | |
replacement: /api/v1/nodes/$1/proxy/metrics/cadvisor | |
metric_relabel_configs: | |
- source_labels: [__name__] | |
regex: '(container|machine)_(cpu|memory|network|fs)_(.+)' | |
action: keep | |
- source_labels: [__name__] | |
regex: 'container_memory_failures_total' # unneeded large metric | |
action: drop | |
- job_name: 'linkerd-controller' | |
kubernetes_sd_configs: | |
- role: pod | |
namespaces: | |
names: ['linkerd'] | |
relabel_configs: | |
- source_labels: | |
- __meta_kubernetes_pod_label_linkerd_io_control_plane_component | |
- __meta_kubernetes_pod_container_port_name | |
action: keep | |
regex: (.*);admin-http$ | |
- source_labels: [__meta_kubernetes_pod_container_name] | |
action: replace | |
target_label: component | |
- job_name: 'linkerd-proxy' | |
kubernetes_sd_configs: | |
- role: pod | |
relabel_configs: | |
- source_labels: | |
- __meta_kubernetes_pod_container_name | |
- __meta_kubernetes_pod_container_port_name | |
- __meta_kubernetes_pod_label_linkerd_io_control_plane_ns | |
action: keep | |
regex: ^linkerd-proxy;linkerd-admin;linkerd$ | |
- source_labels: [__meta_kubernetes_namespace] | |
action: replace | |
target_label: namespace | |
- source_labels: [__meta_kubernetes_pod_name] | |
action: replace | |
target_label: pod | |
# special case k8s' "job" label, to not interfere with prometheus' "job" | |
# label | |
# __meta_kubernetes_pod_label_linkerd_io_proxy_job=foo => | |
# k8s_job=foo | |
- source_labels: [__meta_kubernetes_pod_label_linkerd_io_proxy_job] | |
action: replace | |
target_label: k8s_job | |
# drop __meta_kubernetes_pod_label_linkerd_io_proxy_job | |
- action: labeldrop | |
regex: __meta_kubernetes_pod_label_linkerd_io_proxy_job | |
# __meta_kubernetes_pod_label_linkerd_io_proxy_deployment=foo => | |
# deployment=foo | |
- action: labelmap | |
regex: __meta_kubernetes_pod_label_linkerd_io_proxy_(.+) | |
# drop all labels that we just made copies of in the previous labelmap | |
- action: labeldrop | |
regex: __meta_kubernetes_pod_label_linkerd_io_proxy_(.+) | |
# __meta_kubernetes_pod_label_linkerd_io_foo=bar => | |
# foo=bar | |
- action: labelmap | |
regex: __meta_kubernetes_pod_label_linkerd_io_(.+) | |
# Copy all pod labels to tmp labels | |
- action: labelmap | |
regex: __meta_kubernetes_pod_label_(.+) | |
replacement: __tmp_pod_label_$1 | |
# Take `linkerd_io_` prefixed labels and copy them without the prefix | |
- action: labelmap | |
regex: __tmp_pod_label_linkerd_io_(.+) | |
replacement: __tmp_pod_label_$1 | |
# Drop the `linkerd_io_` originals | |
- action: labeldrop | |
regex: __tmp_pod_label_linkerd_io_(.+) | |
# Copy tmp labels into real labels | |
- action: labelmap | |
regex: __tmp_pod_label_(.+) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment