С помощью этого руководства вы настроите импорт метрик, архивированных в бакете Object Storage, в VictoriaMetrics, а затем выведете их на дашборд в Grafana.
Вы будете использовать следующие сервисы:
Docker — система контейнеризации.
Docker Compose — инструмент для запуска и управления Docker-контейнерами.
VictoriaMetrics — база данных для хранения и обработки данных в виде временного ряда.
Grafana — платформа для визуализации, мониторинга и анализа данных.
Шаги:
Перед началом работы
-
Если вы уже зарегистрированы, войдите под своей учетной записью.
1. Установите Docker
Установите необходимые зависимости:
sudo apt updatesudo apt install ca-certificates curl gnupg software-properties-commonУстановите ключ GPG:
sudo mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgДобавьте Docker-репозиторий:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullУстановите Docker:
sudo apt updatesudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginЗапустите Docker как службу:
sudo systemctl enable docker # Enable auto-start on bootsudo systemctl start docker # Start Docker immediatelyПроверьте, что Docker запущен:
sudo docker run hello-worldПри проверке появится сообщение c подтверждением успешного запуска.
2. Создайте файлы Docker Compose и Datasource
На этом шаге вы создадите файлы:
docker-compose.yaml — для запуска двух контейнеров: Grafana и VictoriaMetrics.
datasource.yml — для автоматической настройки подключения Grafana к VictoriaMetrics.
Создайте папку со структурой:
.├── docker-compose.yaml├── grafana/│ └── provisioning/│ └── datasources/│ └── datasource.yml└── data/├── grafana/└── victoria-metrics/В файл docker-compose.yaml добавьте данные в виде:
version: '3.8'services:victoriametrics:image: victoriametrics/victoria-metrics:latestports:- "8428:8428"volumes:- ./data/victoria-metrics:/victoria-metrics-datacommand:- "--storageDataPath=/victoria-metrics-data"- "--retentionPeriod=100y" # VictoriaMetrics does not support indefinite retention, but you can specify an arbitrarily high durationgrafana:image: grafana/grafana:latestcontainer_name: grafanaports:- "3000:3000"volumes:- ./data/grafana:/var/lib/grafana- ./grafana/provisioning/datasources:/etc/grafana/provisioning/datasourcesrestart: unless-stoppedВ файл datasource.yml добавьте данные в виде:
apiVersion: 1datasources:- name: Prometheustype: prometheusurl: http://victoriametrics:8428/prometheusaccess: proxyisDefault: trueeditable: true
3. Импортируйте метрики в VictoriaMetrics
На этом шаге вы импортируете метрики, которые скачали из бакета Object Storage, в VictoriaMetrics. Импортировать можно метрики в форматах .gz или .jsonl.
Запрос для импорта метрик:
curl -X POST -H 'Content-Encoding: gzip' http://localhost:8428/api/v1/import -T <filename>.gz
Где filename — имя файла с метриками.
После этого метрики импортируются в VictoriaMetrics, и вы сможете добавить их на дашборд в Grafana.
4. Создайте дашборд в Grafana
На этом этапе вы создадите дашборд для визуализации метрик в Grafana.
Перейдите в Grafana: в адресной строке браузера введите http://localhost:3000/. Логин и пароль по умолчанию: admin/admin.
Создайте новый дашборд в Grafana. В разделе Select data source выберите Prometheus — этот источник мы указывали в файле datasource.yml.
Подробнее о создании дашборда в документации Grafana.
5. Укажите запрос для отображения метрик
На этом этапе с помощью запроса вы укажете, какие метрики нужно вывести на созданный дашборд.
На вкладке Queries выберите источник данных Prometheus.
Укажите запрос — данные, которые нужно вывести на дашборд. Например:
rate(container_cpu_usage_seconds_total[$__rate_interval])Подробнее о запросах в документации Grafana.
Нажмите Back to dashboard, чтобы вернуться к просмотру дашборда. На нем будут отображаться указанные в запросе метрики. Используйте фильтрацию по временному интервалу, чтобы посмотреть данные за нужный период.
Результат
Вы настроили визуализацию метрик, архивированных в бакете Object Storage, в Grafana.
- Перед началом работы
- 1. Установите Docker
- 2. Создайте файлы Docker Compose и Datasource
- 3. Импортируйте метрики в VictoriaMetrics
- 4. Создайте дашборд в Grafana
- 5. Укажите запрос для отображения метрик
- Результат