Kubernetes Monitoring: 5 ключевых показателей

Kubernetes Monitoring: 5 ключевых показателей
Kubernetes Monitoring: 5 ключевых показателей

Мониторинг Kubernetes имеет решающее значение для непрерывной надежной работы критически важных систем. Вот пять показателей для управления средами Kubernetes.

Kubernetes быстро становится важнейшей инфраструктурной платформой в современной ИТ-среде. Однако мощь Kubernetes сопряжена с чрезвычайной сложностью, порождающей серьезные операционные проблемы.

Команды DevOps и ИТ-операций изо всех сил пытаются найти способы надежно управлять Kubernetes, обнаруживать ошибки и своевременно их исправлять. Первый шаг в этом процессе - группы мониторинга должны обеспечить прозрачность контейнерных сред. Знание того, что работает, и получение доступа к основным операционным метрикам - это первый строительный блок для запуска надежной среды Kubernetes корпоративного уровня.

Почему так важен мониторинг Kubernetes?

Внедрение стратегии мониторинга Kubernetes дает множество преимуществ, в том числе:

Устранение неисправностей и надежность-Приложения Kubernetes часто бывают сложными, особенно если они основаны на облаке или используют архитектуру микросервисов. Это затрудняет определение основной причины проблем. Меры мониторинга могут предложить вам видимость вашего развертывания Kubernetes, чтобы вы могли видеть, где могут возникнуть (или возникли) проблемы, что позволит вам предотвратить и исправить проблемы. Настройка производительности- понимание тонкостей кластера Kubernetes позволяет вам принимать обоснованные решения о конфигурации вашего оборудования, чтобы обеспечить высокую производительность ваших приложений. Управление затратами- важно отслеживать ресурсы, которые вы потребляете, чтобы убедиться, что у вас нет избыточных ресурсов. Если ваши приложения Kubernetes работают в инфраструктуре общедоступного облака, вам необходимо знать, сколько узлов у вас запущено. Возвратные платежи и возвратные платежи-в определенных ситуациях вы можете захотеть узнать, какие группы команд использовали определенные ресурсы. Мониторинг Kubernetes предоставляет необходимую информацию об использовании для анализа затрат и целей возврата платежей. Безопасность-существенная возможность в современной вычислительной среде - видеть, какие задания выполняются и где. Это позволяет идентифицировать несанкционированные или ненужные задания, которые могут указывать на взлом или атаку DOS. Хотя мониторинг Kubernetes не решает всех проблем безопасности, он может предоставить важную информацию для поддержания безопасности.

Наличие соответствующего уровня видимости в Kubernetes необходимо для обеспечения надлежащего мониторинга приложений и кластеров.

Основные показатели Kubernetes для мониторинга

Метрики кластера Kubernetes

Мониторинг работоспособности кластера Kubernetes может помочь вам понять, какие компоненты влияют на работоспособность вашего кластера. Например, вы можете узнать, сколько ресурсов использует кластер в целом и сколько приложений выполняется на каждом узле в кластере. Вы также можете узнать, хорошо ли работают ваши узлы и с какой мощностью.

Вот несколько полезных показателей, которые нужно отслеживать:

Использование ресурсов узла-метрики, такие как пропускная способность сети, использование памяти и ЦП, а также использование диска. Вы можете использовать эти показатели, чтобы узнать, следует ли вам уменьшать или увеличивать количество и размер узлов кластера. Количество узлов-эта метрика может помочь вам узнать, за какие ресурсы выставляет счет поставщик облачных услуг, и узнать, как используется кластер. Беговые стручки-отслеживая количество запущенных модулей, вы можете понять, достаточно ли доступных узлов для обработки текущих рабочих нагрузок в случае отказа узла.

Метрики Kubernetes Pod

Процесс мониторинга пода Kubernetes можно разделить на три компонента:

