Интеграция State Configuration службы автоматизации Azure с журналами Azure Monitor
Примечание.
служба автоматизации Azure конфигурация состояния будет прекращена 30 сентября 2027 г.Конфигурация компьютера Azure по этой дате. Дополнительные сведения см. в публикации блога. Служба конфигурации компьютера Azure объединяет функции расширения DSC, служба автоматизации Azure конфигурации состояния и наиболее часто запрашиваемые функции из отзывов клиентов. Конфигурация компьютера Azure также включает поддержку гибридных компьютеров с помощью серверов с поддержкой Arc.
Внимание
служба автоматизации Azure DSC для Linux вышел на пенсию 30 сентября 2023 года. Дополнительные сведения см. в объявлении о выпуске.
В конфигурации State Configuration службы автоматизации Azure данные о состоянии узла хранятся в течение 30 дней. Вы можете отправлять данные о состоянии узла в журналы Azure Monitor, если желаете хранить их в течение более длительного периода. Сведения о состоянии соответствий узлов и отдельных ресурсов DSC в конфигурации узла можно просмотреть на портале Azure или с помощью PowerShell.
Журналы Azure Monitor предоставляют расширенный оперативный контроль над данными Automation State Configuration и позволяют быстрее устранять инциденты. С помощью журналов Azure Monitor вы можете:
- получать сведения о соответствии требованиям для управляемых узлов и отдельных ресурсов;
- активировать сообщение электронной почты или предупреждение (в зависимости от состояния соответствия);
- создавать сложные запросы к управляемым узлам;
- сопоставлять состояние соответствия в учетных записях службы автоматизации;
- с помощью пользовательских представлений и поисковых запросов визуализировать результаты модуля Runbook, состояние задания Runbook и другие связанные ключевые индикаторы или метрики.
Примечание.
Сведения из данной статьи были недавно обновлены. Теперь вместо термина "Log Analytics" используется термин "журналы Azure Monitor". Данные журнала по-прежнему хранятся в рабочей области Log Analytics, собираются и анализируются той же службой Log Analytics. Целью обновления терминологии является лучшее отражение роли журналов в Azure Monitor. Дополнительные сведения см. в статье Изменения фирменной символики Azure Monitor.
Необходимые компоненты
Чтобы начать отправку отчетов Automation State Configuration в журналы Azure Monitor, необходимо следующее:
- Модуль модуля Az PowerShell. Убедитесь, что у вас установлена последняя версия. При необходимости выполните командлет
Update-Module -Name Az
. - Учетная запись службы автоматизации Azure. Дополнительные сведения см. в статье Общие сведения о службе автоматизации Azure.
- Рабочая область Log Analytics. Дополнительные сведения см. в обзоре журналов Azure Monitor.
- Как минимум один узел службы "Настройка состояния службы автоматизации Azure". Дополнительные сведения см. в статье Подключение компьютеров для управления с помощью State Configuration службы автоматизации Azure.
- Модуль xDscDiagnostics, версия 2.7.0.0 или более поздняя. Инструкции по установке см. в разделе Устранение неполадок с Desired State Configuration службы автоматизации Azure.
Настройка интеграции с журналами Azure Monitor
Чтобы начать импорт данных из State Configuration службы автоматизации Azure в журналы Azure Monitor, выполните следующие действия: Инструкции для портала см. в разделе Пересылка данных задания службы автоматизации Azure в журналы Azure Monitor.
На своем компьютере войдите в подписку Azure с помощью командлета PowerShell Connect-AzAccount и следуйте инструкциям на экране.
# Sign in to your Azure subscription $sub = Get-AzSubscription -ErrorAction SilentlyContinue if (-not($sub)) { Connect-AzAccount } # If you have multiple subscriptions, set the one to use # Select-AzSubscription -SubscriptionId "<SUBSCRIPTIONID>"
Укажите подходящие значения для переменных
automationAccount
(используйте фактическое имя своей учетной записи службы автоматизации) иworkspaceName
(используйте фактическое имя своей рабочей области Log Analytics). Затем выполните скрипт.$automationAccount = "automationAccount" $law = "workspaceName"
Получите идентификатор ресурса учетной записи службы автоматизации с помощью следующих команд PowerShell.
# Find the ResourceId for the Automation account $AutomationResourceId = (Get-AzResource -ResourceType 'Microsoft.Automation/automationAccounts' | Where-Object {$_.Name -eq $automationAccount}).ResourceId
Получите идентификатор ресурса рабочей области Log Analytics с помощью следующих команд PowerShell.
# Find the ResourceId for the Log Analytics workspace $WorkspaceResourceId = (Get-AzResource ` -ResourceType 'Microsoft.OperationalInsights/workspaces' | WHERE {$_.Name -eq $law}).ResourceId
Чтобы настроить параметры диагностики в учетной записи службы автоматизации для пересылки данных журнала состояния узла DSC в журналы Azure Monitor, следующий командлет PowerShell создает параметр диагностики с этим местом назначения.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $true Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Если вы хотите остановить пересылку данных из State Configuration службы автоматизации в журналы Azure Monitor, выполните следующий командлет PowerShell.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $false Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Просмотр журналов State Configuration
Вы можете искать в журналах State Configuration сведения об операциях DSC путем поиска по журналам Azure Monitor. Настроив интеграцию с журналами Azure Monitor для данных State Configuration службы автоматизации, перейдите к учетной записи службы автоматизации на портале Azure. В разделе Мониторинг выберите Журналы.
Закройте диалоговое окно Запросы. Откроется панель поиска по журналам с областью запроса, заданной для ресурса учетной записи службы автоматизации. Записи для операций DSC хранятся в таблице AzureDiagnostics
. Чтобы найти несоответствующие узлы, введите следующий запрос.
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName contains "DSCNodeStatusData"
| where ResultType != "Compliant"
Сведения о фильтрации:
- Выполните фильтрацию по
DscNodeStatusData
, чтобы вернуть операции для каждого узла State Configuration. - Выполните фильтрацию по
DscResourceStatusData
, чтобы вернуть операции для каждого ресурса DSC, который вызывается в конфигурации узла, примененной к этому ресурсу. - Выполните фильтрацию по
DscResourceStatusData
, чтобы получить сведения об ошибке для всех ресурсов DSC, которые не удалось выполнить.
Дополнительные сведения о создании запросов журналов для поиска данных см. в разделе Обзор запросов журналов в Azure Monitor.
Отправка сообщения электронной почты при сбое проверки соответствия State Configuration
Вернитесь к созданному ранее запросу.
Нажмите кнопку +Создать правило генерации оповещений, чтобы запустить поток создания оповещений.
В следующем запросе замените
NODENAME
фактическое имя управляемого узла и вставьте измененный запрос в текстовое поле запроса поиска:AzureDiagnostics | where Category == "DscNodeStatus" | where NodeName_s == "NODENAME" | where OperationName == "DscNodeStatusData" | where ResultType == "Failed"
Если вы настраиваете журналы для нескольких учетных записей службы автоматизации или подписки, вы можете сгруппировать оповещения по подписке и учетной записи службы автоматизации. Определите имя учетной записи службы автоматизации из свойства
Resource
в результатах поиска по журналамDscNodeStatusData
.Инструкции по выполнению оставшихся действий см. в статье Создание и просмотр оповещений метрик, а также управление ими с помощью Azure Monitor.
Поиск ресурсов DSC со сбоями по всем узлам
Одно из преимуществ журналов Azure Monitor — возможность поиска проверок со сбоями по узлам. Чтобы найти все экземпляры сбоев, используйте следующий запрос:
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName == "DscResourceStatusData"
| where ResultType == "Failed"
Просмотр состояния узла DSC за предыдущие периоды
Визуализируйте изменение состояния узла DSC с течением времени с помощью следующего запроса:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where Category == "DscNodeStatus"
| where ResultType != "started"
| summarize count() by ResultType
Запрос отображает диаграмму состояния узла с течением времени.
Записи журналов Azure Monitor
При диагностике службы автоматизации Azure в журналах Azure Monitor создаются записи двух категорий:
- Данные о состоянии узла (
DscNodeStatusData
) - Данные о состоянии ресурса (
DscResourceStatusData
)
DscNodeStatusData
Свойство | Description |
---|---|
TimeGenerated | Дата и время запуска проверки соответствия. |
OperationName | DscNodeStatusData . |
ResultType | Значение, указывающее, соответствует ли узел требованиям. |
NodeName_s | Имя управляемого узла. |
NodeComplianceStatus_s | Значение состояния, указывающее, соответствует ли узел требованиям. |
DscReportStatus | Значение состояния, указывающее, успешно ли выполнена проверка соответствия. |
ConfigurationMode | Режим, используемый для применения конфигурации к узлу. Возможные значения:
|
HostName_s | Имя управляемого узла. |
IPAddress | Адрес IPv4 управляемого узла. |
Категория | DscNodeStatus . |
Ресурс | Имя учетной записи службы автоматизации Azure. |
Tenant_g | GUID, идентифицирующий клиента для вызывающего объекта. |
NodeId_g | Идентификатор GUID для определения управляемого узла. |
DscReportId_g | Идентификатор GUID для определения отчета. |
LastSeenTime_t | Дата и время последнего просмотра отчета. |
ReportStartTime_t | Дата и время начала отчета. |
ReportEndTime_t | Дата и время завершения отчета. |
NumberOfResources_d | Количество ресурсов DSC, которые вызывались в примененной к узлу конфигурации. |
SourceSystem | Исходная система, определяющая способ сбора журналов Azure Monitor. Всегда имеет значение Azure для системы диагностики Azure. |
ResourceId | Идентификатор ресурса учетной записи службы автоматизации Azure. |
ResultDescription | Описание ресурса для этой операции. |
SubscriptionId | Идентификатор подписки Azure (GUID) для учетной записи службы автоматизации. |
ResourceGroup | имя группы ресурсов для учетной записи службы автоматизации; |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Идентификатор корреляции отчета о соответствии. |
DscResourceStatusData
Свойство | Description |
---|---|
TimeGenerated | Дата и время запуска проверки соответствия. |
OperationName | DscResourceStatusData . |
ResultType | Подтверждено ли соответствие ресурса. |
NodeName_s | Имя управляемого узла. |
Категория | DscNodeStatus. |
Ресурс | Имя учетной записи службы автоматизации Azure. |
Tenant_g | GUID, идентифицирующий клиента для вызывающего объекта. |
NodeId_g | Идентификатор GUID для определения управляемого узла. |
DscReportId_g | Идентификатор GUID для определения отчета. |
DscResourceId_s | Имя для экземпляра ресурса DSC. |
DscResourceName_s | Имя ресурса DSC. |
DscResourceStatus_s | Подтверждено ли соответствие ресурса DSC. |
DscModuleName_s | Имя модуля PowerShell, который содержит ресурс DSC. |
DscModuleVersion_s | Версия модуля PowerShell, который содержит ресурс DSC. |
DscConfigurationName_s | Имя примененной к узлу конфигурации. |
ErrorCode_s | Код ошибки при сбое ресурса. |
ErrorMessage_s | Сообщение об ошибке при сбое ресурса. |
DscResourceDuration_d | Период выполнения ресурса DSC в секундах. |
SourceSystem | Определяет, как журналы Azure Monitor собирали данные. Всегда имеет значение Azure для системы диагностики Azure. |
ResourceId | Идентификатор учетной записи службы автоматизации Azure. |
ResultDescription | Описание для этой операции. |
SubscriptionId | Идентификатор подписки Azure (GUID) для учетной записи службы автоматизации. |
ResourceGroup | имя группы ресурсов для учетной записи службы автоматизации; |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Идентификатор корреляции отчета о соответствии. |
Следующие шаги
- Общие сведения см. в статье Обзор State Configuration службы автоматизации Azure.
- Чтобы приступить к работе со службой State Configuration службы автоматизации Azure, см. сведения в этой статье.
- Сведения о компилировании конфигураций DSC, которые затем можно назначить целевым узлам, см. в статье Компилирование конфигураций DSC в службе State Configuration службы автоматизации Azure.
- Справочник по командлетам PowerShell см. в документации по Az.Automation.
- Сведения о ценах см. на странице с расценками для службы настройки состояния службы автоматизации Azure.
- Пример использования служба автоматизации Azure State Configuration в конвейере непрерывного развертывания см. в статье "Настройка непрерывного развертывания с помощью Шоколада".
- Чтобы узнать больше о том, как создавать различные поисковые запросы и просматривать журналы заданий State Configuration службы автоматизации с помощью журналов Azure Monitor, ознакомьтесь со статьей Основные сведения о поисках по журналам Azure Monitor.
- Чтобы узнать больше о журналах Azure Monitor и источниках сбора данных, см. статью Общие сведения о сборе данных службы хранилища Azure на платформе журналов Azure Monitor.