Понимание и управление потреблением ресурсов мониторинга платформы Kubernetes (DPS)

Материал из Документация Ключ-АСТРОМ

Понимание и управление потреблением ресурсов мониторинга платформы Kubernetes (DPS)

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

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

Как рассчитывается потребление

Потребление ресурсов Мониторинга платформы Kubernetes измеряется в под-часах с использованием пункта тарифного плана Мониторинг платформы Kubernetes.

Версия ЕдиногоАгента 1.301+ При использовании Мониторинга платформы Kubernetes в сочетании с мониторингом Full-Stack на уровне хоста, потребление ресурсов подами в часах для всех подов, работающих на хостах, отслеживаемых в рамках мониторинга Full-Stack, включается в мониторинг Full-Stack на уровне хоста без дополнительной платы.

Поды на хостах, не использующих Full-Stack, а также поды, застрявшие в состоянии «Ожидание», по-прежнему учитываются в вашем потреблении под-часов, как описано на этой странице.

Ключевые термины

Под
Самая маленькая развертываемая единица в Kubernetes. Каждый запущенный под является единицей, которая генерирует потребление под-часов.
Под-час
Единица измерения для Мониторинга платформы Kubernetes. Один под-час соответствует одному часу мониторинга для одного пода. Потребление не зависит от размера памяти пода, выделенного ЦП или количества контейнеров в поде.

Что входит в «под-час»?

Каждый под-час Мониторинга платформы Kubernetes включает в себя:

  • Метрики: Полный набор метрик ресурсов и состояния кластеров, пространств имен, подов, контейнеров и нодов.
  • События: Предупреждающие события Kubernetes включены в понятие добросовестного использования¹.

В под-час не включаются информационные события Kubernetes, метрики Prometheus, метрики Istio или любые другие пользовательские метрики Kubernetes.

¹ Добросовестное использование означает использование, соответствующее типичным моделям поведения клиентов, вашему договорному потреблению и предполагаемому назначению функции. В качестве ориентира это означает 60 событий на под-час (суммированных по всем подам, с интервалом в 15 минут). Если ваше использование существенно превышает добросовестное использование, Ключ-АСТРОМ может уведомить вас и впоследствии применить плату по соответствующему тарифу События.

Правила подсчета и детализация выставления счетов

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

Ключ-АСТРОМ разработан для эластичных облачных сред, где сервисы часто работают недолго, что характерно для подов, работающих в средах Kubernetes. Поэтому расчет тарификации потребления подов в часах производится с 15-минутными интервалами. Если мониторинг пода занимает менее 15 минут в заданном интервале, его потребление округляется до 15 минут.

Оцените свои затраты

Следующий пример демонстрирует, как рассчитываются затраты на Мониторинг платформы Kubernetes.

Для простоты в этом примере предполагается, что расчеты основаны на следующих прейскурантных ценах (которые могут отличаться от цен в вашем прайс-листе):

  • Мониторинг платформы Kubernetes: 0,002 доллара США за под-час.
  • Все цены указаны в долларах США.
  • Один месяц равен 30 дням и 24 часам в сутки.

500 подов работают непрерывно.

500 подов × 24 часа × 30 дней = 360 000 под-часов в месяц

360 000 под-часов × 0,002 доллара = 720 долларов в месяц

Понимайте и контролируйте своё потребление

Ключ-АСТРОМ предоставляет несколько способов мониторинга и анализа использования Мониторинга платформы Kubernetes.

Аналитические данные, полученные через управление учетными записями

Менеджеры лицензий могут просматривать данные об использовании и стоимости в разделе Управление учетной записью.

  1. Перейдите в раздел Управление учетной записью > Подписки > Обзор > Подробная информация о стоимости и использовании > Сводка использования.
  2. Выберите Мониторинг платформы Kubernetes > Просмотреть подробности.

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

  • Уровень возможностей: выберите Просмотреть подробности рядом с интересующей вас возможностью.
  • Уровень среды: В таблице Среды выберите … > Открыть подробные сведения с помощью блокнотов.

Анализ данных об использовании платежных систем

События, связанные с использованием платежных данных (billing_usage_event), — это системные события, генерируемые Ключ-АСТРОМ, которые представляют собой авторитетную запись об использовании, подлежащем оплате. Используйте их для создания надежных дашбордов затрат и отчетов о возмещении расходов по пространствам имен или кластерам.

Каждое событие учета использования платформы Kubernetes для мониторинга содержит:

  • Использована функция DPS (Мониторинг платформы Kubernetes).
  • Объем использования в под-часах, который учитывается при выставлении счетов.
  • Временной интервал, к которому относится использование.
  • Контекст сущности (кластер Kubernetes и пространство имен).

