美文网首页
学习prometheus第二天

学习prometheus第二天

作者: 比巴卜超软泡泡糖 | 来源:发表于2023-12-14 13:23 被阅读0次

    二、容器方式运行
    安装prometheus

    先确保机器上已经安装了docker
    推荐使用docker-compose,方便管理配置

    # vim /usr/local/docker/prometheus_docker/docker-compose.yml
    
    version: '3.9'
    services:
      prometheus:
        image: 'bitnami/prometheus:2.48.1'
        user: root
        container_name: prometheus
        restart: always
        ports: 
          - '9090:9090'
        volumes:
          - './conf/prometheus.yml:/opt/bitnami/prometheus/conf/prometheus.yml'
          - './data:/opt/bitnami/prometheus/data'
        command:
          - '--config.file=/opt/bitnami/prometheus/conf/prometheus.yml'
          - '--web.enable-lifecycle'
          - '--storage.tsdb.path=/opt/bitnami/prometheus/data'
          - '--storage.tsdb.retention.time=7d'
          - '--web.max-connections=512'
          - '--web.read-timeout=3m'
          - '--query.max-concurrency=25'
          - '--query.timeout=2m'
    

    期间遇到的问题:
    1、did not find expected key
    docker-compose缩进格式的问题
    2、err="open /opt/bitnami/prometheus/data/queries.active: permission denied"
    容器内/data属主是root,而宿主机/data属主是root,docker-compose.yml中指定用户 user: root

    启动

    # docker-compose up -d
    

    访问ip:9090查看Web UI

    node_exporter安装
    node_exporter也可以用容器运行,映射9100端口

    # vim /usr/local/docker/node_exporter_docker/docker-compose.yml
    
    version: '3.9'
    services:
      node_exporter:
        image: 'bitnami/node-exporter:1.7.0'
        container_name: node_exporter
        restart: always
        network_mode: 'host'
        pid: 'host'
        ports:
          - '9100:9100'
        volumes:
          - '/proc:/host/proc:ro'
          - '/sys:/host/sys:ro'
          - '/:/rootfs:ro'
    

    需要将宿主机的 /proc、/sys 等目录挂载到容器内,从而让node_exporter能够访问到宿主机的信息
    不然只是对容器的信息进行采集

    启动

    # docker-compose up -d
    

    在prometheus机器上prometheus.yml添加

    # vim /usr/local/docker/prometheus_docker/data/prometheus.yml
    
    添加
    
    - job_name: "docker_node_exporter"
      static_configs:
        - targets: ["ip:9100"]
    

    重启prometheus容器

    # docker restart 容器ID
    

    访问prometheus的ip:9090 Status-->Targets中看到监控的对象多了docker_node_exporter

    安装grafana

    # vim /usr/local/docker/grafana_docker/docker-compose.yml
    
    version: '3.9'
    services:
      grafana:
        image: 'grafana/grafana:10.2.2'
        container_name: grafana
        restart: always
        ports:
          - '3000:3000'
        volumes:
          - 'grafana_data:/var/lib/grafana'
    volumes:
      grafana_data:
    

    需要创建一个volumes,将grafana数据目录挂载进去,实现持久化。
    访问ip:3000
    默认admin/admin
    进入后add your fiirst data source
    选择prometheus
    根据需求填写

    相关文章

      网友评论

          本文标题:学习prometheus第二天

          本文链接:https://www.haomeiwen.com/subject/pbzigdtx.html