Установка grafana в Unix/Linux

Установка grafana в Unix/Linux

Grafana — утилита, которая чаще всего используется для визуализации временных рядов данных для интернет-инфраструктуры и приложений, но многие аналитики использовать его в других областях, включая промышленные датчики, домашней автоматизации, погода, и управления технологическими процессами. Данная утилита позволяет легко расширять различные панели, в том числе полнофункциональный граф панелей с широкими возможностями визуализации.

Grafana — является ПО с открытым исходным кодом и является многофункциональной панелью с метрикой и графическим редактором для Graphite, Elasticsearch, OpenTSDB, Prometheus и InfluxDB.

Установка grafana в Unix/Linux

Установка производится на различные Unix/Linux ОС. И я сейчас расскажу как можно выполнить установку.

Установка grafana в Debian/Ubuntu

Установка довольно простая, ничего сложного в ней нет.

-=== СПОСОБ 1 ===-

Можно выполнить установку, скачав deb файл:

$ cd /usr/local/src && wget https://grafanarel.s3.amazonaws.com/builds/grafana_4.1.2-1486989747_amd64.deb

Устанавливаем дополнительное ПО:

# apt-get install -y adduser libfontconfig

Выполняем установку пакета:

# dpkg -i grafana_4.1.2-1486989747_amd64.deb

Нужно настроить некоторые параметры в:

# vim  /etc/grafana/grafana.ini

И, запускаем:

# systemctl start grafana-server

-=== СПОСОБ 2 ===-

Так же, можно выполнить установку через APT репозиторий. Для начала, нужно его добавить.

Открываем лист репозитория:

# vim /etc/apt/sources.list

и прописываем:

deb https://packagecloud.io/grafana/stable/debian/ jessie main

Используйте данный репозиторий для Ubuntu и других Debian-оподобных ОС. Идем далее, добавляем ключ:

$ curl https://packagecloud.io/gpg.key | sudo apt-key add -

Обновляем репозиторий:

$ sudo apt-get update -y

Производим установку графана:

$ sudo apt-get install grafana -y

На некоторых старых версиях Ubuntu и Debian вам может понадобиться установить пакет:

$ sudo apt-get install -y apt-transport-https

Детали установки:

  • Устанавливает бинарник в —  /usr/sbin/grafana-server
  • Устанавливает Init.d скрипт в — /etc/init.d/grafana-server
  • Создает стандартный конфиг-файл (environment переменные) в — /etc/default/grafana-server
  • Устанавливает конфигурационный файл в — /etc/grafana/grafana.ini
  • Устанавливает systemd службу (если systemd доступна) с именем — grafana-server.service
  • Конфигурация по умолчанию устанавливает лог-файл в — /var/log/grafana/grafana.log
  • Конфигурация по умолчанию определяет sqlite3 ДБ в — /var/lib/grafana/grafana.db

Запуск службы grafana

Если имеется init.d служба, то запустить Grafana можно следующим образом:

# service grafana-server start

Чтобы добавить Grafana в автозагрузку ОС в через init.d службу, используйте команду:

$ sudo update-rc.d grafana-server defaults

Если имеется systemd служба, то запустить Grafana можно следующим образом:

$ systemctl start grafana-server

Перезапустить демон:

$ systemctl daemon-reload

Проверить статус:

$ systemctl status grafana-server

Чтобы добавить Grafana в автозагрузку ОС в через systemd службу, используйте команду:

sudo systemctl enable grafana-server.service

Открываем браузер, вводим localhost:9000 и вводим логин и пароль ( admin), после чего попадаем в дашборд.

PS: Порт 9000 — это стандартный порт.

Установка grafana в CentOS/Fedora/RedHat

Установка довольно простая, ничего сложного в ней нет.

-=== СПОСОБ 1 ===-

# yum install https://grafanarel.s3.amazonaws.com/builds/grafana-4.1.2-1486989747.x86_64.rpm

Нужно настроить некоторые параметры в:

# vim /etc/grafana/grafana.ini

И, запускаем (CentOS 7/RHEL 7):

# systemctl start grafana-server

Или (CentOS 5-6/RedHat 5-6):

# service grafana-server start

Можно запустить установку через rpm в ручном режиме. Для этого, устанавливаем некоторое ПО:

$ sudo yum install initscripts fontconfig

И выполняем установку:

