Skip to content

2. «Подготовка стенда нагрузочного тестирования»

Notifications You must be signed in to change notification settings

levvolkov/load_testing_stand

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Домашнее задание к лекции 2 «Подготовка стенда нагрузочного тестирования»

Отчет о развертывании системы мониторинга на основе telegraf и influxDB

  • Агенты Telegraf самостоятельно записывают данные в базу.

Сделано:

1. Клонирование проекта:

  • Склонирован проект и открыта папка telegraf в VSCode.
  • В файл docker-compose.yml добавлена строка platform: linux/x86_64, чтобы указать Docker создавать образы для архитектуры x86_64 (необходимо для работы на Apple M1 с архитектурой ARM).
  • Появлявшееся предупреждение о версии в docker-compose.yml удалось устранить путем удаления строки version: '3.8', благодаря чему установлена более новая версия Docker Compose.
    • В версиях Docker Compose 2.0 и выше больше не требуется указывать версию файла, так как композитор теперь автоматически обрабатывает данные. Это упрощает работу и делает файлы конфигурации более понятными.

2. Запуск контейнеров:

  • Запущен Docker-контейнер в фоне:
   docker compose up -d
  • Проверены запущенные контейнеры:
   docker ps

3. Настройка Grafana:

  • В браузере по адресу localhost:3000 введены логин и пароль от Grafana, указанные в docker-compose.yml.
  • Соединена Grafana с базой данных:
    • Путь: Configuration => Data sources => Add data source => InfluxDB.
    • В настройках InfluxDB указано URL: http://influxdb:8086, который взят из блоков links и ports в docker-compose.yml.
    • Проверка соединения с помощью кнопки Test.

4. Импорт Dashboard:

  • Использован готовый Dashboard для анализа данных, найденный по запросу telegraf dashboard grafana.
  • Скопирован ID дашборда и импортирован в Grafana:
    • Путь: Dashboards => Browse => Import => Скопированный ID => Load.

5. Настройка метрик:

  • Настроен мониторинг аппаратных метрик: оперативной памяти, swap, жесткого диска и сети.
  • В конфигурационном файле telegraf.conf в блоке [inputs] добавлен синтаксис для метрик mem, swap, disk, net с официального GitHub Telegraf.
  • Установлен интервал отправки метрик в 60 секунд:
   [agent]
   interval = "60s"

6. Перезапуск контейнеров:

  • Для применения настроек Telegraf выполнен перезапуск контейнеров:
   docker restart <название_контейнера_или_ID>

7. Изменения в файле docker-compose.yml:

  • Для упрощения управления контейнерами добавлен параметр container_name в файл docker-compose.yml, что позволяет задавать собственные имена контейнеров.
  • Важно: После внесения изменений в файл docker-compose.yml, необходимо удалить существующие контейнеры и осуществить перезапуск, выполнив следующие команды:
   docker compose down
   docker compose up -d

8. Скриншот состояния метрик:

  • Сделаны скриншоты интерфейса Grafana, отображающего состояние метрик системы в покое длительностью 15 минут.

9. Завершение работы и удаление контейнеров:

  • Контейнеры остановлены и удалены с помощью команды:
   docker compose down



Отчет о развертывании системы мониторинга на основе node-exporter и Prometheus.

  • Этот проект включает в себя интеграцию базы данных и агента для сбора метрик, использующими технологии node-exporter и Prometheus. Prometheus непосредственно инициирует запросы к node-exporter, который по умолчанию хранит метрики без необходимости дополнительной настройки, как это требуется в Telegraf. Основные настройки проводятся в конфигурационном файле prometheus.yml, где указываются интервалы опроса и список агентов для мониторинга.

Сделано:

1. Клонирование проекта:

  • Открыта папка prometheus в VSCode из склонированного проекта.
  • В файл docker-compose.yml добавлена строка platform: linux/x86_64, чтобы указать Docker создавать образы для архитектуры x86_64 (необходимо для работы на Apple M1 с архитектурой ARM).
  • Для упрощения управления добавлен параметр container_name: в docker-compose.yml для задавания собственных имен контейнеров.
  • Чтобы избежать предупреждение при запуске контейнеров о версии в docker-compose.yml удалена строка version: '3.8'.
    • В версиях Docker Compose 2.0 и выше больше не требуется указывать версию файла, так как композитор теперь автоматически обрабатывает данные. Это упрощает работу и делает файлы конфигурации более понятными.

2. Установлен интервал отправки метрик:

  • В файле prometheus.uml прописан интервал в 36 секунд:
   global:
     scrape_interval:     36s

3. Запуск контейнеров:

  • Запущен Docker-контейнер в фоне:
   docker compose up -d
  • Проверены запущенные контейнеры:
   docker ps

4. Настройка Grafana:

  • В браузере по адресу localhost:3000 введены логин и пароль от Grafana, указанные в docker-compose.yml.
  • Соединена Grafana с базой данных:
    • Путь: Configuration => Data sources => Add data source => Prometheus.
    • В настройках Prometheus указано URL: http://prometheus:9090, который взят из блоков links и ports в docker-compose.yml.
    • Проверка соединения с помощью кнопки Save & test.

5. Импорт Dashboard:

  • Использован готовый Dashboard для анализа данных, взятый с официального на сайта Grafana Labs.
  • Скопирован ID дашборда и импортирован в Grafana:
    • Путь: Dashboards => Browse => Import => Скопированный ID => Load.

6. Скриншот состояния метрики:

  • Сделан скриншот интерфейса Grafana, отображающего состояние метрик системы в покое длительностью 15 минут.




Дополнительная информация

  1. Инструкция по работе систем мониторинга с grafana.
  2. Описание методологии сбора метрик.
  3. Описание моделей мониторинга.
  4. Описание подходов к логированию.
  5. Описание конфигурации тестового стенда.
  6. Подход к созданию тестового стенда.

About

2. «Подготовка стенда нагрузочного тестирования»

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published