k8s環境下prometheus監控canal實踐

2021-10-08 02:58:07 字數 1889 閱讀 6261

使用prometheus監控canal的方法官方文件上已經介紹的很詳細了,這裡主要是介紹一下在k8s環境下,prometheus通過pod的服務發現,自動新增對新增的canal-server例項的監控

canal-server的容器化教程在前面文章中已經詳細介紹過了,有興趣的可以看一下。

k8s環境搭建canal-server

主要關注當時canal-server建立的yaml中的以下配置

spec:

selector:

matchlabels:

servicename: "canal-server-discovery-svc-stable"

replicas: 4

# 下面就是讓prometheus監控的配置資訊

template:

metadata:

labels:

# 向prometheus暴露監控介面

annotations:

#監控位址

prometheus.io/path: /

#監控埠

prometheus.io/port: "11112"

#允許prometheus抓取

prometheus.io/scrape: "true"

設定prometheus的pod服務發現,prometheus的配置檔案中新增此項抓取任務(要求prometheus也是在k8s環境下搭建,這部分後續也會出相關文件,感興趣可以持續關注)

# 該項配置會將k8s集群下所有向prometheus暴露監控介面的pod的監控資訊都抓取過來

- job_name: 'kubernetes-pods'

kubernetes_sd_configs:

- role: pod

relabel_configs:

- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]

action: keep

regex: true

- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]

action: replace

target_label: __metrics_path__

regex: (.+)

- source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]

action: replace

regex: ([^:]+)(?::\d+)?;(\d+)

replacement: $1:$2

target_label: __address__

- action: labelmap

regex: __meta_kubernetes_pod_label_(.+)

- source_labels: [__meta_kubernetes_namespace]

action: replace

target_label: kubernetes_namespace

- source_labels: [__meta_kubernetes_pod_name]

action: replace

target_label: kubernetes_pod_name

這樣在k8s集群下新增的canal-server例項就能自動被prometheus發現並抓取資料了,grafana上也會自動新增相關資訊的監控哦!

K8s集群環境搭建 K8s安裝(2)

k8s集群環境搭建 基礎環境配置 1 k8s集群環境搭建 k8s安裝 2 k8s集群環境搭建 安裝keepalived和haproxy 3 k8s集群環境搭建 k8s集群初始化 4 k8s集群環境搭建 安裝metrics和dashboard 5 一 安裝docker 所有節點 檢視docker版本有...

K8S 環境變數

建立 pod 時,可以為其下的容器設定環境變數。通過配置檔案的env或者envfrom欄位來設定環境變數。本示例中,將建立乙個只包含單個容器的 pod。pod 的配置檔案中設定環境變數的名稱為demo greeting,其值為 hello from the environment 下面是 pod 的...

k8s本地環境搭建

提前安裝docker,學習使用絕大部分的場景使用的是docker驅動,而且k8s學習與docker相一致。不要使用docker desktop for mac windows 中的 k8s,其安裝配置在國內 因為網路問題 是乙個天坑,浪費時間生命,還會搞的docker下一堆映象和容器,影響docke...