zoukankan      html  css  js  c++  java
  • Prometheus Operator配置Consul服务自动发现 wang

    # 1.在monitoring名称空间部署consul服务
    cat > consul.yaml << EOF
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: consul
      namespace: monitoring
      labels:
        app: consul
    spec:
      selector:
        matchLabels:
          app: consul
      replicas: 1
      template:
        metadata:
          name: consul
          labels:
            app: consul
        spec:
          containers:
            - name: consul
              image: consul:latest
              ports:
                - containerPort: 8500
                  protocol: TCP
              imagePullPolicy: IfNotPresent
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: consul
      namespace: monitoring
      labels:
        app: consul
    spec:
      selector:
        app: consul
      ports:
        - name: consul
          protocol: TCP
          port: 8500
          targetPort: 8500
    EOF
     
    kubectl apply -f consul.yaml
     
    # 2.编写prometheus-additional并在monitoring名称空间创建secret资源
    cat > prometheus-additional.yaml << EOF
    - job_name: consul
      consul_sd_configs:
        - server: consul.monitoring.svc:8500
      relabel_configs:
        - source_labels: [__meta_consul_tags]
          regex: .*,prome,.*
          action: keep
        - source_labels: [__meta_consul_service]
          target_label: job
    EOF
     
    kubectl create secret generic additional-configs --from-file=prometheus-additional.yaml -n monitoring
     
    # 3.手动修改kube-prometheus/manifests中的prometheus-prometheus.yaml文件增加additionalScrapeConfigs配置段
    vim kube-prometheus/manifests/prometheus-prometheus.yaml
     
      additionalScrapeConfigs:
        name: additional-configs
        key: prometheus-additional.yaml
         
    # 并重新应用prometheus-prometheus.yaml文件
    kubectl apply -f kube-prometheus/manifests/prometheus-prometheus.yaml
    
    # 4.修改名为prometheus-k8s的ClusterRole权限,并更新资源
    cat > prometheus-clusterRole.yaml << EOF
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      name: prometheus-k8s
    rules:
    - apiGroups:
      - ""
      resources:
      - nodes
      - services
      - endpoints
      - pods
      - nodes/proxy
      verbs:
      - get
      - list
      - watch
    - apiGroups:
      - ""
      resources:
      - configmaps
      - nodes/metrics
      verbs:
      - get
    - nonResourceURLs:
      - /metrics
      verbs:
      - get
    EOF
    
    kubectl apply -f prometheus-clusterRole.yaml
  • 相关阅读:
    实现类似“添加扩展程序…”的设计时支持
    为什么word2007写的文章不能显示在首页
    (翻译)LearnVSXNow!#4 创建一个带有工具窗的Package
    (翻译)LearnVSXNow!#1 如何开始VSX开发?
    测试Windows live writer 发日志
    (翻译)LearnVSXNow!#3 创建一个带有简单命令的Package
    styleSheetTheme和them
    (翻译)LearnVSXNow!#2 创建一个空的VS Package
    VS 2008 Package 备忘
    通用树形表查询SQL
  • 原文地址:https://www.cnblogs.com/wang-hongwei/p/15694644.html
Copyright © 2011-2022 走看看