Перейти к содержимому

Тарификация Kubernetes

Kubernetes-ресурсы (поды, workload’ы, ноды) тарифицируются в OpsMan AI на основе почасовых ставок: одна ставка на CPU-час, одна — на Memory-час. Облачные провайдеры тарифицируются своим биллингом (см. Clouds).

  1. Откройте Settings → Pricing.
  2. Если кластер уже подключён, он появится в списке.
  3. Задайте:
    • CPU price per hour — стоимость одного ядра в час (в USD).
    • Memory price per hour — стоимость одного GiB в час (в USD).
  4. Сохраните.

Settings · Pricing

Самый простой способ:

  1. Посчитайте суммарные capacity нод кластера (из Cluster list).
  2. Возьмите реальную стоимость этих нод (счёт провайдера / TCO on-prem).
  3. Разделите на часы периода.

Пример. Кластер из 10 нод по 4 CPU и 16 GiB. Суммарно — 40 vCPU, 160 GiB. Реальная стоимость нод — $1 200 в месяц. Часов в месяце — ~730.

Стоимость за (CPU-час) + (Memory-час) × 4 ≈ $1 200 / 730. То есть, если выбрать ставку 50/50 между CPU и памятью: cpu_price ≈ $0.02, memory_price ≈ $0.005.

Если у вас managed Kubernetes (EKS, AKS, GKE, Yandex Managed K8s), можно взять ставки on-demand compute провайдера как ориентир. Например, средняя стоимость vCPU в регионе × процент использования on-demand vs spot.

Если в компании принят показатель «внутренней цены инфраструктуры» (chargeback/showback модель), используйте его. Это гарантирует совместимость с финансовой отчётностью.

Тарифы хранятся с датами effective_from / effective_to. Для корректного учёта исторических расходов:

  • При изменении ставки старая запись закрывается концом прошлого периода, новая — с начала нового.
  • За прошлые дни используется тариф, действовавший на тот момент.

Это значит, что изменение тарифа задним числом не пересчитывает уже рассчитанные расходы — только влияет на будущие.

Формулы для каждой единицы — на странице Формулы расчёта. Короткая сводка:

actual_cost(pod, hour) = max(request, usage) × тариф
optimal_cost(pod, hour) = usage × тариф
saving_cost = actual − optimal

Поэтому optimal_cost — теоретическая стоимость при идеальной утилизации, а saving_cost — потенциал оптимизации.

Если тариф для кластера отсутствует, стоимость всех его ресурсов равна нулю. Визуально на Dashboard и Cost Analysis вы увидите, что K8s-кластер «ничего не стоит». Это частый источник путаницы — проверяйте в первую очередь.