Grafana — это инструмент для мониторинга, анализа и визуализации системных данных в реальном времени. Из серии собранных данных мы получим графическую панораму ситуации в компании или организации. Он генерирует графики и информационные панели из базы данных временных рядов (Graphite, InfluxDB или OpenTSDB). Это также позволяет вам делиться ими как снимками с другими пользователями.
В этом руководстве мы узнаем, как установить Grafana 8 на Ubuntu 20.04.
Системные требования
- Сервер Ubuntu 20.04
- Пользователь с правами sudo
- Минимум 255 МБ ОЗУ
- Минимум 01 ЦП
- Поддерживаемая база данных (MySQL, PostgreSQL, SQLite)
- Совместимый браузер с включенным javascript
- Порт 3000 открыт (если вы не используете обратный прокси)
Шаг 1. Установка Grafana в Ubuntu
Grafana отсутствует в репозиториях Ubuntu по умолчанию. Мы добавим официальный репозиторий Grafana для установки. Это гарантирует, что у вас установлена последняя версия.
Установите необходимые пакеты:
$ sudo apt update && sudo apt install -y apt-transport-https software-properties-common wget
Выполните следующие команды, чтобы добавить репозиторий Grafana:
$ sudo wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add - $ echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
Обновите кэш репозиториев и установите Grafana:
$ sudo apt update && sudo apt install grafana
Вы можете проверить установленную версию для получения дополнительной информации
$ grafana-server -v
Version 8.2.3 (commit: fb85ed6912, branch: HEAD)
Вывод показывает, что Grafana версии 8.2 установлена.
Теперь включите службу при запуске, чтобы при перезагрузке сервера он также запускался автоматически.
$ sudo systemctl enable grafana-server
Synchronizing state of grafana-server.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable grafana-server Created symlink /etc/systemd/system/multi-user.target.wants/grafana-server.service → /lib/systemd/system/grafana-server.service.
Для правильной работы Grafana необходимо запустить сервис
$ sudo systemctl start grafana-server
Шаг 2: обратный прокси Nginx для Grafana
Поскольку мы хотели бы получить к нему доступ через доменное имя (или поддомен), мы будем использовать обратный прокси-сервер, который будет перенаправлять связь с Grafana на сервере. Итак, мы собираемся установить Nginx и добавить сертификат для обработки всех внешних запросов Grafana.
Grafana обычно работает на порту 3000. Это означает, что вам нужно открыть порт на брандмауэре и получить к нему доступ по IP-адресу и порту.
В нашей конфигурации мы будем использовать Nginx в качестве обратного прокси для прослушивания запроса на порте 80/443.
$ sudo apt install nginx
Поскольку нам нужно защитить связь, мы скопируем сертификат.
$ sudo cp grafana.domain.com.crt /etc/nginx/certs/grafana.domain.com.crt
Затем скопируйте ключ сертификата
$ sudo cp grafana.domain.com.key /etc/nginx/certs/grafana.domain.com.key
Поскольку это наша первая конфигурация, нам нужно деактивировать конфигурацию по умолчанию, чтобы избежать возможных конфликтов.
$ sudo rm /etc/nginx/sites-enabled/default
Пришло время установить файл конфигурации для Grafana. Вам необходимо правильно указать, где находятся ваш сертификат и файлы ключей. Кроме того, по умолчанию Nginx перенаправляет весь трафик с порта 80 на безопасный канал на порт 443.
$ sudo vim /etc/nginx/sites-available/jenkins.conf
Server { server_name grafana.websitefortesting.com; listen 80 ; access_log /var/log/nginx/grafana.log; return 301 https://$host$request_uri; } server { server_name grafana.websitefortesting.com; listen 443 ssl http2 ; access_log /var/log/nginx/grafana.log; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES"; ssl_prefer_server_ciphers on; ssl_session_timeout 5m; ssl_certificate /etc/nginx/certs/grafana.websitefortesting.com.crt; ssl_certificate_key /etc/nginx/certs/grafana.websitefortesting.com.key; add_header Strict-Transport-Security "max-age=31536000"; location / { proxy_pass http://localhost:3000; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Теперь нам нужно активировать конфигурацию, создав мягкую ссылку на файл конфигурации в папке /etc/nginx/site-enabled.
$ sudo ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/grafana.conf
Вы можете проверить правильность конфигурации Nginx
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Затем нам нужно перезапустить сервис Nginx, чтобы учесть все изменения.
$ sudo systemctl restart nginx
Шаг 3: доступ к Grafana
Теперь, когда установка и настройка Grafana завершены, мы можем получить к нему доступ. Для этого вам необходимо открыть браузер и ввести URL-адрес вашего сервера Grafana http://grafana.domain.com.
Имя пользователя и пароль по умолчанию — admin. После этого вам будет предложено изменить пароль по умолчанию.
Это позволит вам получить доступ прямо к вашей панели управления.
Теперь вы можете приступить к работе над своей Grafana и все настроить. Вы можете взглянуть на официальную документацию, если вам нужны какие-то руководства для вашей конфигурации.