Мониторинг событий аудита 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"