參考連接(感謝分享):
http://docs.grafana.org/v2.0/installation/
https://github.com/alexanderzobnin/grafana-zabbix/wiki/Installation
http://itnihao.blog.51cto.com/1741976/1675178php
需求:
· grafana版本要和grafana-zabbix版本對應,避免異常
· 更新時,須要二者同步更新html
1. CentOS安裝grafana(rpm)git
# wget https://grafanarel.s3.amazonaws.com/builds/grafana-2.5.0-1.x86_64.rpm # rpm -ivh grafana-2.5.0-1.x86_64.rpm #或者直接使用 # yum install https://grafanarel.s3.amazonaws.com/builds/grafana-2.5.0-1.x86_64.rpm
· 環境變量:/etc/sysconfig/grafana-server
· 配置文件:/etc/grafana/grafana.ini
· 日誌文件:/var/log/grafana/grafana.log
· systemd服務:grafana-server.service
· sqlite3數據庫:/var/lib/grafana/grafana.db
· grafana安裝目錄:/usr/share/grafana
服務詳情
· 啓動用戶:grafana
· 服務名稱:grafana-server
· 默認端口:3000
· 帳號:admin
· 密碼:admingithub
1.1 yum安裝sql
# vim /etc/yum.repos.d/grafana.repo [grafana] name=grafana baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch #穩定版 #baseurl=https://packagecloud.io/grafana/testing/el/6/$basearch #最新版(beta) repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt
啓動服務/開機自啓數據庫
C6# service grafana-server start C6# chkconfig --add grafana-server C6# chkconfig grafana-server on C7# systemctl daemon-reload C7# systemctl start grafana-server C7# systemctl enable grafana-server.service
查看狀態json
C7# systemctl status grafana-server
1.2 升級vim
# yum install initscripts fontconfig # rpm -Uvh grafana-3.1.0-1468321182.x86_64.rpm
2. 安裝grafana-zabbix插件api
# wget https://github.com/alexanderzobnin/grafana-zabbix/archive/v2.5.1.tar.gz # tar xzf v2.5.1.tar.gz # cp -r grafana-zabbix-2.5.1/zabbix /usr/share/grafana/public/app/plugins/datasource/ # cd /usr/share/grafana/public/app/plugins/datasource/zabbix # vim plugin.json { "pluginType": "datasource", "name": "Zabbix", "type": "zabbix", "serviceName": "ZabbixAPIDatasource", "module": "app/plugins/datasource/zabbix/datasource", "partials": { "config": "app/plugins/datasource/zabbix/partials/config.html" }, # 追加"username"和"password"內容。用戶並不是必定是管理員,只要有可讀權限便可。 "username": "Admin", "password": "zabbix", "metrics": true, "annotations": true }
測試用戶/密碼是否正確跨域
# curl -i -X POST -H 'Content-Type:application/json' -d '{"jsonrpc": "2.0","method":"user.authenticate","params":{"user":"Admin","password":"zabbix"},"auth": null,"id":0}' http://127.0.0.1/api_jsonrpc.php
修改Zabbix的API文件,因爲Zabbix2.2不支持跨域的問題,故添加如下配置:(2.4之後無需配置)
require_once dirname(__FILE__).'/include/func.inc.php'; require_once dirname(__FILE__).'/include/classes/core/CHttpRequest.php';
在上面兩行前新增
# vim <wwwroot>/zabbix/api_jsonrpc.php header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Headers: Content-Type'); header('Access-Control-Allow-Methods: POST'); header('Access-Control-Max-Age: 1000'); if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') { return; }