1. 程式人生 > 其它 >|NO.Z.00339|——————————|CloudNative|——|KuberNetes&運維.V56|-----------------------------------------------------------|Prometheus.v01|自動發現.v01|建立secret|

|NO.Z.00339|——————————|CloudNative|——|KuberNetes&運維.V56|-----------------------------------------------------------|Prometheus.v01|自動發現.v01|建立secret|



[CloudNative:KuberNetes&運維.V56]                                                                      [Applications.KuberNetes] [|Altermanager|Prometheus自動發現|自動發現監控ratel地址krm.test.com|]








一、自動發現配置:建立secret
### --- 配置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
二、Prometheus-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檔案生成
### --- 生成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)