Рубрики
Uncategorized

Мониторинг контейнера Docker с NetData

2020-02-26 — Джоэл Ганс Правильно мониторинг здоровья и производительности контейнеров Docker является Ess … Помечено с Docker, Linux, Node, Devops.

2020-02-26 — Джоэл Ханс

Правильно мониторинг здоровья и производительности контейнеров Docker является важным навыком для сольных разработчиков и крупных команд. Поскольку ваша инфраструктура растет в сложности, важно оптимизировать каждый аспект производительности ваших приложений/услуг. Кроме того, важно, чтобы инструменты, которые вы используете для принятия этих решений по производительности, работают через команды, и обеспечивают сложные архитектуры масштабирования.

NetData делает все это, и благодаря нашему коллектору контейнеров Docker, теперь вы можете отслеживать здоровье и производительность ваших контейнеров Docker в режиме реального времени.

С помощью мониторинга контейнера Docker включен через CGroups, вы получаете в режиме реального времени, интерактивные диаграммы, показывающие клавишу CPU, память, диск ввода/вывода и сети целых контейнеров. Кроме того, вы можете использовать другие коллекторы для мониторинга конкретных приложений или услуг, работающих внутри Контейнеры докера.

С этими учетами на контуру под рукой вы можете получить мгновенные уведомления об отключении, производительности Hiccups или чрезмерного использования ресурсов, визуально идентифицируют аномалию и исправить корневую причину.

Что такое Docker?

Докер Является платформой виртуализации, которая помогает разработчикам развернуть программное обеспечение в воспроизводимых и изолированных пакетах, называемых контейнерами. Эти контейнеры имеют все, что необходимо правильно запустить программное обеспечение, включая библиотеки, инструменты и исходный код их приложения. И поскольку эти пакеты содержат все необходимое приложения, он работает Везде , изолирующие проблемы, где код работает в тестировании, но не добыча.

Контейнеры Docker — популярная платформа для распространения программного обеспечения через Docker Hub , как мы делаем для Сама NetData Отказ Но, возможно, более важно, контейнеры в настоящее время являются «оправданными» с такими программами, как Docker Compose и платформы, как Кубернеты и Докер Рой Отказ Exposs Teams также используют контейнеры для Orchestrate их микросервисов архитектуры, что делает их фундаментальными компонентами масштабируемых развертываний.

Как Netdata мониторы докеров контейнеров

NetData использует контрольные группы — чаще всего называется cgroups — Мониторинг контейнеров докеров. CGroups — это функция ядра Linux, которая ограничивает и отслеживает использование ресурсов набора процессов. Когда вы объедините ограничения ресурсов с процессовой изоляцией (спасибо, пространствам имен!) Вы получаете то, что мы обычно называем контейнерами.

Linux использует виртуальные файлы, обычно размещенные в /sys/fs/cgroup/ , сообщать о существующих контейнерах и их использовании ресурсов. NetData Сканирует эти файлы/каталоги каждые несколько секунд (настраивается через Проверка новых cgroups каждый в netdata.conf ), чтобы найти добавленные или удаленные cgroups.

Лучшая часть о мониторинге контейнеров докеров с NetData — это то, что это нулевая конфигурация. Если у вас есть контейнеры Docker, работающие при установке NetData, он автоматически обнаруживает их и начнет мониторинг их метрик. Если вы раскрутите докеровские контейнеры после Установка NetData, перезапустите его с помощью Sudo Service NetData Перезагрузите или Подходящий вариант для вашей системы , а ты будешь набежать!

Узнайте больше о Collector NetData Cogroup в нашем Документация Отказ

Просмотр много контейнеров A-A-Glant

NetData Auto-обнаруживает управление контейнерами и автоматически заполняет правое меню со своими идентификаторами или именами контейнера, основанные на конфигурации вашей системы. Этот интерфейс расширяется до любого количества контейнеров Docker, которые вы хотите отслеживать с NetData, будь то 1, 100 или 1000.

NetData также использует его Значительная презентация Чтобы организовать CPU и диаграммы памяти в семьи, чтобы вы могли быстро понять, какие контейнеры используют максимальную процессор, память, диск ввода/вывода или сетевой процессоры и начните соотношение того, что с другими метриками из вашей системы.

Получить сигнал тревоги, когда контейнеры идут

NetData поставляется с предварительно настроенным процессором и аварийными сигналами CPU и памяти для каждого бегового контейнера докера. После того, как NetData Auto-обнаруживает контейнер Docker, он инициализирует три аварийных сигнала: использование RAM, использование RAM + SWAP и использование CPU для CPUP. Эти аварийные сигналы рассчитывают свое использование на основе ограничений Cgroup, которые вы устанавливаете, поэтому они полностью динамичны для любой установки докера.

Вы можете, конечно, редактировать свой Health.D/CGroups.Conf Файл для изменения существующих аварийных сигналов или создавать новые целиком.

Погрузиться в метрики в реальном времени для контейнерных приложений и услуг

Мониторинг докера NetData не останавливается со всеми контейнерами — это также полностью способна контролировать приложения/услуги, работающие Внутри этих контейнеров Отказ Таким образом, вы получите более точные метрики для ваших криминальных веб-серверов или баз данных, а также все предварительно настроенные тревоги, которые поставляются с этим коллектором!

Вы можете контролировать определенные метрики для любого из 200+ приложений/услуг Как MySQL, Nginx или Postgres, с небольшим или без конфигурации на вашей части. Просто установите услугу, используя рекомендуемый метод, а NetData автоматически определяет его.

Например, вот несколько диаграмм в реальном времени для веб-сервера Nginx, работающих внутри контейнера Docker, в то время как он претерпевает стресс-тест.

Посетите наши Документация и используйте панель поиска в верхней части, чтобы выяснить, как отслеживать любимые Контейнеризованные услуга.

Что дальше?

Чтобы начать мониторинг контейнеров докеров с NetData, Установить NetData На любой системе работает Docker Daemon. NetData автоматически обнаруживает ваши CGroups и начнет мониторинг здоровья и производительности любых беговых контейнеров докеров.

Если у вас уже установлен NetData и вы хотите включить мониторинг Docker, Перезапустите NetData Использование соответствующей команды для вашей системы.

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

Для более тщательного расследования возможностей мониторинга докера NetData прочитайте наш Cogroups Collector Документация и наши Docker Engine документация. Вы также можете узнать о Запуск NetData внутри контейнера В ваших продолжающихся усилиях по контейнеру все.

Оригинал: «https://dev.to/jenniferbriston/docker-container-monitoring-with-netdata-1jgg»