zoukankan      html  css  js  c++  java
  • docker-compose 部署jmeter+grafana+prometheus/influxdb,构建性能测试可视化实时监控(一)

    docker-compose 部署grafana,prometheus

    从grafana和prometheus官网拿到docker-compose.yml(下面有链接,进入后直接搜docker-compose.yml 就可以找到),然后放一起,如下图,作为compose启动的配置文件docker-compose.yml

    [root@kpc]# cat docker-compose.yml 
    version: "3"
    services:
      grafana:
        image: grafana/grafana:5.1.0
        ports:
          - 3000:3000
        user: "104"
      prometheus:
        image: prom/prometheus:latest
        container_name: prometheus
        ports:
        - 9090:9090
        command:
        - --config.file=/etc/prometheus/prometheus.yml
        volumes:
        - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro
        depends_on:
        - cadvisor
      cadvisor:
        image: gcr.io/cadvisor/cadvisor:latest
        container_name: cadvisor
        ports:
        - 8080:8080
        volumes:
        - /:/rootfs:ro
        - /var/run:/var/run:rw
        - /sys:/sys:ro
        - /var/lib/docker/:/var/lib/docker:ro
        depends_on:
        - redis
      redis:
        image: redis:latest
        container_name: redis
        ports:
        - 6380:6379
    
    

    https://grafana.com/docs/grafana/latest/installation/docker/

    https://prometheus.io/docs/guides/cadvisor/#prometheus-configuration

    只有docker-compose.yml还不够,启动会报错的,因为prometheus有个volumes配置

        volumes:
        - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro
    

    意思是把虚拟机当前目录下的prometheus.yml文件映射到prometheus服务容器里面的/etc/prometheus/prometheus.yml,所以,我们还要在当前目录建一个prometheus.yml,写入内容

    scrape_configs:
    - job_name: cadvisor
      scrape_interval: 5s
      static_configs:
      - targets:
        - cadvisor:8080
    

    现在就齐活了,看一下当前目录都有啥?嗯, 就这2个文件

    [root@kpc]# ls
    docker-compose.yml  prometheus.yml
    

    现在我们再up,发现报错了,看报错是拉取cadvisor时连接超时了,这是因为国外源的原因,马上换一下docker源,换成aliyun的,怎么替换docker源?

    sudo mkdir -p /etc/docker  # 如果没有就新建,有的话直接进去然后下一步
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://tjtr2dh5.mirror.aliyuncs.com"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

    OK,源也换了,理论上没问题了。

    docker-compose up启动,启动成功的日志太长就不贴了

    docker-compose ps查看一下,如图,State都是up说明都成功了

    [root@kpc]# docker-compose ps
           Name                     Command               State           Ports         
    ------------------------------------------------------------------------------------
    kpc_grafana_1        /run.sh                          Up      0.0.0.0:3000->3000/tcp
    cadvisor             /usr/bin/cadvisor                Up      0.0.0.0:8080->8080/tcp
    prometheus           /bin/prometheus --config.f ...   Up      0.0.0.0:9090->9090/tcp
    redis                docker-entrypoint.sh redis ...   Up      0.0.0.0:6380->6379/tcp
    
    

    打开浏览器访问看看

    更多学习笔记移步 https://www.cnblogs.com/kknote
  • 相关阅读:
    Charles网络工具
    查找最长子串的长度(不重复字符)
    KMP算法
    java并发编程实战:第十四章----构建自定义的同步工具
    java并发编程实战:第十二章---并发程序的测试
    java并发编程实战:第二章----线程安全性
    java并发编程实战:第三章----对象的共享
    java并发编程实战:第四章----对象的组合
    java并发编程实战:第五章----基础构建模块
    java并发编程实战:第六章----任务执行
  • 原文地址:https://www.cnblogs.com/kknote/p/14275186.html
Copyright © 2011-2022 走看看