安装Grafana
目录
Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share dashboards with your team and foster a data-driven culture:
- Visualizations: Fast and flexible client side graphs with a multitude of options. Panel plugins offer many different ways to visualize metrics and logs.
- Dynamic Dashboards: Create dynamic & reusable dashboards with template variables that appear as dropdowns at the top of the dashboard.
- Explore Metrics: Explore your data through ad-hoc queries and dynamic drilldown. Split view and compare different time ranges, queries and data sources side by side.
- Explore Logs: Experience the magic of switching from metrics to logs with preserved label filters. Quickly search through all your logs or streaming them live.
- Alerting: Visually define alert rules for your most important metrics. Grafana will continuously evaluate and send notifications to systems like Slack, PagerDuty, VictorOps, OpsGenie.
- Mixed Data Sources: Mix different data sources in the same graph! You can specify a data source on a per-query basis. This works for even custom datasources.
1 安装Granfana
1.1 下载
wget https://dl.grafana.com/oss/release/grafana-6.5.2.linux-amd64.tar.gz
tar -zxf grafana-6.5.2.linux-amd64.tar.gz
mv grafana-6.5.2 /usr/local/grafana
1.2 创建Grafana服务
cat > /usr/lib/systemd/system/grafana-server.service <<EOF
[Unit]
Description=Grafana
After=network.target
[Service]
Type=notify
ExecStart=/usr/local/grafana/bin/grafana-server -homepath /usr/local/grafana
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
1.3 启动
systemctl enable grafana-server.service
systemctl start grafana-server.service
2 配置数据源
2.0.1 添加数据源
点击 Add data source
,选择Prometheus,在URL输入框键入http://localhost:9090
,点击save & test
,如果出现下图中的绿色提示,则表示配置有效,否则可能是地址或者端口等其他错误,需要自行修改。
2.1 下载模板
下载https://grafana.com/grafana/dashboards/9276或者https://grafana.com/grafana/dashboards/8919
导入模板
效果图
3 配置nginx
添加Nginx配置,proxy_pass后面一定要有"/"(用以去掉/grafana/匹配本身)
server {
listen 80;
server_name localhost;
location /grafana/ {
proxy_pass http://localhost:3000/;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
access_log off;
}
}
修改grafana配置(grafana.ini),需要去掉行前的";"
[server]
domain = 你的域名
root_url = %(protocol)s://%(domain)s/grafana/
4 容器启动
docker run -d \
-p 3000:3000 \
-e TZ=Asia/Shanghai \
-e GF_DATABASE_TYPE=mysql \
-e GF_DATABASE_HOST=127.0.0.1:3306 \
-e GF_DATABASE_NAME=grafana \
-e GF_DATABASE_USER=root \
-e GF_DATABASE_PASSWORD=root \
-e GF_PLUGINS_ENABLE_ALPHA=true \
-e "GF_INSTALL_PLUGINS=grafana-piechart-panel,grafana-simple-json-datasource" \
grafana/grafana
5 配置
Grafana具有默认和自定义配置文件。您可以通过修改自定义配置文件或使用环境变量来自定义 Grafana 实例。
5.1 使用环境变量覆盖配置
不能使用环境变量添加新的配置设置。
GF_<SectionName>_<KeyName>
其中节点名称是括号内的文本。 所有内容都应该被替换为大写。 例如,如果您有以下配置设置:.
-
_
#################################### Database ############################
[database]
# You can configure the database connection by specifying type, host, name, user and password
# as separate properties or as on string using the url property.
# Either "mysql", "postgres" or "sqlite3", it's your choice
type = mysql
host = grafana-mysql:3306
name = grafana
user = root
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
password = 123456
# Use either URL or the previous fields to configure the database
# Example: mysql://user:secret@host:port/database
url = mysql://root:123456@grafana-mysql:3306/grafana
#################################### Server ##############################
[server]
# The public facing domain name used to access grafana from a browser
domain = monitor.example.com
#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
enabled = true
# specify organization name that should be used for unauthenticated users
org_name = Main Org.
# specify role for unauthenticated users
org_role = Viewer
您可以使用以下命令在 Linux 计算机上覆盖它们:
export GF_DATABASE_TYPE=mysql
export GF_DATABASE_HOST=grafana-mysql:3306
export GF_DATABASE_NAME=grafana
export GF_DATABASE_USER=root
export GF_DATABASE_PASSWORD=123456
export GF_SERVER_DOMAIN=monitor.example.com
export GF_AUTH_ANONYMOUS_enabled=true
export GF_AUTH_ANONYMOUS_ORG_NAME=Test.
export GF_AUTH_ANONYMOUS_ORG_ROLE=Viewer