Сбор системных журналов с помощью аналитики контейнеров

Контейнер Аналитика предоставляет возможность собирать события системного журнала с узлов Linux в кластерах Служба Azure Kubernetes (AKS). В частности, вы можете собирать журналы из таких компонентов уровня управления, как kubelet. Клиенты также могут использовать Системный журнал для мониторинга событий безопасности и работоспособности, как правило, путем приема системного журнала в систему SIEM, например Microsoft Sentinel.

Необходимые компоненты

Включение системного журнала

На портале Azure

Перейдите к кластеру. Откройте вкладку Аналитика кластера. Откройте панель "Монитор Параметры". Щелкните "Изменить параметры коллекции", а затем проверка поле "Включить коллекцию системного журнала"

Screen recording of syslog being enabled from the Azure portal through the Monitor Settings panel in Container Insights.

с помощью команд 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 для включения коллекции системного журнала

  1. Скачайте шаблон в файле содержимого GitHub и сохраните его как existingClusterOnboarding.json.

  2. Скачайте файл параметров в файле содержимого GitHub и сохраните его как existingClusterParam.json.

  3. Измените значения в файле параметров:

    • aksResourceId: используйте значения на странице обзора AKS для кластера AKS.
    • aksResourceLocation: используйте значения на странице обзора AKS для кластера AKS.
    • workspaceResourceId: используйте идентификатор ресурса рабочей области Log Analytics.
    • resourceTagValues: сопоставляет существующие значения тегов, указанные для существующего правила сбора данных расширения аналитики контейнеров (DCR) кластера и имени DCR. Имя будет MSCI-clusterName-clusterRegion<><>, и этот ресурс, созданный в группе ресурсов кластеров AKS. Если это первый раз при подключении, можно задать произвольные значения тегов.
    • enableSyslog: задано значение true
    • syslogLevels: массив уровней системного журнала для сбора. По умолчанию собирается все уровни.
    • 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. Вкладка "Отчеты" в Аналитика контейнера. Перейдите к кластеру. Откройте вкладку Аналитика кластера. Откройте вкладку "Отчеты " и найдите книгу системного журнала .

Video of Syslog workbook being accessed from Container Insights Reports tab.

Вариант 2. Вкладка книг в AKS Перейдите к кластеру. Откройте вкладку "Книги " для кластера и найдите книгу Системного журнала .

Video of Syslog workbook being accessed from cluster workbooks tab.

Доступ с помощью панели мониторинга Grafana

Клиенты могут использовать нашу панель мониторинга системного журнала для Grafana, чтобы получить общие сведения о своих данных Системного журнала. Клиенты, создающие экземпляр Grafana под управлением Azure, будут иметь эту панель мониторинга, доступную по умолчанию. Клиенты с существующими экземплярами или работающими собственными экземплярами могут импортировать панель мониторинга Syslog из Marketplace Grafana.

Примечание.

Вам потребуется роль средства чтения мониторинга в подписке, содержащей экземпляр Azure Managed Grafana, чтобы получить доступ к системным журналам из контейнера Аналитика.

Screenshot of Syslog Grafana dashboard.

Доступ с помощью запросов журнала

Данные системного журнала хранятся в таблице Syslog в рабочей области Log Analytics. Вы можете создать собственные запросы журналов в Log Analytics для анализа этих данных или использования любого предварительно созданного запроса.

Screenshot of Syslog query loaded in the query editor in the Azure Monitor Portal UI.

Вы можете открыть Log Analytics из меню "Журналы" в меню "Монитор", чтобы получить доступ к данным системного журнала для всех кластеров или из меню кластера AKs, чтобы получить доступ к данным системного журнала только для этого кластера.

Screenshot of Query editor with Syslog query.

Примеры запросов

В следующей таблице представлены различные примеры запросов к журналу, извлекающих записи из системного журнала.

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.

Screenshot of Data Collection Rules tab in the Azure Monitor portal UI.

Выберите DCR и просмотрите источники данных. Выберите источник данных системного журнала Linux, чтобы просмотреть сведения о коллекции Системного журнала.

Примечание.

DCR создается автоматически при включении системного журнала. DCR следует соглашению MSCI-<WorkspaceRegion>-<ClusterName>об именовании.

Screenshot of Data Sources tab for Syslog data collection rule.

Выберите минимальный уровень журнала для каждого объекта, который требуется собрать.

Screenshot of Configuration panel for Syslog data collection rule.

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

После настройки клиенты могут начать отправку данных системного журнала в средства по своему выбору

Подробнее

Поделитесь своими отзывами об этой функции: https://forms.office.com/r/BBvCjjDLTS