Grafana installation debugging

Install

Requirements

Systems
  • Debian / Ubuntu
  • RPM-based Linux (CentOS, Fedora, OpenSuse, RedHat)
  • macOS
  • Windows
Hardware
  • Minimum recommended memory: 255 MB
  • Minimum recommended CPU: 1
Databases
  • SQLite default
  • MySQL
  • PostgreSQL
Browsers
  • Chrome/Chromium
  • Firefox
  • Safari
  • Microsoft Edge
  • Internet Explorer 11 is only fully supported in Grafana versions prior v6.0.

Binary

Note: The grafana user is created when you installing using Yum or Rpm.

Yum repository
vi /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
yum install grafana
Yum manually
wget https://dl.grafana.com/oss/release/grafana-8.2.1-1.x86_64.rpm
yum install grafana-8.2.1-1.x86_64.rpm
Rpm
yum install initscripts urw-fonts wget
wget https://dl.grafana.com/oss/release/grafana-8.2.1-1.x86_64.rpm
rpm -Uvh grafana-8.2.1-1.x86_64.rpm
Tar
wget https://dl.grafana.com/oss/release/grafana-8.2.1.linux-amd64.tar.gz
tar -zxvf grafana-8.2.1.linux-amd64.tar.gz
Details
  • Installs binary to /usr/sbin/grafana-server
  • Copies init.d script to /etc/init.d/grafana-server
  • Installs default file (environment vars) to /etc/sysconfig/grafana-server
  • Copies configuration file to /etc/grafana/grafana.ini
  • Installs systemd service (if systemd is available) name grafana-server.service
  • The default configuration uses a log file at /var/log/grafana/grafana.log
  • The default configuration specifies an sqlite3 database at /var/lib/grafana/grafana.db

Docker

Pull
docker pull grafana/grafana:8.2.1
Run
docker run -d -p 3000:3000 --name grafana grafana/grafana:<version number>
Plugins

Note: You can install official and community plugins listed on the Grafana plugins page.

https://grafana.com/grafana/plugins/

docker run -d \
  -p 3000:3000 \
  --name=grafana \
  -e "GF_INSTALL_PLUGINS=http://plugin-domain.com/my-custom-plugin.zip;custom-plugin,grafana-clock-panel" \
  grafana/grafana

Note: specify the version of a plugin-e "GF_INSTALL_PLUGINS=grafana-clock-panel 1.0.1".

Build

Note: In the Grafana GitHub repository there is a folder called packaging/docker/custom/, which includes Dockerfile, that can be used to build a custom Grafana image.

cd packaging/docker/custom
docker build \
  --build-arg "GRAFANA_VERSION=latest" \
  --build-arg "GF_INSTALL_PLUGINS=http://plugin-domain.com/my-custom-plugin.zip;custom-plugin,grafana-clock-panel" \
  --build-arg "GF_INSTALL_IMAGE_RENDERER_PLUGIN=true" \
  -t grafana-custom -f Dockerfile .

docker run -d -p 3000:3000 --name=grafana grafana-custom

Note: The Grafana Image Renderer plugin does not currently work if it is installed in a Grafana Docker image.

Kubernetes

updating soon...

Debug

Config

Note: See the official document for configuration instructions.

https://grafana.com/docs/grafana/latest/administration/configuration/

File

Note: Make all configuration changes in either custom.ini or grafana.ini.

  • Default configuration from $WORKING_DIR/conf/defaults.ini
  • Custom configuration from $WORKING_DIR/conf/custom.ini
  • The custom configuration file path can be overridden using the --config parameter

Note: If you installed Grafana using the yum or rpm packages, then your configuration file is located at /etc/grafana/grafana.ini and a separate custom.ini is not used. This path is specified in the Grafana init.d script using --config file parameter.

# common configuration
[paths]
data = data
temp_data_lifetime = 24h
logs = data/log
plugins = data/plugins
provisioning = conf/provisioning

[server]
portocol = http
http_addr =
http_port = 3000
domain = localhost
read_timeout = 0

[database]
type = sqlite3
host = 127.0.0.1:3306
name = grafana
user = root
password =
url =
max_idle_conn = 2
max_open_conn =
conn_max_lifetime = 14400
path = grafana.db

[security]
admin_user = admin
admin_password = admin
cookie_secure = false

[users]
allow_sign_up = false
allow_org_create = false
auto_assign_org = true
auto_assign_org_id = 1
auto_assign_org_role = Viewer
viewers_can_edit = false
editors_can_admin = false
[auth]
login_maximum_inactive_lifetime_duration =
login_maximum_lifetime_duration =

[log]
mode = file
level = info
[log.file]
level =
format = text
log_rotate = true
max_lines = 1000000
max_size_shift = 28
daily_rotate = true
max_days = 7

[quota]
...

Note: See configuration file for detailed descriptions.

Env

file configuration

# default section
instance_name = ${HOSTNAME}

[security]
admin_user = admin

[auth.google]
client_secret = 0ldS3cretKey

[plugin.grafana-image-renderer]
rendering_ignore_https_errors = true

override configuration with env

export GF_DEFAULT_INSTANCE_NAME=my-instance
export GF_SECURITY_ADMIN_USER=owner
export GF_AUTH_GOOGLE_CLIENT_SECRET=newS3cretKey
export GF_PLUGIN_GRAFANA_IMAGE_RENDERER_RENDERING_IGNORE_HTTPS_ERRORS=true

Note: Do not use environment variables to add new configuration settings. Instead, use environmental variables to override existing options.

Docker
Storage
# create a persistent volume for your data in /var/lib/grafana (database and plugins)
docker volume create grafana-storage

# start grafana
docker run -d -p 3000:3000 --name=grafana -v grafana-storage:/var/lib/grafana grafana/grafana
Mounts
mkdir data # creates a folder for your data
ID=$(id -u) # saves your user id in the ID variable

# starts grafana with your user id and using the data folder
docker run -d --user $ID --volume "$PWD/data:/var/lib/grafana" -p 3000:3000 grafana/grafana:7.2.1
Paths
Setting Default value
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

Note: Only be overridden using environment variables.

Logs
# Run Grafana while logging to both standard out and /var/log/grafana/grafana.log
docker run -p 3000:3000 -e "GF_LOG_MODE=console file" grafana/grafana
Secrets

Note: You can do this with any of the configuration options in conf/grafana.ini by setting to the path of the file holding the secret.

  • Admin password secret: /run/secrets/admin_password
  • Environment variable: GF_SECURITY_ADMIN_PASSWORD__FILE=/run/secrets/admin_password

Command

Start
Systemd
systemctl daemon-reload
systemctl start grafana-server
systemctl status grafana-server
systemctl enable grafana-server
Binary
./bin/grafana-server web
Login
  1. Open your web browser and go to http://localhost:3000/.
  2. On the login page, enter admin for username and password.
Reset password
sqlite3 $WORKING_DIR/data/grafana.db
update user set password = '59acf18b94d7eb0694c61e60ce44c110c7a683ac6a8f09580d626f90f4a242000746579358d77dd9e570e83fa24faa88a8a6', salt = 'F3FAxVm33R' where login = 'admin';
.exit
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容