最近工作需求学习了下grafana,根据创建的几个dashboard简要记录下创建过程。

  本次使用了grafana做可视化展示,data source使用的rds是postgresql和时序数据库influxdb。

一、搭建部署

  docker环境进行搭建部署,docker-compose文件大概内容如下:

version: '3'

networks:
  mypj:
    driver: bridge

services:
  grafana:
    image: grafana:6.3.5
    container_name: grafana
    hostname: grafana
    restart: always
    volumes:
      - /home/project/grafana.ini:/etc/grafana/grafana.ini
      - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
      - /etc/timezone:/etc/timezone
      - /srv/docker/data/grafana:/var/lib/grafana
    environment:
      GF_SECURITY_ADMIN_PASSWORD: admin
    ports:
      - "3000:3000"
    networks:
      - mypj

  postgres:
    container_name: postgres
    image: postgres:9.4.5.1
    restart: always
    environment:
      - POSTGRES_PASSWORD=password
      - POSTGRES_USER=adimin
      - POSTGRES_DB=adimin
    ports:
      - "5432:5432"
    volumes:
      - /srv/docker/data/postgres:/var/lib/postgresql/data
    networks:
      - mypj

  influxdb:
    image: influxdb:latest
    container_name: influxdb
    restart: always
    ports:
      - "8083:8083"  # web管理工具端口
      - "8086:8086"  # HTTP API端口
      - "8090:8090"
    volumes:
      - /srv/docker/data/influxdb:/var/lib/influxdb
    networks:
      - mypj

  说明:

    1. 登陆http://your_ip:3000    默认用户名密码admin/admin  进行访问grafana  登陆提示时可修改密码

    2. postgresql数据库使用navicat进行连接,数据库、用户名和密码均在docker-compose

    3. influxdb数据库使用InfluxDBStudio进行连接,默认用户名密码root/password

    4. 自行创建测试数据


 

二、使用grafana创建用户

  注:grafana版本不同,界面显示的位置可能会有区别

  第一种方式:

    创建用户,步骤如下:

  

 

 

 

  第二种方式:

    邀请用户,步骤如下:

  

 

 grafana用户角色分为三类,创建多用户可直观的看到不同用户角色对应不同的权限:

  • admin: 可添加编辑data source/organization/groups,可配置plugins
  • editor: 可创建和修改仪表盘/告警规则,无法创建和编辑data source
  • viewer: 可查看任何仪表盘,可通过viwer_can_editor设置可临时编辑仪表盘但不能保存更改,无法创建和编辑data source

 

 三、使用grafana添加数据源

  添加influxdb和postgresql数据源,步骤参考如下:

 

 

 

 

 

 


 

 四、使用grafana的Explore查询数据库 

   

 

 

  

 

 

 

 

 

 

 

 

 

  

 

 

 

 

 

 

 

 

 


  五、使用grafana创建dashboard

  1. 创建一个new dashboard

 

  2. 添加一个query或选择可视化图

 

 

  3.  写query

 

 

 

  4.  选择使用Singlestat单值表

 

 

 

   5. 选择使用Guage仪表盘

 

 

 

  6. 使用Table

  注:$__timeFilter会使用右上角过滤的时间条件

 

 

 

 

 

 

 


六、使用Variables变量实现同一面板不同数据的切换

  1. 创建变量,新创建dashboard右上角设置图标,General可修改dashboard的名称,添加tags,这里选择Variables

 

 

 

 

 

   

  2.  update后可见已添加上变量,show measurements;查出的是所有measurement相当于mysql中的表,查询时sql语句会替换表明,根据表进行切换数据

 

 

  3. 使用变量,在query时替换需要切换的值,这里示例是根据device进行切换对应的数据,左上角进行切换

  说明:

 

 

 

  4. 使用折线图legend设置居右

 

 

 

  5. 设置标题

 

 

 


 

 

七、使用markdown 

 

 

 

 

 


 八、使用plugins

  1. 这里使用了一个clock的插件,首先需要安装下,步骤参考grafana官网 

# 进入容器grafana bin目录下 可见grafana-cli
docker exec -it grafana bash

cd bin

grafana-cli plugins install grafana-clock-panel

  2. 在grafana添加plugin,可见Clock这个插件说明安装成功

    

   3. dashbooard中添加面板

   

 

 

 

问题:

  面板标题怎样设置大小,目前看起来字都太小了。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

版权声明:本文为NolaLi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/NolaLi/p/11792139.html