Skip to content

Grafana

Grafana 是瑞典程序员 Torkel Ödegaard 开发的开源数据可视化与监控平台,首个版本于 2014 年发布,使用 AGPL-3.0 许可;
Torkel 随后成立 Grafana Labs 美国公司将 Grafana 项目和相关技术商业化并主导后续开发。

安装

容器安装

shell
docker pull grafana/grafana-oss:11.6.0-ubuntu

export GF_PATHS_DATA=$HOME/v/data/grafana
mkdir -p $GF_PATHS_DATA

export GF_PATHS_LOGS=$HOME/v/log/grafana
mkdir -p $GF_PATHS_LOGS

export GF_PATHS_CONFIG_PARENT=$HOME/v/etc/grafana
mkdir -p $GF_PATHS_CONFIG_PARENT


chmod -R 777 $GF_PATHS_DATA $GF_PATHS_LOGS

#
# dump original configuration then modify it
#
docker run \
-it \
--rm \
-p 3000:3000 \
--name=grafana \
grafana/grafana-oss:11.6.0-ubuntu

test -f $GF_PATHS_CONFIG_PARENT/grafana.ini || \
docker exec -it grafana cat /etc/grafana/grafana.ini > $GF_PATHS_CONFIG_PARENT/grafana.ini

#
# or create it from scratch
#
cat << EOF > $GF_PATHS_CONFIG_PARENT/grafana.ini
app_mode = production

[paths]
data = /data/g
logs = /data/log/grafana

...
EOF

docker run \
-d \
--restart unless-stopped \
-p 3000:3000 \
--name=grafana \
-v $GF_PATHS_DATA:/var/lib/grafana \
-v $GF_PATHS_LOGS:/var/log/grafana \
-v $GF_PATHS_CONFIG_PARENT/grafana.ini:/etc/grafana/grafana.ini \
grafana/grafana-oss:11.6.0-ubuntu

macOS 二进制安装

shell
curl -O https://dl.grafana.com/oss/release/grafana-11.6.0.darwin-amd64.tar.gz
tar -zxvf grafana-11.6.0.darwin-amd64.tar.gz
cd grafana-v11.6.0
./bin/grafana server --config conf/defaults.ini

默认路径相关配置

  • 容器环境只能通过覆盖环境变量来自定义 ;
  • 非容器环境可通过修改主配置文件 conf/grafana.ini 来自定义 ;
shell
GF_PATHS_CONFIG=/etc/grafana/grafana.ini
GF_PATHS_DATA=/var/lib/grafana
GF_PATHS_HOME=/usr/share/grafana
GF_PATHS_LOGS=/var/log/grafana
GF_PATHS_PLUGINS=/var/lib/grafana/plugins
GF_PATHS_PROVISIONING=/etc/grafana/provisioning

常用配置

自定义域名和使用 HTTPS

一些 SaaS 提供 免费域名 SSL 证书,以 Cloudflare 为例

  • SSL/TLS - Origin Sever - Create Certificate, save two files foo.pem and foo.key
  • Rules - Configuration Rules, Create rule, SSL(optional) - Select SSL/TLS encryption mode - Full

https://grafana.com/docs/grafana/latest/setup-grafana/set-up-https/

Released under the CC-BY-NC-4.0