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