$ sudo rpm -Uvh grafana-4.1.2-1486989747.x86_64.rpm

-=== СПОСОБ 2 ===-

Так же, можно выполнить установку через добавление YUM репозитория:

# vim /etc/yum.repos.d/grafana.repo

Добавляем:

[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch
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

Или, можно сделать это с помощью следующей команды:

# echo '[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch
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' > /etc/yum.repos.d/grafana.repo

Так же, можно прописать для 7-й CentOS-е — нужно заменить цифру в строке baseurl.

Выполняем установку Grafana:

# yum install grafana -y

Детали установки:

  • Устанавливает бинарник в — /usr/sbin/grafana-server
  • Устанавливает Init.d скрипт в — /etc/init.d/grafana-server
  • Создает стандартный конфиг-файл (environment переменные) в — /etc/sysconfig/grafana-server
  • Устанавливает конфигурационный файл в — /etc/grafana/grafana.ini
  • Устанавливает systemd службу (если systemd доступна) с именем — grafana-server.service
  • Конфигурация по умолчанию устанавливает лог-файл в — /var/log/grafana/grafana.log
  • Конфигурация по умолчанию определяет sqlite3 ДБ в — /var/lib/grafana/grafana.db

Запуск службы grafana

Если имеется init.d служба, то запустить Grafana можно следующим образом:

# service grafana-server start

Чтобы добавить Grafana в автозагрузку ОС в через init.d службу, используйте команду:

# /sbin/chkconfig --add grafana-server

Если имеется systemd служба, то запустить Grafana можно следующим образом:

$ systemctl start grafana-server

Перезапустить демон:

$ systemctl daemon-reload

Проверить статус:

$ systemctl status grafana-server

Чтобы добавить Grafana в автозагрузку ОС в через systemd службу, используйте команду:

# systemctl enable grafana-server.service

Открываем браузер, вводим localhost:3000 и вводим логин и пароль ( admin), почле чего попадаем в дашборд.

PS: Порт 3000 — это стандартный порт.

Если изображение отсутствует, то необходимо выполнить установку пакетов со шрифтами:

# yum install fontconfig freetype* urw-fonts -y

Установка grafana в Mac OS X

Для начала устанавливаем HOMEBREW: Установка HOMEBREW на Mac OS X и выполняем обновление всех пакетов:

$ brew update

Далее, устанавливаем grafana:

$ brew install grafana

Для обновления используйте команду:

$ brew update && brew reinstall grafana && brew install grafana

Установка grafana для других Unix/Linux ОС

Использовать докер-контейнер. Но для начала нужно установить его, вот полезное чтиво :

Работа с docker + docker-compose в Unix/Linux

Установка Docker на Debian/Ubuntu

Установка Docker на CentOS/RedHat/Fedora

Установка Vagrant в Unix/Linux

Запуск Grafana контейнера

Чтобы запустить контейнер на внешнем порту ( в моем примере — 3000), используйте:

$ docker run -d --name=grafana -p 3000:3000 grafana/grafana

Попробуйте, использовать admin/admin. Где admin — это пользователь и его пароль.

Настройка Grafana контейнера

Все параметры, определенные в conf/grafana.ini и могут быть переопределены с помощью переменной среды, используя синтаксис — GF_<SectionName>_<KeyName>. Для примера:

$ docker run \
-d \
-p 3000:3000 \
--name=grafana \
-e "GF_SERVER_ROOT_URL=http://grafana.server.name" \
-e "GF_SECURITY_ADMIN_PASSWORD=secret" \
grafana/grafana

Для более подробной настройки — используйте основной сайт.

Grafana контейнер с постоянным хранением (рекомендуется)

Создаем волюму /var/lib/grafana для постоянного хранилища:

$ docker run -d -v /var/lib/grafana --name grafana-storage busybox:latest

Запускаем grafana:

$ docker run \
-d \
-p 3000:3000 \
--name=grafana \
--volumes-from grafana-storage \
grafana/grafana

Устновка плагинов (plugins) для Grafana 3

Передайте плагины, которые вы хотите установить в докере с помощью GF_INSTALL_PLUGINS переменного окружения в виде списка (разделенными запятыми).

Например:

$ docker run \
-d \
-p 3000:3000 \
--name=grafana \
-e "GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource" \
grafana/grafana

Запускаем контейнер с Grafana определенной версии:

$ docker run \
-d \
-p 3000:3000 \
--name grafana \
grafana/grafana:2.6.0

Настройка учетных данных AWS для поддержки CloudWatch:

$ docker run \
-d \
-p 3000:3000 \
--name=grafana \
-e "GF_AWS_PROFILES=default" \
-e "GF_AWS_default_ACCESS_KEY_ID=YOUR_ACCESS_KEY" \
-e "GF_AWS_default_SECRET_ACCESS_KEY=YOUR_SECRET_KEY" \
-e "GF_AWS_default_REGION=us-east-1" \
grafana/grafana

Вы также можете указать несколько профилей для GF_AWS_PROFILES (например —  GF_AWS_PROFILES=default another).

Поддерживаемые переменные:

GF_AWS_${profile}_ACCESS_KEY_ID: AWS access key ID (required).
GF_AWS_${profile}_SECRET_ACCESS_KEY: AWS secret access key (required).
GF_AWS_${profile}_REGION: AWS region (optional).

Хочу отметить то, что имеется ряд плейбуков на Ansible, Chef, Puppet  и их можно использовать для установки графаны. У меня не было необходимости в таком использовании, по этому — я не описывал их. Со временем, я поправлю данную статью ( по мере необходимости) и расскажу как можно использовать.

Настройка grafana в Unix/Linux

Установленная grafana, будет работать — http://your_host_or_IP:3000, например как это можно видеть у меня:

Первый вход в grafana

Первый вход в grafana

Вводим логин и пароль ( для первого входа используйте admin/admin) и попадаем в дашборд. Его нужно настроить под себя. Для примера, я создам проект c Prometheus и построю ( добавлю) графики. И так, нажимаем на «Data Sources» и добавляем ( заполняем) строки, у меня это выглядит так:

Добавление Prometeus в Grafana

Добавление Prometeus в Grafana

Как все заполнили, нажимаем на «Add». Собственно потом добавляем график и все!

PS: Но для этого нужно иметь уже установленный protheus сервер.

Настройка прокси-сервера для Grafana

Использовать 3000-й порт, — это нормально, но удобно юзать 80-й/443-й и для этого я буду использовать nginx в качестве прокси сервера. Установка описана вот тут:

Установка PHP 7(php-fpm) с nginx 1.9 в Debian 8

Установка Nginx, PHP-FPM, MariaDB на CentOS 7 / RHEL 7

Открываем конфиг:

# vim /etc/nginx/conf.d/grafana.conf

И прописываем:

server {
 	listen 80;
 	server_name grafana.local;
 	access_log /var/log/nginx/access-grafana.log;
 	error_log /var/log/nginx/error-frafana.log info;
	location / {
		#proxy_set_header X-WEBAUTH-USER $remote_user;
		proxy_pass http://127.0.0.1:3000;
		proxy_http_version 1.1;
		proxy_set_header Upgrade $http_upgrade;
        	proxy_set_header Connection 'upgrade';
		proxy_set_header   Host $host;
		proxy_cache_bypass $http_upgrade;
		proxy_set_header   X-Real-IP        $remote_addr;
            	proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
		proxy_max_temp_file_size 0;
		}
}

Вот и вся установка. Перезапускаем nginx + grafana.

Установка плагинов для  grafana

Самый простой способ установки плагинов — использовать grafana-cli который идет в комплекте с grafana. После внесения любых изменений (добавления, удаление плагинов), необходимо перезапустить grafana-server.

Все установленные плагины лежат в /var/lib/grafana/plugins. Можно переопределить каталог в котором будет работать grafana-cli, указав флаг «-pluginsDir».

И так, чтобы посмотреть список доступных плагинов, используйте команду:

$ grafana-cli plugins list-remote

Установите последнюю версию плагина:

$ grafana-cli plugins install <plugin-id>

Чтобы установить конкретную версию определенного плагина, используйте:

$ grafana-cli plugins install <plugin-id> <version>

Чтобы просмотреть какие плагины уже установлены, выполните:

$ grafana-cli plugins ls

Обновить все установленные плагины можно так:

$ grafana-cli plugins update-all

Или, если нужно обновить конкретный, то используйте:

$ grafana-cli plugins update <plugin-id>

Чтобы удалить определенный плагин, используйте следующую команду:

$ grafana-cli plugins remove <plugin-id>

На этом у меня все, статья «Установка grafana в Unix/Linux» завершена.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.