Поделиться через


Мониторинг событий аудита Kubernetes

> Область применения: Локальная версия Azure, версия 23H2, AKS, включенная Azure Arc в VMware (предварительная версия)

Вы можете получить доступ к журналам аудита Kubernetes в журналах плоскости управления Kubernetes. Журналы плоскости управления для кластеров AKS реализуются в виде журналов ресурсов в Azure Monitor. Журналы ресурсов не собираются и хранятся, пока не создадите параметр диагностики для их маршрутизации в одно или несколько расположений. Обычно они отправляются в рабочую область Log Analytics, где хранится большая часть данных для Аналитики контейнеров.

Создание параметра диагностики

Перед созданием параметра диагностики установите расширение Arc K8S , которое включает сбор журналов из кластера AKS.

Установите расширение Arc K8S, выполнив следующую команду:

az k8s-extension create -g <resouerce-group-name> -c <cluster-name> --cluster-type connectedClusters --extension-type Microsoft.AKSArc.AzureMonitor --name "aksarc-azuremonitor" --auto-upgrade true

После успешной установки расширения следуйте инструкциям в параметрах диагностики в Azure Monitor, чтобы создать параметр диагностики с помощью портал Azure, Azure CLI или PowerShell. В ходе этого процесса можно указать, какие категории журналов следует собирать. Категории для AKS Arc перечислены в справочнике по Azure Monitor.

Пример команды выглядит следующим образом:

az monitor diagnostic-settings create –name <Diagnostics_Setting_Name> --resource <Cluster_Resource_ID> --logs "[{category:kube-audit,enabled:true},{category:kube-audit-admin,enabled:true},{category:kube-apiserver,enabled:true},{category:kube-controller-manager,enabled:true},{category:kube-scheduler,enabled:true},{category:cluster-autoscaler,enabled:true},{category:cloud-controller-manager,enabled:true},{category:guard,enabled:true},{category:csi-aksarcdisk-controller,enabled:true},{category:csi-aksarcsmb-controller,enabled:true},{category:csi-aksarcnfs-controller,enabled:true}]" --workspace <LA_Workspace_ID>

Снимок экрана: колонка портала с параметрами диагностики.

AKS поддерживает режим диагностика Azure или режим, зависящий от ресурса, для журналов ресурсов. В режиме указываются таблицы в рабочей области Log Analytics, в которую отправляются данные. Режим диагностика Azure отправляет все данные в таблицу AzureDiagnostics, а режим, зависящий от ресурса, отправляет данные в ArcK8SAudit, ArcK8SAuditAdmin и ArcK8SControlPlane, как показано в таблице категорий журнала в следующем разделе.

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

Категория журнала

Категория Description Таблица (режим, зависящий от ресурса)
kube-apiserver Журналы аудита с сервера API. ArcK8SControlPlane.
kube-audit Данные журналов аудита для каждого события аудита, включая получение, перечисление, создание, обновление, удаление, исправление и публикацию. ArcK8SAudit
kube-audit-admin Набор категории журналов kube-audit. Значительно уменьшает число журналов путем исключения из журнала событий аудита (получения и перечисления). ArcK8SAuditAdmin
kube-controller-manager Дополнительные сведения о проблемах, которые могут возникать при взаимодействии Kubernetes и уровня управления Azure. Например, у кластера AKS может не хватать привилегий для взаимодействия с Azure. ArcK8SControlPlane
kube-scheduler Журналы от планировщика. ArcK8SControlPlane.
cluster-autoscaler Сведения о причинах изменения масштаба кластера AKS, которое может быть неожиданным. Эта информация также полезна для сопоставления интервалов времени, в которых может произойти что-то интересное в кластере. ArcK8SControlPlane
cloud-controller-manager Журналы из компонента cloud-node-manager диспетчера облачных контроллеров Kubernetes. ArcK8SControlPlane
guard Управляемые идентификаторы Microsoft Entra и аудиты Azure RBAC. Для управляемого идентификатора Microsoft Entra эта категория включает маркер и сведения о пользователе. Для Azure RBAC он включает в себя проверки доступа и выход. ArcK8SControlPlane
csi-aksarcdisk-controller Журналы из драйвера хранилища AKS Arc CSI. ArcK8SControlPlane.
csi-aksarcsmb-controller Журналы из драйвера хранилища AKS Arc SMB CSI. ArcK8SControlPlane.
csi-aksarcnfs-controller Журналы из драйвера хранилища AKS Arc NFS CSI. ArcK8SControlPlane.

Удаление и отключение параметра диагностика

Параметр диагностика можно удалить с помощью портал Azure, PowerShell или Azure CLI:

az monitor diagnostic-settings delete –name <diagnostics-setting-name> --resource <resource-name> -g <resource-group-name>

После успешного удаления параметра можно удалить расширение с помощью Azure CLI:

az k8s-extension delete -g <resouerce-group-name> -c <cluster-name> --cluster-type connectedClusters --name "hybridaks-observability"

Следующие шаги

Мониторинг событий объектов Kubernetes