Сбор системных журналов с помощью аналитики контейнеров
Контейнер Аналитика предоставляет возможность собирать события системного журнала с узлов Linux в кластерах Служба Azure Kubernetes (AKS). В частности, вы можете собирать журналы из таких компонентов уровня управления, как kubelet. Клиенты также могут использовать Системный журнал для мониторинга событий безопасности и работоспособности, как правило, путем приема системного журнала в систему SIEM, например Microsoft Sentinel.
Необходимые компоненты
- Необходимо включить проверку подлинности управляемого удостоверения в кластере. Чтобы включить, ознакомьтесь с миграцией кластера AKS на проверку подлинности управляемых удостоверений. Примечание. Включение управляемого удостоверения создаст новое правило сбора данных (DCR) с именем
MSCI-<WorkspaceRegion>-<ClusterName>
- Порт 28330 должен быть доступен на узле узла.
- Минимальные версии компонентов Azure
- Azure CLI: минимальная версия, необходимая для Azure CLI, — 2.45.0 (ссылка на заметки о выпуске). Узнайте , как обновить Azure CLI для инструкций по обновлению.
- Расширение AZURE CLI AKS-Preview: минимальная версия, необходимая для расширения Azure CLI ДЛЯ AKS-Preview, — 0.5.125 (ссылка на заметки о выпуске). Сведения об обновлении расширений см. в руководстве по обновлению.
- Версия образа Linux: минимальная версия для образа Linux узла AKS — 2022.11.01. Сведения о справке по обновлению см. в образах узлов Служба Azure Kubernetes (AKS).
Включение системного журнала
На портале Azure
Перейдите к кластеру. Откройте вкладку Аналитика кластера. Откройте панель "Монитор Параметры". Щелкните "Изменить параметры коллекции", а затем проверка поле "Включить коллекцию системного журнала"
с помощью команд Azure CLI;
Используйте следующую команду в Azure CLI, чтобы включить сбор системных журналов при создании нового кластера AKS.
az aks create -g syslog-rg -n new-cluster --enable-managed-identity --node-count 1 --enable-addons monitoring --enable-msi-auth-for-monitoring --enable-syslog --generate-ssh-key
Используйте следующую команду в Azure CLI, чтобы включить сбор системных журналов в существующем кластере AKS.
az aks enable-addons -a monitoring --enable-msi-auth-for-monitoring --enable-syslog -g syslog-rg -n existing-cluster
Использование шаблонов ARM
Вы также можете использовать шаблоны ARM для включения коллекции системного журнала
Скачайте шаблон в файле содержимого GitHub и сохраните его как existingClusterOnboarding.json.
Скачайте файл параметров в файле содержимого GitHub и сохраните его как existingClusterParam.json.
Измените значения в файле параметров:
aksResourceId
: используйте значения на странице обзора AKS для кластера AKS.aksResourceLocation
: используйте значения на странице обзора AKS для кластера AKS.workspaceResourceId
: используйте идентификатор ресурса рабочей области Log Analytics.resourceTagValues
: сопоставляет существующие значения тегов, указанные для существующего правила сбора данных расширения аналитики контейнеров (DCR) кластера и имени DCR. Имя будет MSCI-clusterName-clusterRegion<><>, и этот ресурс, созданный в группе ресурсов кластеров AKS. Если это первый раз при подключении, можно задать произвольные значения тегов.enableSyslog
: задано значение truesyslogLevels
: массив уровней системного журнала для сбора. По умолчанию собирается все уровни.syslogFacilities
: массив средств системного журнала для сбора. По умолчанию собираются все объекты
Примечание.
Уровень системного журнала и настройка объектов в настоящее время доступна только с помощью шаблонов ARM.
Развертывание шаблона
Разверните шаблон с помощью файла параметров с помощью любого допустимого метода для развертывания шаблонов Resource Manager. Примеры различных методов см. в разделе "Развертывание примеров шаблонов".
Развертывание с помощью Azure PowerShell
New-AzResourceGroupDeployment -Name OnboardCluster -ResourceGroupName <ResourceGroupName> -TemplateFile .\existingClusterOnboarding.json -TemplateParameterFile .\existingClusterParam.json
Изменение конфигурации может занять несколько минут. По завершении сообщение, аналогичное следующему примеру, включает следующий результат:
provisioningState : Succeeded
Развертывание с помощью интерфейса командной строки Azure
az login
az account set --subscription "Subscription Name"
az deployment group create --resource-group <ResourceGroupName> --template-file ./existingClusterOnboarding.json --parameters @./existingClusterParam.json
Изменение конфигурации может занять несколько минут. По завершении сообщение, аналогичное следующему примеру, включает следующий результат:
provisioningState : Succeeded
Доступ к данным системного журнала
Доступ с помощью встроенных книг
Чтобы получить быстрый моментальный снимок данных системного журнала, клиенты могут использовать встроенную книгу Системного журнала. Существует два способа доступа к встроенной книге.
Вариант 1. Вкладка "Отчеты" в Аналитика контейнера. Перейдите к кластеру. Откройте вкладку Аналитика кластера. Откройте вкладку "Отчеты " и найдите книгу системного журнала .
Вариант 2. Вкладка книг в AKS Перейдите к кластеру. Откройте вкладку "Книги " для кластера и найдите книгу Системного журнала .
Доступ с помощью панели мониторинга Grafana
Клиенты могут использовать нашу панель мониторинга системного журнала для Grafana, чтобы получить общие сведения о своих данных Системного журнала. Клиенты, создающие экземпляр Grafana под управлением Azure, будут иметь эту панель мониторинга, доступную по умолчанию. Клиенты с существующими экземплярами или работающими собственными экземплярами могут импортировать панель мониторинга Syslog из Marketplace Grafana.
Примечание.
Вам потребуется роль средства чтения мониторинга в подписке, содержащей экземпляр Azure Managed Grafana, чтобы получить доступ к системным журналам из контейнера Аналитика.
Доступ с помощью запросов журнала
Данные системного журнала хранятся в таблице Syslog в рабочей области Log Analytics. Вы можете создать собственные запросы журналов в Log Analytics для анализа этих данных или использования любого предварительно созданного запроса.
Вы можете открыть Log Analytics из меню "Журналы" в меню "Монитор", чтобы получить доступ к данным системного журнала для всех кластеров или из меню кластера AKs, чтобы получить доступ к данным системного журнала только для этого кластера.
Примеры запросов
В следующей таблице представлены различные примеры запросов к журналу, извлекающих записи из системного журнала.
Query | Description |
---|---|
Syslog |
Все системные журналы |
Syslog | where SeverityLevel == "error" |
Все записи системного журнала с серьезностью ошибки |
Syslog | summarize AggregatedValue = count() by Computer |
Количество записей системного журнала по компьютеру |
Syslog | summarize AggregatedValue = count() by Facility |
Количество записей системного журнала по объекту |
Syslog | where ProcessName == "kubelet" |
Все записи системного журнала из процесса kubelet |
Syslog | where ProcessName == "kubelet" and SeverityLevel == "error" |
Записи системного журнала из процесса kubelet с ошибками |
Изменение параметров коллекции Системного журнала
Чтобы изменить конфигурацию для коллекции Системного журнала, измените правило сбора данных (DCR), созданное при включении.
Выберите правила сбора данных из меню "Монитор" в портал Azure.
Выберите DCR и просмотрите источники данных. Выберите источник данных системного журнала Linux, чтобы просмотреть сведения о коллекции Системного журнала.
Примечание.
DCR создается автоматически при включении системного журнала. DCR следует соглашению MSCI-<WorkspaceRegion>-<ClusterName>
об именовании.
Выберите минимальный уровень журнала для каждого объекта, который требуется собрать.
Следующие шаги
После настройки клиенты могут начать отправку данных системного журнала в средства по своему выбору
Подробнее
Поделитесь своими отзывами об этой функции: https://forms.office.com/r/BBvCjjDLTS