Grafana是开源的可视化工具,支持各类数据源的接入MySQL、PostgreSQL、AWS CloudWatch、Microsoft SQL Server (MSSQL)等;支持丰富的插件生态系统 Bar chart、CloudWatch、Geomap、Jaeger等。以下是grafana的官方网站:
Grafana Labs
grafana服务端支持在linux、windows、mac和docker中配置,在这里将使用docker来快速的部署。
1. Docker部署grafana以及zabbix
Grafana Docker镜像分为两个版本:
- Grafana企业版:grafana/grafana-enterprise
- Grafana开源版:grafana/grafana-oss
以下运行最新稳定版本的Grafana-oss,监听3000端口,容器名称为grafana,使用grafana-storage和grafana-log Docker卷进行持久化存储,并安装官方的Zabbix插件。
# create a persistent volume for data
docker volume create grafana-data# create a persistent volume for log
docker volume create grafana-log# start grafana by using the above persistent storage and defining environment variables
docker run -d -p 3000:3000 --name=grafana \ --volume grafana-storage:/var/lib/grafana \ --volume grafana-log:/var/log/grafana \ -e "GF_INSTALL_PLUGINS=alexanderzobnin-zabbix-app" \ grafana/grafana-oss:latest
2. 配置Grafana
访问http://你的IP:3000,用默认用户名密码admin/admin登录,然后修改你自己的密码。
在Plugins页面中找到Zabbix插件并ENABLE这个插件。
结果就是现在有了使用Zabbix作为数据源的选项。
接下来,可以通过添加一个用户到Zabbix 或者添加一个API Token 来供Grafana使用:
当您添加Zabbix数据源时,会要求您添加服务器地址:https://my.domain.com/zabbix/api_jsonrpc.php,以及刚刚创建的登录信息,其他设置保持默认!对于我的测试服务器,我只需要使用我的zabbix-web容器的Docker域名加上端口8080 - http://zabbix-web:8080/api_jsonrpc.php。
向下滚动,点击“保存并测试”来验证是否一切正常。一旦成功连接,就会显示Zabbix的服务器API版本。
然后就可以去Dashboard里面创建dashboard了,以下是示例:
ref: https://grafana.com/docs/grafana/latest/setup-grafana/installation/docker/