|NO.Z.00339|——————————|CloudNative|——|KuberNetes&運維.V56|-----------------------------------------------------------|Prometheus.v01|自動發現.v01|建立secret|
阿新 • • 發佈:2022-04-01
[CloudNative:KuberNetes&運維.V56] [Applications.KuberNetes] [|Altermanager|Prometheus自動發現|自動發現監控ratel地址krm.test.com|]
一、自動發現配置:建立secret
二、Prometheus-additional檔案詳解### --- 配置Prometheus-additional.yaml配置檔案 ~~~ 建立prometheus-additional配置檔案 [root@k8s-master01 discovery]# cat prometheus-additional.yaml - job_name: 'blackbox' metrics_path: /probe params: module: [http_2xx] # Look for a HTTP 200 response. static_configs: - targets: - https://www.baidu.com/ relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - source_labels: [instance] target_label: target - target_label: __address__ replacement: blackbox-exporter:9115 # The blackbox exporter's real hostname:port. - job_name: 'auto_discovery' metrics_path: /probe params: module: [http_2xx] kubernetes_sd_configs: - role: ingress relabel_configs: - source_labels: [__meta_kubernetes_ingress_annotation_prometheus_io_http_probe] action: keep regex: true - source_labels: [__meta_kubernetes_ingress_scheme,__address__,__meta_kubernetes_ingress_path] regex: (.+);(.+);(.+) replacement: ${1}://${2}${3} target_label: __param_target - source_labels: [__meta_kubernetes_ingress_scheme,__address__,__meta_kubernetes_ingress_path] regex: (.+);(.+);(.+) replacement: ${1}://${2}${3} target_label: target - target_label: __address__ replacement: blackbox-exporter:9115 - source_labels: [__param_target] target_label: instance - action: labelmap regex: __meta_kubernetes_ingress_label_(.+) - source_labels: [__meta_kubernetes_namespace] target_label: kubernetes_namespace - source_labels: [__meta_kubernetes_ingress_name] target_label: kubernetes_name
三、建立secrets配置檔案,通過additional檔案生成### --- prometheus-additional配置檔案詳解 [root@k8s-master01 discovery]# cat prometheus-additional.yaml - job_name: 'auto_discovery' # 定義了一個auto_discovery metrics_path: /probe params: module: [http_2xx] kubernetes_sd_configs: # 使用的是k8s的服務發現 - role: ingress # 服務發現是就ingress,也可以基於pod,service,都是可以的 relabel_configs: # 匹配規則: - source_labels: [__meta_kubernetes_ingress_annotation_prometheus_io_http_probe] action: keep # keep符合這個規則就是進行收集;還有Job,就是符合這個規則就是把它踢出去 regex: true - source_labels: [__meta_kubernetes_ingress_scheme,__address__,__meta_kubernetes_ingress_path] # 定義的target,address:ingress的地址:meta_kubernetes_ingress_path:就是ingress的後面URL地址部分 regex: (.+);(.+);(.+) # 取到的值以分號進行分隔,定義了一個正則表示式 replacement: ${1}://${2}${3} # 會在一塊就是顯示的是一個完整的域名形式 target_label: __param_target - source_labels: [__meta_kubernetes_ingress_scheme,__address__,__meta_kubernetes_ingress_path] regex: (.+);(.+);(.+) replacement: ${1}://${2}${3} target_label: target - target_label: __address__ # 把黑盒監控的地址賦值給address,就可以請求了 replacement: blackbox-exporter:9115 - source_labels: [__param_target] target_label: instance # 定義了一個instance的值 - action: labelmap # 定義了一個label regex: __meta_kubernetes_ingress_label_(.+) - source_labels: [__meta_kubernetes_namespace] target_label: kubernetes_namespace - source_labels: [__meta_kubernetes_ingress_name] target_label: kubernetes_name
### --- 生成secrets配置檔案:通過additional檔案來生成 [root@k8s-master01 discovery]# kubectl create secret generic additional-scrape-configs --from-file=prometheus-additional.yaml --dry-run -oyaml > additional-scrape-configs.yaml W0529 14:56:23.198084 4376 helpers.go:553] --dry-run is deprecated and can be replaced with --dry-run=client.
### --- 檢視secrets配置檔案
[root@k8s-master01 discovery]# cat additional-scrape-configs.yaml
apiVersion: v1
data:
prometheus-additional.yaml: LSBqb2JfbmFtZTogJ2JsYWNrYm94JwogIG1ldHJpY3NfcGF0aDogL3Byb2JlCiAgcGFyYW1zOgogICAgbW9kdWxlOiBbaHR0cF8yeHhdICAjIExvb2sgZm9yIGEgSFRUUCAyMDAgcmVzcG9uc2UuCiAgc3RhdGljX2NvbmZpZ3M6CiAgICAtIHRhcmdldHM6CiAgICAgIC0gaHR0cHM6Ly93d3cuYmFpZHUuY29tLwogIHJlbGFiZWxfY29uZmlnczoKICAgIC0gc291cmNlX2xhYmVsczogW19fYWRkcmVzc19fXQogICAgICB0YXJnZXRfbGFiZWw6IF9fcGFyYW1fdGFyZ2V0CiAgICAtIHNvdXJjZV9sYWJlbHM6IFtfX3BhcmFtX3RhcmdldF0KICAgICAgdGFyZ2V0X2xhYmVsOiBpbnN0YW5jZQogICAgLSBzb3VyY2VfbGFiZWxzOiBbaW5zdGFuY2VdCiAgICAgIHRhcmdldF9sYWJlbDogdGFyZ2V0CiAgICAtIHRhcmdldF9sYWJlbDogX19hZGRyZXNzX18KICAgICAgcmVwbGFjZW1lbnQ6IGJsYWNrYm94LWV4cG9ydGVyOjkxMTUgICMgVGhlIGJsYWNrYm94IGV4cG9ydGVyJ3MgcmVhbCBob3N0bmFtZTpwb3J0LgogICAgLSBqb2JfbmFtZTogJ2F1dG9fZGlzY292ZXJ5JwogICAgICBtZXRyaWNzX3BhdGg6IC9wcm9iZQogICAgICBwYXJhbXM6CiAgICAgICAgbW9kdWxlOiBbaHR0cF8yeHhdICAKICAgICAga3ViZXJuZXRlc19zZF9jb25maWdzOgogICAgICAtIHJvbGU6IGluZ3Jlc3MKICAgICAgcmVsYWJlbF9jb25maWdzOgogICAgICAtIHNvdXJjZV9sYWJlbHM6IFtfX21ldGFfa3ViZXJuZXRlc19pbmdyZXNzX2Fubm90YXRpb25fcHJvbWV0aGV1c19pb19odHRwX3Byb2JlXQogICAgICAgIGFjdGlvbjoga2VlcAogICAgICAgIHJlZ2V4OiB0cnVlCiAgICAgIC0gc291cmNlX2xhYmVsczogW19fbWV0YV9rdWJlcm5ldGVzX2luZ3Jlc3Nfc2NoZW1lLF9fYWRkcmVzc19fLF9fbWV0YV9rdWJlcm5ldGVzX2luZ3Jlc3NfcGF0aF0KICAgICAgICByZWdleDogKC4rKTsoLispOyguKykKICAgICAgICByZXBsYWNlbWVudDogJHsxfTovLyR7Mn0kezN9CiAgICAgICAgdGFyZ2V0X2xhYmVsOiBfX3BhcmFtX3RhcmdldAogICAgICAtIHNvdXJjZV9sYWJlbHM6IFtfX21ldGFfa3ViZXJuZXRlc19pbmdyZXNzX3NjaGVtZSxfX2FkZHJlc3NfXyxfX21ldGFfa3ViZXJuZXRlc19pbmdyZXNzX3BhdGhdCiAgICAgICAgcmVnZXg6ICguKyk7KC4rKTsoLispCiAgICAgICAgcmVwbGFjZW1lbnQ6ICR7MX06Ly8kezJ9JHszfQogICAgICAgIHRhcmdldF9sYWJlbDogdGFyZ2V0CiAgICAgIC0gdGFyZ2V0X2xhYmVsOiBfX2FkZHJlc3NfXwogICAgICAgIHJlcGxhY2VtZW50OiBibGFja2JveC1leHBvcnRlcjo5MTE1CiAgICAgIC0gc291cmNlX2xhYmVsczogW19fcGFyYW1fdGFyZ2V0XQogICAgICAgIHRhcmdldF9sYWJlbDogaW5zdGFuY2UKICAgICAgLSBhY3Rpb246IGxhYmVsbWFwCiAgICAgICAgcmVnZXg6IF9fbWV0YV9rdWJlcm5ldGVzX2luZ3Jlc3NfbGFiZWxfKC4rKQogICAgICAtIHNvdXJjZV9sYWJlbHM6IFtfX21ldGFfa3ViZXJuZXRlc19uYW1lc3BhY2VdCiAgICAgICAgdGFyZ2V0X2xhYmVsOiBrdWJlcm5ldGVzX25hbWVzcGFjZQogICAgICAtIHNvdXJjZV9sYWJlbHM6IFtfX21ldGFfa3ViZXJuZXRlc19pbmdyZXNzX25hbWVdCiAgICAgICAgdGFyZ2V0X2xhYmVsOiBrdWJlcm5ldGVzX25hbWUK
kind: Secret
metadata:
creationTimestamp: null
name: additional-scrape-configs
四、生成建立secrets
### --- 建立secrets
[root@k8s-master01 additional]# kubectl create -f additional-scrape-configs.yaml -n monitoring
secret/additional-scrape-configs created
### --- 檢視建立的secrets
[root@k8s-master01 discovery]# kubectl get secrets -n monitoring
NAME TYPE DATA AGE
additional-scrape-configs-ratel-secret-1 Opaque 1 43m
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)