Запрос событий использования платежных данных с помощью DQL

Общее использование Мониторинга платформы Kubernetes с течением времени:

fetch dt.system.events
| filter event.kind == "BILLING_USAGE_EVENT" and event.type == "Kubernetes Platform Monitoring"
| dedup event.id
| summarize totalUsage = sum(billed_pod_hours), by: {bin(timestamp, 1d)}

Общее использование на кластер, за исключением кластеров с нулевым использованием, за определенный период времени:

fetch dt.system.events | filter event.kind == "BILLING_USAGE_EVENT"

     and event.type == "Kubernetes Platform Monitoring"

| dedup event.id | summarize totalUsage = sum(billed_pod_hours),

 by: {
   day = bin(timestamp, 24h),
   dt.entity.kubernetes_cluster
 }

| filter totalUsage > 0

Общее использование на кластер и пространство имен:

fetch dt.system.events | filter event.kind == "BILLING_USAGE_EVENT" and event.type == "Kubernetes Platform Monitoring" | dedup event.id | fieldsAdd cluster = entityAttr(dt.entity.kubernetes_cluster, "entity.name") | fieldsAdd namespace = entityAttr(dt.entity.cloud_application_namespace, "entity.name") | makeTimeseries usage = sum(billed_pod_hours), by: {cluster, namespace}, interval: 24h, time: usage.start | sort usage DESC

Аналитические данные через API

Программное управление учетными записями и запрос к данным Мониторинга платформы Kubernetes позволяют интегрировать систему с внешними системами отчетности.

Аналитические данные с помощью ИИ-помощника

Используйте ИИ-помощника для выявления тенденций использования вашей среды Kubernetes. Например:

  • «Какие пространства имен Kubernetes потребляют больше всего под-часов в этом месяце?»
  • «Как изменилось мое потребление капсул в часах по сравнению с прошлым месяцем?»

Часто задаваемые вопросы

Возможно ли отслеживать только часть кластера?

Нет. Весь кластер отслеживается с помощью Мониторинга платформы Kubernetes.

Можно ли совместить мониторинг платформы Kubernetes с другими пунктами тарифного плана?

Да. Мониторинг платформы Kubernetes можно комбинировать с любым другим пунктом прайс-листа, например:

  • Мониторинг всего стека приложений на основе контейнеров (для получения аналитических данных о работе приложений).
  • Мониторинг кода (для отладки в реальном времени и получения информации от разработчиков).
  • Анализ логов.
  • Мониторинг реального пользователя и синтетический мониторинг.
  • Безопасность приложений.

Какие компоненты Ключ-АСТРОМ необходимы для мониторинга платформы Kubernetes?

Для Мониторинга платформы Kubernetes требуется:

  • Лицензия на использование платформы Ключ-АСТРОМ (DPS).
  • Развертывание.
  • АктивныйШлюз Ключ-АСТРОМ — это инструмент мониторинга API Kubernetes. Обычно он развертывается и управляется с помощью Оператора Ключ-АСТРОМ.

А что, если я хочу использовать исключительно OpenTelemetry?

При использовании исключительно OpenTelemetry, часы работы подов не расходуются. Однако для наблюдаемых сред Kubernetes взимается плата за метрики и события.

Зависит ли потребление энергии подом в часах от объема памяти пода или от загрузки процессора?

Нет. Показатель «под-час» не зависит от размера памяти пода, запросов к ЦП или ограничений ресурсов. Каждый отслеживаемый под вносит один под-час в час, независимо от его размера.

За каждый час мониторинга один отслеживаемый под вносит один под-час независимо от его размера. Расчет производится с 15-минутными интервалами; для получения дополнительной информации см. Правила подсчета и детализацию выставления счетов.

Плата за поды на хостах, контролируемых Full-Stack, взимается отдельно?

Не подходит для подов, работающих на хостах с полным мониторингом стека. Версия ЕдиногоАгента 1.301+ В этой версии в функцию мониторинга Full-Stack включено измерение потребления ресурсов всеми подами на хостах, отслеживаемых Full-Stack.

Поды на хостах, не использующих Full-Stack, а также поды, застрявшие в состоянии «Ожидание», по-прежнему оплачиваются как под-часы в рамках Мониторинга платформы Kubernetes, как описано на этой странице.

Как отнести затраты на Kubernetes к конкретным командам или приложениям?

Метрика builtin:billing.kubernetes_monitoring.usage определяется размерностью кластера Kubernetes и пространства имен, что упрощает распределение затрат. Вы также можете применять теги Ключ-АСТРОМ к сущностям пространства имен и использовать раздел Управление учетными записями > Управление затратами > Распределение затрат для настройки правил возмещения расходов.