共计 6559 个字符,预计需要花费 17 分钟才能阅读完成。
grafana 简介
Grafana 是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询、分析、可视化处理以及配置告警。
- Grafana 支持的数据源:
- 官方:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,MySQL 等;
- 插件:open-falcon、zabbix…
CentOS 7.3 安装 Grafana 6.0
yum 安装
$ yum install -y https://dl.grafana.com/oss/release/grafana-6.0.2-1.x86_64.rpm
启动 Grafana
systemctl start grafana-server | |
systemctl enable grafana-server |
启动后可以直接在浏览器访问:http://ip:3000
Grafana 文件结构
- 日志文件:
/var/log/grafana
- 数据文件:
/var/lib/grafana/grafana.db
默认为 sqlite3 数据库,也可以使用 mysql、postgres,配置方法 (Tips:升级前要备份数据文件)。 - 配置文件:
/etc/grafana/grafana.ini
配置 Grafana
Note:更改 Grafana 配置文件后需要重启 Grafana 服务生效。
配置文件中以 ;
开头的行为注释行。
paths
instance_name = TEST_ENV | |
[ | ]|
;data = /var/lib/grafana | |
;temp_data_lifetime = 24h | |
;logs = /var/log/grafana | |
;plugins = /var/lib/grafana/plugins | |
;provisioning = conf/provisioning |
server
[ | ]|
;protocol = http | |
;http_addr = localhost | |
;http_port = 3000 | |
;domain = localhost | |
;enforce_domain = false | |
;root_url = http://localhost:3000 # 这是一个 web 上访问 grafana 的全路径 url,默认是 %(protocol)s://%(domain)s:%(http_port)s/ | |
;router_logging = false | |
;static_root_path = public | |
;enable_gzip = false | |
;cert_file = | |
;cert_key = | |
;socket = /tmp/grafana.sock |
database
[database] | |
;type = sqlite3 # 数据库可以是 mysql、postgres、sqlite3,默认是 sqlite3 | |
;host = 127.0.0.1:3306 # 只是 mysql、postgres 需要,默认是 127.0.0.1:3306 | |
;name = grafana # grafana 的数据库名称,默认是 grafana | |
;user = root # 数据库用户名 | |
;password = # 数据库密码 | |
;url = # 使用 URL 配置数据库 | |
;ssl_mode = disable # mysql、postgres 使用 | |
;path = grafana.db # 只是 sqlite3 需要,定义 sqlite3 的存储路径 |
session
[ | ]|
;provider = file | |
;provider_config = sessions | |
;cookie_name = grafana_sess | |
;cookie_secure = false | |
;session_life_time = 86400 |
log
[ | ]|
;mode = console file | |
;level = info | |
;filters = | |
[ | ]|
;level = | |
;format = console | |
[ | ]|
;level = | |
;format = text | |
;log_rotate = true | |
;max_lines = 1000000 | |
;max_size_shift = 28 | |
;daily_rotate = true | |
;max_days = 7 |
security
[security] | |
;admin_user = admin # 管理员用户,启动时创建 | |
;admin_password = admin # 管理员密码,首次启动前可更改或在配置文件设定 | |
;secret_key = SW2YcwTIb9zpOOhoPsMm # 加密 | |
;disable_gravatar =www.honghgjpt.com false # 禁用 gravatar 图片文件 | |
;data_source_proxy_whitelist = # 数据源代理白名单,ip_or_domain:port,多个用空格分隔 | |
;disable_brute_force_login_protection = false # 禁止暴力破解 | |
;cookie_secure = false # 如果使用 https,设置为 true,默认为 false | |
# set cookie SameSite attribute. defaults to `lax`. can be set to "lax", "strict" and "none" | |
;cookie_samesite = lax # 设置同意站点 cookie 相同,防止跨域攻击,可以设置为 "lax", "strict" and "none" |
dashboards
;versions_to_keep = 20 # 可保持会话个数
users
[ | ]|
;allow_sign_up = true | |
;allow_org_create = true | |
;auto_assign_org = true | |
;auto_assign_org_role = Viewer | |
;login_hint = email or username | |
;default_theme = dark | |
[ | ]|
;disable_login_form = false |
auth
[ | ]|
;login_cookie_name = grafana_session | |
;login_maximum_inactive_lifetime_www.tiaotiaoylzc.com days = 7 | |
;login_maximum_lifetime_days = 30 | |
;token_rotation_interval_minutes = 10 | |
[ | ]|
;enabled = false |
auth.basic
[ | ]|
;enabled = true |
auth.proxy
[auth.proxy] # 允许你在一个 HTTP 反向代理上进行认证设置 | |
;enabled = false | |
;header_name = X-WEBAUTH-USER | |
;header_property =www.meiwanyule.cn username | |
;auto_sign_up = true # 默认是 true。开启自动注册,如果用户在 grafana DB 中不存在 | |
;ldap_sync_ttl = 60 | |
;whitelist = 192.168.1.1, 192.168.2.1 # 白名单 |
auth.ldap
[ | ]|
;enabled = false | |
;config_file = /etc/grafana/ldap.toml | |
;allow_sign_up = true |
alerting
[alerting] | |
enabled = true # 设置为 false 以禁用警报引擎,并从 UI 中隐藏警报 | |
execute_alerts = true # 是否执行报警规则 |
analytics
[ | ]|
reporting_enabled www.yongshi123.cn= true | |
check_for_updates = true | |
google_analytics_ua_id = |
smtp
[smtp] | |
;enabled = false # 是否开启 | |
;host = localhost:25 # ip 和端口 | |
;user = | |
;password = | |
;cert_file = | |
;key_file = | |
;skip_verify = false | |
;from_address = admin@grafana.localhost # 发送邮箱名 | |
;from_name = Grafana # 发送人 |
Grafana 用 mysql 做数据源
-
创建数据库及账号
mysql> create database grafana DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; mysql> GRANT ALL ON grafana.* TO www.michenggw.com'grafana'@'127.0.0.1' IDENTIFIED BY 'grafana'; -
修改 database 配置文件
[database] type = mysql host = 127.0.0.1:3306 name = grafana user = grafana password = grafana -
确保 session 表存在
mysql> show tables like www.xycheng178.com'session%'; mysql> desc session; +--------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+----------+------+-----+---------+-------+ | key | char(16) | NO | PRI | NULL | | | data | blob | NO | | NULL | | | expiry | int(255) | NO | | NULL | | +--------+----------+------+-----+---------+-------+ 3 rows in set (0.01 sec) # 如果 session 表不存在,需要手动创建 mysql> CREATE TABLE `session` (`key` CHAR(16) NOT NULL, `data` BLOB, `expiry` INT(255) UNSIGNED NOT NULL, PRIMARY KEY (`key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -
修改 session 配置
[session] provider = mysql provider_config = grafana:grafana@tcp(127.0.0.1:3306)/grafana cookie_name = grafana_sess cookie_secure = false session_life_time = 8640
使用 Grafana
完成上述配置后登陆 Grafana,默认管理员用户——admin,默认管理员密码——admin,首次登陆需要更改管理员密码!
添加数据源
以 MySQL 为例添加数据源,Configuration——DataSource——Add data source——MySQL。注意,只对数据源用户授权 select 权限,且保证最小授权原则,eg:
mysql> CREATE USER 'grafanaReader'@'localhost' IDENTIFIED BY 'grafana'; | |
mysql> GRANT SELECT ON grafana.* TO www.dasheng178.com 'grafanaReader'; |
配置参考:http://docs.grafana.org/features/datasources/mysql/
grafana+zabbix 插件
安装插件:Configuration——Plugins——”Find More Plugins on Grafana.com”——zabbix
查看远程可用插件
$ grafana-cli plugins list-remote | |
id: abhisant-druid-datasource version: 0.0.5 | |
id: agenty-flowcharting-panel www.shengbangyule178.cn version: 0.2.0 | |
id: akumuli-datasource version: 1.2.8 | |
id: alexanderzobnin-zabbix-app version: 3.10.1 | |
... |
安装插件
$ grafana-cli plugins install alexanderzobnin-zabbix-app
查看已安装的插件
$ grafana-cli plugins ls | |
installed plugins: | |
alexanderzobnin-zabbix-app @ 3.10.1 | |
Restart grafana after installing plugins . <service grafana-server restart> |
安装完成后需要重启 Grafana 服务使生效:
$ systemctl restart grafana-server
登陆 web 管理界面后需要启用插件,Configuration——Plugins——zabbix——Enable。
添加 zabbix DataSource
Configuration——DataSource——Add DataSource——zabbix——dashboard——import 数据
:
正文完
星哥玩云-微信公众号
