анализ затрат Служба Azure Kubernetes (AKS)
В этой статье вы узнаете, как включить анализ затрат на Служба Azure Kubernetes (AKS) для просмотра подробных данных о затратах для ресурсов кластера.
О анализе затрат
Кластеры AKS используют ресурсы Azure, такие как виртуальные машины, виртуальные диски, подсистемы балансировки нагрузки и общедоступные IP-адреса. Несколько приложений могут использовать эти ресурсы. Шаблоны потребления ресурсов часто отличаются для каждого приложения, поэтому их вклад в общую стоимость ресурсов кластера также может отличаться. В некоторых приложениях могут быть места в нескольких кластерах, что может вызвать проблему при выполнении управления затратами и управления затратами.
При включении анализа затрат в кластере AKS можно просмотреть подробные области распределения затрат, связанные с конструкциями Kubernetes, такими как кластеры и пространства имен, а также ресурсы вычислений, сети и хранилища Azure. Надстройка построена на основе OpenCost, проекта с открытым исходным кодом Cloud Native Computing Foundation Incubating для сбора данных об использовании. Данные об использовании сопоставляются с данными счета Azure для предоставления комплексного представления затрат на кластер AKS непосредственно в представлениях управления затратами портал Azure.
Дополнительные сведения об управлении затратами Майкрософт см. в статье "Начало анализа затрат в Azure".
После включения надстройки анализа затрат и предоставления времени сбора данных можно использовать сведения в разделе "Общие сведения об использовании и затратах AKS", которые помогут вам понять данные.
Необходимые компоненты
- Кластер должен использовать
Standard
уровень илиPremium
уровень, а неFree
уровень. - Чтобы просмотреть сведения об анализе затрат, необходимо иметь одну из следующих ролей в подписке, в которых размещен кластер:
Owner
,Cost Management Contributor
Contributor
Reader
или .Cost Management Reader
- Идентификация рабочей нагрузки Microsoft Entra настроен в кластере.
- Если используется Azure CLI, вам нужна версия
2.61.0
или более поздняя версия. - После включения анализа затрат вы не сможете перейти на
Free
уровень, не отключив анализ затрат. - Доступ к API Azure, включая API Azure Resource Manager (ARM). Список полных доменных имен (FQDN) см. в разделе "Анализ затрат AKS" требуется полное доменное имя.
Ограничения
- Представления затрат Kubernetes доступны только для Соглашение Enterprise и Клиентское соглашение Майкрософт типов предложений Microsoft Azure. Дополнительные сведения см. в статье "Поддерживаемые предложения Microsoft Azure".
- В настоящее время виртуальные узлы не поддерживаются.
Включение анализа затрат в кластере AKS
Вы можете включить анализ затрат с флагом --enable-cost-analysis
во время одной из следующих операций:
-
Standard
Создание кластера AKS илиPremium
уровня. - Обновление существующего
Standard
илиPremium
многоуровневого кластера AKS. -
Free
Обновление кластера доStandard
илиPremium
. -
Standard
Обновление кластера доPremium
. - Понижение
Premium
уровня кластера наStandard
уровень.
Включение анализа затрат в новом кластере
Включите анализ затрат в новом кластере az aks create
с помощью команды с флагом --enable-cost-analysis
. В следующем примере создается новый кластер AKS на Standard
уровне с включенным анализом затрат:
az aks create --resource-group <resource-group> --name <cluster-name> --location <location> --enable-managed-identity --generate-ssh-keys --tier standard --enable-cost-analysis
Включение анализа затрат в существующем кластере
Включите анализ затрат в существующем кластере az aks update
с помощью команды с флагом --enable-cost-analysis
. В следующем примере обновляется существующий кластер AKS на Standard
уровне, чтобы включить анализ затрат:
az aks update --resource-group <resource-group> --name <cluster-name> --enable-cost-analysis
Примечание.
Агент развертывается в кластере при включении надстройки. Агент потребляет небольшое количество ресурсов ЦП и памяти.
Предупреждение
Использование памяти для анализа затрат AKS зависит от количества развернутых контейнеров. Вы можете примерно приблизить потребление памяти с помощью 200 МБ + 0,5 МБ на контейнер. Текущее ограничение памяти равно 4 ГБ, которое поддерживает примерно 7000 контейнеров на кластер. Эти оценки могут быть изменены.
Отключение анализа затрат в кластере AKS
Отключите анализ затрат с помощью az aks update
команды с флагом --disable-cost-analysis
.
az aks update --name <cluster-name> --resource-group <resource-group> --disable-cost-analysis
Примечание.
Если вы хотите уменьшить уровень кластера с Standard
уровня или Premium
уровня Free
, пока включен анализ затрат, необходимо сначала отключить анализ затрат.
Просмотр данных о затратах
Данные о выделении затрат можно просмотреть в портал Azure. Дополнительные сведения см. в разделе "Просмотр затрат AKS" в службе "Управление затратами Майкрософт".
Определения затрат
В пространствах имен Kubernetes и представлениях активов может появиться любая из следующих расходов:
- Плата за простой представляет стоимость доступной емкости ресурсов, которая не используется ни одной рабочей нагрузкой.
- Плата за обслуживание представляет расходы, связанные со службой, например соглашение об уровне обслуживания от простоя, Microsoft Defender для контейнеров и т. д.
- Системные расходы представляют стоимость емкости, зарезервированной AKS на каждом узле для выполнения системных процессов, необходимых кластеру, включая среду выполнения kubelet и контейнера. Подробнее.
- Нераспределенные расходы представляют затраты на ресурсы, которые не могут быть выделены пространствам имен.
Примечание.
Для завершения обработки данных может потребоваться до одного дня . Через 24 часа все колебания затрат за предыдущий день будут стабилизироваться.
Устранение неполадок
Если возникают проблемы, такие как cost-agent
получение OOMKilled
или зависание модуля pod в Pending
состоянии, см . статью "Устранение неполадок с анализом затрат AKS".
Следующие шаги
Дополнительные сведения о затратах в AKS см. в статье "Общие сведения об использовании и затратах на использование Служба Azure Kubernetes (AKS).
Azure Kubernetes Service