Метрики Kubernetes- они позволяют отслеживать, как отдельный модуль обрабатывается и развертывается оркестратором. Вы можете отслеживать такую информацию, как количество экземпляров в модуле в данный момент по сравнению с ожидаемым количеством экземпляров (меньшее число может указывать на то, что в кластере закончились ресурсы). Вы также можете видеть незавершенное развертывание (количество экземпляров, переключенных на более новую версию), проверять работоспособность ваших модулей и просматривать сетевые данные. Метрики контейнера пода в основном они доступны через cAdvisor и доступны через Heapster, который запрашивает каждый узел о запущенных контейнерах. Важные показатели включают использование сети, ЦП и памяти, которые можно сравнить с максимально разрешенным использованием. Метрики для конкретных приложений- они разрабатываются самим приложением и относятся к конкретным бизнес-правилам. Например, приложение базы данных может предоставлять метрики состояния индекса, а также реляционную статистику, в то время как приложение электронной коммерции может предоставлять данные о количестве онлайн-клиентов и доходе, полученном за определенный период времени. Приложение напрямую предоставляет эти типы показателей, и вы можете связать приложение с инструментом мониторинга, чтобы отслеживать их более внимательно.

Государственные метрики

kube-state-metrics - это сервис Kubernetes, который предоставляет данные о состоянии объектов кластера, включая поды, узлы, пространства имен и DaemonSets. Он обслуживает метрики через стандартный API метрик Kubernetes.

Вот несколько аспектов, которые вы можете отслеживать с помощью показателей состояния:

Постоянные объемы (PV)-a PV - это ресурс хранилища, указанный в кластере и доступный в качестве постоянного хранилища для любого модуля, который его запрашивает. PV привязаны к определенному модулю в течение своего жизненного цикла. Когда PV больше не нужен модулю, он утилизируется. Мониторинг PV может помочь вам узнать, когда процессы восстановления не работают, что означает, что что-то не работает должным образом с вашим постоянным хранилищем. Дисковое давление-исполняется, когда узел использует слишком много дискового пространства или когда узел использует дисковое пространство слишком быстро. Давление на диск определяется в соответствии с настраиваемым порогом. Мониторинг этого показателя может помочь вам узнать, действительно ли приложению требуется дополнительное дисковое пространство или оно преждевременно заполняет диск непредвиденным образом. Цикл сбоя-может произойти, когда модуль запускается, аварийно завершает работу, а затем застревает в цикле непрерывных безуспешных попыток перезапуска. При возникновении цикла сбоя приложение не может работать. Это может быть вызвано сбоем приложения в модуле, неправильной конфигурацией модуля или проблемой развертывания. Поскольку существует множество возможностей, отладка цикла сбоя может оказаться сложной задачей. Тем не менее, вам необходимо немедленно узнать о сбое, чтобы быстро смягчить или реализовать чрезвычайные меры, которые могут сохранить доступность приложения. Вакансии-компоненты, предназначенные для временного запуска подов. Задание может запускать модули в течение ограниченного времени. Как только модули выполнят свои функции, работа может их выключить. Однако иногда рабочие места не выполняют свою функцию успешно. Это может произойти из-за перезагрузки или сбоя узла. Это также может быть результатом исчерпания ресурсов. Мониторинг сбоев задания может помочь вам узнать, когда ваше приложение недоступно.

Показатели контейнера

Вы должны отслеживать метрики контейнеров, чтобы убедиться, что контейнеры правильно используют ресурсы. Эти метрики могут помочь вам понять, достигли ли вы предопределенного лимита ресурсов, и обнаружить поды, которые застряли в CrashLoopBackoff.

Вот несколько показателей контейнера, за которыми следует следить:

Использование ЦП контейнера-Узнать, сколько ресурсов ЦП используют ваши контейнеры по отношению к определенным вами ограничениям модуля. Использование памяти контейнера-выявить, сколько памяти используют ваши контейнеры по отношению к определенным вами ограничениям модуля. Использование сети-обнаружение отправленных и полученных пакетов данных, а также используемой полосы пропускания.

Метрики приложения

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

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

Заключение

В этой статье я объяснил критическую важность мониторинга Kubernetes для непрерывной надежной работы этой критически важной системы. Я обсудил пять типов метрик, к которым команды должны получить доступ, чтобы успешно управлять средами Kubernetes:

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

Я надеюсь, что это поможет вам повысить зрелость и надежность развертываний Kubernetes в вашей организации.