Integración de Azure Automation State Configuration con los registros de Azure Monitor
Nota:
State Configuration de Azure Automation se retirará el 30 de septiembre de 2027. Realice la transición a Azure Machine Configuration para esa fecha. Para obtener más información, vea la entrada de blog del anuncio. El servicio Azure Machine Configuration combina características de la extensión DSC, Azure Automation State Configuration y las características que más solicitan los clientes en sus comentarios. Azure Machine Configuration también incluye compatibilidad con las máquinas híbridas mediante servidores habilitados para Arc.
Precaución
DSC de Automatización de Azure para Linux se ha retirado el 30 de septiembre de 2023. Para obtener más información, consulte el anuncio.
Azure Automation State Configuration conserva los datos de estado del nodo durante 30 días. Puede enviar los datos de estado del nodo a los registros de Azure Monitor si prefiere conservar esos datos durante un período más largo. El estado de cumplimiento se puede ver en Azure Portal, o con PowerShell, tanto para los nodos como para los recursos de DSC individuales en las configuraciones de los nodos.
Los registros de Azure Monitor proporcionan mayor visibilidad operativa para los datos de Automation State Configuration y pueden ayudar a resolver incidentes con mayor rapidez. Con los registros de Azure Monitor, puede:
- Obtener información de cumplimiento de nodos administrados y recursos individuales.
- Desencadenar un correo electrónico o una alerta basados en el estado de cumplimiento.
- Escribir consultas avanzadas en los nodos administrados.
- Correlacionar el estado de cumplimiento en las cuentas de Automation.
- Usar vistas personalizadas y consultas de búsqueda para visualizar los resultados de runbook, el estado del trabajo de runbook y otras métricas o indicadores clave relacionados.
Nota:
Este artículo se ha actualizado recientemente para usar el término registros de Azure Monitor en lugar de Log Analytics. Los datos de registro siguen almacenándose en un área de trabajo de Log Analytics y siguen recopilándose y analizándose por el mismo servicio de Log Analytics. Estamos actualizando la terminología para reflejar mejor el rol de los registros de Azure Monitor. Consulte Azure Monitor terminology changes (Cambios en la terminología de Azure Monitor) para obtener más información.
Requisitos previos
Para empezar a enviar los informes de Automation State Configuration a los registros de Azure Monitor, necesita:
- El módulo de Az de PowerShell. Asegúrese de disponer de la versión más reciente. Si es necesario, ejecute
Update-Module -Name Az
. - Una cuenta de Azure Automation Para más información, consulte Introducción a Azure Automation.
- Un área de trabajo de Log Analytics. Para más información, consulte Introducción a los registros de Azure Monitor.
- Al menos un nodo de Azure Automation State Configuration. Para más información, consulte Incorporación de máquinas para administrarlas con State Configuration de Azure Automation.
- Módulo xDscDiagnostics, versión 2.7.0.0 o posterior. Para conocer los pasos necesarios para la instalación, consulte Solución de problemas de Desired State Configuration (DSC) de Azure Automation.
Configuración de la integración con registros de Azure Monitor
Para comenzar a importar datos de Azure Automation State Configuration en los registros de Azure Monitor, haga lo siguiente. Para los pasos a realizar en el portal, consulte Reenvío de datos de un trabajo de Azure Automation a registros de Azure Monitor.
En la máquina, inicie sesión en la suscripción a Azure con el cmdlet Connect-AzAccount de PowerShell y siga las instrucciones de la pantalla.
# 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>"
Proporcione un valor adecuado para las variables
automationAccount
con el nombre real de la cuenta de Automation yworkspaceName
con el nombre real del área de trabajo de Log Analytics. A continuación, ejecute el script.$automationAccount = "automationAccount" $law = "workspaceName"
Para obtener el identificador de recurso de la cuenta de Automation, ejecute los siguientes comandos de PowerShell.
# Find the ResourceId for the Automation account $AutomationResourceId = (Get-AzResource -ResourceType 'Microsoft.Automation/automationAccounts' | Where-Object {$_.Name -eq $automationAccount}).ResourceId
Para obtener el identificador de recurso del área de trabajo de Log Analytics, ejecute los siguientes comandos de PowerShell.
# Find the ResourceId for the Log Analytics workspace $WorkspaceResourceId = (Get-AzResource ` -ResourceType 'Microsoft.OperationalInsights/workspaces' | WHERE {$_.Name -eq $law}).ResourceId
Para configurar las opciones de diagnóstico en la cuenta de Automation para reenviar los datos de registro de estado del nodo de DSC a los registros de Azure Monitor, el siguiente cmdlet de PowerShell crea una configuración de diagnóstico con ese destino.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $true Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Si desea detener el reenvío de datos de registro de Azure Automation State Configuration a los registros de Azure Monitor, ejecute el siguiente cmdlet de PowerShell.
$setAzDiagnosticSettingSplat = @{ ResourceId = $AutomationResourceId WorkspaceId = $WorkspaceResourceId Enabled = $false Category = 'DscNodeStatus' } Set-AzDiagnosticSetting @setAzDiagnosticSettingSplat
Visualización de los registros de State Configuration
Puede buscar las operaciones de DSC en los registros de State Configuration buscando en los registros de Azure Monitor. Después de configurar la integración con los registros de Azure Monitor para los datos de Azure Automation State Configuration, vaya a la cuenta de Automation en Azure Portal. En Supervisión, seleccione Registros.
Cierre el cuadro de diálogo Consultas. Se abre el panel Búsqueda de registros con una región de consulta cuyo ámbito es el recurso de la cuenta de Automation. Los registros de las operaciones de DSC se almacenan en la tabla AzureDiagnostics
. Para buscar los nodos que no son compatibles, escriba la siguiente consulta.
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName contains "DSCNodeStatusData"
| where ResultType != "Compliant"
Detalles de filtrado:
- Filtre por
DscNodeStatusData
para devolver las operaciones de cada nodo de State Configuration. - Filtre por
DscResourceStatusData
para devolver las operaciones de cada recurso de DSC llamado en la configuración de nodo aplicada a ese recurso. - Filtre por
DscResourceStatusData
para devolver información de errores de los recursos de DSC con errores.
Para más información sobre la creación de consultas de registros para buscar datos, consulte Introducción a las consultas de registro en Azure Monitor.
Envío de un correo electrónico cuando se produce un error en cualquier comprobación de cumplimiento de State Configuration
Vuelva a la consulta creada anteriormente.
Haga clic en el botón + Nueva regla de alertas para iniciar el flujo de creación de alertas.
En la consulta siguiente, reemplace
NODENAME
por el nombre real del nodo administrado y pegue la consulta revisada en el cuadro de texto Consulta de búsqueda:AzureDiagnostics | where Category == "DscNodeStatus" | where NodeName_s == "NODENAME" | where OperationName == "DscNodeStatusData" | where ResultType == "Failed"
Si configura registros para más de una cuenta o suscripción de Automation, puede agrupar las alertas por suscripción y cuenta de Automation. Derive el nombre de la cuenta de Automation de la propiedad
Resource
en los resultados de la búsqueda de registros deDscNodeStatusData
.Consulte Creación, visualización y administración de alertas de métricas mediante Azure Monitor para completar los pasos restantes.
Búsqueda de recursos de DSC con errores en todos los nodos
Una ventaja de usar los registros de Azure Monitor es que puede buscar comprobaciones con errores en todos los nodos. Para buscar todas las instancias de errores, use la consulta siguiente:
AzureDiagnostics
| where Category == "DscNodeStatus"
| where OperationName == "DscResourceStatusData"
| where ResultType == "Failed"
Visualización del historial de estado del nodo de DSC
Para visualizar el historial de estado del nodo de DSC con el paso del tiempo, puede usar esta consulta:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where Category == "DscNodeStatus"
| where ResultType != "started"
| summarize count() by ResultType
Esta consulta muestra un gráfico del estado del nodo con el paso del tiempo.
Registros de Azure Monitor
Diagnósticos de Azure Automation crea dos categorías de registros en los registros de Azure Monitor:
- Datos de estado del nodo (
DscNodeStatusData
) - Datos de estado del recurso (
DscResourceStatusData
)
DscNodeStatusData
Propiedad | Descripción |
---|---|
TimeGenerated | Fecha y hora en que se ejecutó la comprobación de cumplimiento. |
OperationName | DscNodeStatusData . |
ResultType | Valor que indica si el nodo es conforme. |
NodeName_s | El nombre del nodo administrado. |
NodeComplianceStatus_s | Valor de estado que especifica si el nodo es conforme. |
DscReportStatus | Valor de estado que indica si la comprobación de cumplimiento se ejecutó correctamente. |
ConfigurationMode | El modo que se usa para aplicar la configuración al nodo. Los valores posibles son:
|
HostName_s | El nombre del nodo administrado. |
IPAddress | La dirección IPv4 del nodo administrado. |
Category | DscNodeStatus . |
Resource | El nombre de la cuenta de Azure Automation. |
Tenant_g | El GUID que identifica al inquilino del autor de la llamada. |
NodeId_g | GUID que identifica el nodo administrado. |
DscReportId_g | GUID que identifica el informe. |
LastSeenTime_t | Fecha y hora en que el informe se vio por última vez. |
ReportStartTime_t | Fecha y hora en que el informe se inició. |
ReportEndTime_t | Fecha y hora en que el informe se completó. |
NumberOfResources_d | El número de recursos de DSC que se llama en la configuración que se aplica al nodo. |
SourceSystem | El sistema de origen que identifica cómo se han recopilado los datos de los registros de Azure Monitor. Siempre Azure para Azure Diagnostics. |
ResourceId | El identificador de recurso de la cuenta de Azure Automation. |
ResultDescription | La descripción del recurso de esta operación. |
SubscriptionId | Identificador de la suscripción de Azure (GUID) para la cuenta de Automation. |
Grupo de recursos | nombre del grupo de recursos de la cuenta de Automation. |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Identificador de correlación del informe de cumplimiento. |
DscResourceStatusData
Propiedad | Descripción |
---|---|
TimeGenerated | Fecha y hora en que se ejecutó la comprobación de cumplimiento. |
OperationName | DscResourceStatusData . |
ResultType | Si el recurso es compatible. |
NodeName_s | El nombre del nodo administrado. |
Category | DscNodeStatus. |
Resource | El nombre de la cuenta de Azure Automation. |
Tenant_g | El GUID que identifica al inquilino del autor de la llamada. |
NodeId_g | GUID que identifica el nodo administrado. |
DscReportId_g | GUID que identifica el informe. |
DscResourceId_s | El nombre de la instancia del recurso de DSC. |
DscResourceName_s | El nombre del recurso de DSC. |
DscResourceStatus_s | Si el recurso de DSC es compatible. |
DscModuleName_s | El nombre del módulo de PowerShell que contiene el recurso de DSC. |
DscModuleVersion_s | La versión del módulo de PowerShell que contiene el recurso de DSC. |
DscConfigurationName_s | El nombre de la configuración aplicada al nodo. |
ErrorCode_s | El código de error si se produjo un error en el recurso. |
ErrorMessage_s | El mensaje de error si se produjo un error en el recurso. |
DscResourceDuration_d | El tiempo, en segundos, durante el que se ejecutó el recurso de DSC. |
SourceSystem | Cómo los registros de Azure Monitor recopilan los datos. Siempre Azure para Azure Diagnostics. |
ResourceId | El identificador de la cuenta de Azure Automation. |
ResultDescription | La descripción de esta operación. |
SubscriptionId | Identificador de la suscripción de Azure (GUID) para la cuenta de Automation. |
Grupo de recursos | nombre del grupo de recursos de la cuenta de Automation. |
ResourceProvider | MICROSOFT.AUTOMATION. |
ResourceType | AUTOMATIONACCOUNTS. |
CorrelationId | Identificador de correlación del informe de cumplimiento. |
Pasos siguientes
- Para obtener información general, consulte Información general de Azure Automation State Configuration.
- Para dar los primeros pasos, consulte Introducción a Azure Automation State Configuration.
- Para aprender a compilar configuraciones de DSC para poder asignarlas a los nodos de destino, consulte Compilación de configuraciones de DSC en Azure Automation State Configuration.
- Para obtener una referencia de los cmdlets de PowerShell, consulte Az.Automation.
- Para obtener información de precios, consulte Precios de State Configuration de Azure Automation.
- Para ver un ejemplo del uso de State Configuration de Azure Automation en una canalización de implementación continua, consulte Configuración de la implementación continua con Chocolatey.
- Para aprender a crear diferentes consultas de búsqueda y a revisar los registros de Automation State Configuration con los registros de Azure Monitor, consulte Búsquedas de registros en los registros de Azure Monitor.
- Para más información sobre los registros de Azure Monitor y los orígenes de recopilación de datos, consulte Introducción a la recopilación de datos de almacenamiento en los registros de Azure Monitor.