Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Управление затратами — это непрерывный процесс реализации политик для управления затратами. В контексте Kubernetes существует несколько способов управления затратами и оптимизации затрат. К ним относятся собственные средства Kubernetes для управления использованием ресурсов и потребления ресурсов, а также упреждающего мониторинга и оптимизации базовой инфраструктуры.
В этом разделе показано, как использовать Kubecost для управления затратами на кластер Azure Kubernetes (AKS). Вы можете определить рамки выделения затрат на развертывание, службу, метку, pod или пространство имен, что обеспечивает гибкость при выставлении счетов или демонстрации для пользователей кластера.
Установка Kubecost
Существует несколько вариантов установки Kubecost. Дополнительные сведения см. в разделе "Установка Kubecost".
Рекомендуемый метод установки — это диаграмма Helm 3. Чтобы установить базовую конфигурацию Kubecost с помощью Helm 3, выполните следующие команды:
helm repo add kubecost https://kubecost.github.io/cost-analyzer/
helm repo update
helm upgrade --install kubecost kubecost/cost-analyzer --namespace kubecost --create-namespace
Через несколько минут проверьте, запущен ли Kubecost:
kubectl get pods -n kubecost
# Connect to the Kubecost dashboard UI
kubectl port-forward -n kubecost svc/kubecost-cost-analyzer 9090:9090
Теперь вы можете открыть браузер и перейти по адресу http://127.0.0.1:9090
, чтобы открыть пользовательский интерфейс Kubecost. В пользовательском интерфейсе Kubecost выберите кластер для просмотра сведений о выделении затрат.
Настройка Kubecost для интеграции с облаком Azure
Чтобы завершить установку Kubecost, необходимо настроить облачную интеграцию Azure и конфигурацию карты скорости Azure.
С помощью экспорта затрат Майкрософт можно создать повторяющуюся задачу, которая автоматически экспортирует данные управления затратами в учетную запись хранения Azure ежедневно. Kubecost настроен для доступа к данным в этой учетной записи хранения, что позволяет отображать общую стоимость ресурсов Azure на панели мониторинга, а не только данные, поступающие из кластера AKS. Чтобы убедиться, что Kubecost создает точные панели мониторинга, следует пометить ресурсы Azure, как описано в документации Kubecost для добавления тегов ресурсов Azure. Некоторые ресурсы Azure создаются кластером AKS, это относится к созданию службы типа LoadBalancer
или типа PersistentVolume
. Чтобы правильно отслеживать затраты на эти ресурсы, можно использовать заметки в ресурсах Kubernetes для добавления соответствующих тегов Azure, как примеры в статье "Использование тегов Azure в службе Azure Kubernetes".
Конфигурация тарифной карты Azure необходима для точного учета цен в вашей панели мониторинга. Вам потребуется создать субъект-службу с настраиваемой ролью, как описано на странице документации и настроить Kubecost, чтобы использовать субъект-службу для запроса API карты выставления счетов Azure.
Используйте Kubecost
Kubecost разбивает ресурсы на следующие категории:
- Ежемесячная стоимость кластера
- Стоимость пространства имен
- Затраты на ресурсы развертывания
- Рентабельность
Выберите кластер, чтобы просмотреть обзор, например следующую панель мониторинга:
Выберите распределение слева, чтобы углубиться в стоимость использования пространства имен ваших ресурсов. Выделение показывает затраты на центральный процессор, память, постоянные диски и сеть. Kubecost получает данные из цен Azure, но вы также можете задать пользовательские издержки на ресурсы.
Выберите Сбережения слева, чтобы подробно изучить экономию затрат для недоиспользуемых ресурсов. Экономия дает сведения о недоиспользуемых нодах и подах, заброшенных ресурсах, и определяет чрезмерные запросы ресурсов в кластере. На следующем снимке экрана показан пример обзора экономии:
Исследуйте некоторое время разнообразные представления и функции, найденные в Kubecost.