Uso del registro selectivo con una acción de script para Azure Monitor Agent (AMA) en Azure HDInsight
Los registros de Azure Monitor son un servicio de Azure Monitor que supervisa los entornos locales y en la nube. La supervisión ayuda a mantener su disponibilidad y rendimiento.
Los registros de Azure Monitor recopilan los datos generados por los recursos en la nube, los recursos en el entorno local y otras herramientas de supervisión. Usa los datos para proporcionar análisis entre varios orígenes. Para obtener el análisis, habilite la característica de registro selectivo mediante una acción de script para HDInsight en Azure Portal.
Acerca del registro selectivo
El registro selectivo forma parte del sistema de supervisión general de Azure. Después de conectar el clúster a un área de trabajo de Log Analytics y habilitar el registro selectivo, puede ver registros y métricas como registros de seguridad de HDInsight, Yarn Resource Manager y métricas del sistema. Puede supervisar las cargas de trabajo y ver cómo afectan a la estabilidad del clúster.
El registro selectivo le permite habilitar o deshabilitar todas las tablas, o bien habilitar las tablas seleccionadas, en el área de trabajo de Log Analytics. Puede ajustar el tipo de origen de cada tabla.
Nota:
Si Log Analytics se vuelve a instalar en un clúster, tendrá que volver a deshabilitar todas las tablas y los tipos de registro. La reinstalación restablece todos los archivos de configuración a su estado original.
Consideraciones sobre las acciones de script
- El sistema de supervisión usa el demonio del servidor de metadatos (un agente de supervisión) y Fluentd para recopilar registros mediante una capa de registro unificada.
- El registro selectivo usa una acción de script para deshabilitar o habilitar tablas y sus tipos de registro. Puesto que el registro selectivo no abre ningún puerto nuevo ni cambia ninguna configuración de seguridad existente, no hay cambios de seguridad.
- La acción de script se ejecuta en paralelo en todos los nodos especificados y cambia los archivos de configuración para deshabilitar o habilitar tablas y sus tipos de registro.
Prerrequisitos
- Un área de trabajo de Log Analytics. Considere el área de trabajo como un entorno de registros de Azure Monitor único, con su propio repositorio de datos, sus propios orígenes de datos y sus propias soluciones. Para obtener instrucciones, consulte Creación de un área de trabajo de Log Analytics.
- Un clúster de HDInsight de Azure. Actualmente, puede usar la característica de registro selectivo con los siguientes tipos de clúster de HDInsight:
- Hadoop
- HBase
- Interactive Query
- Spark
Para obtener instrucciones sobre cómo crear un clúster de HDInsight, consulte Introducción a Azure HDInsight.
Habilitación o deshabilitación de registros mediante una acción de script para varias tablas y tipos de registro
Vaya a Acciones de script en el clúster y seleccione Enviar nueva para iniciar el proceso de creación de una acción de script.
Aparece el panel Enviar acción de script.
En el tipo de script, seleccione Personalizado.
Ponga un nombre al script. Por ejemplo: Deshabilitar dos tablas y dos orígenes.
El URI del script de Bash debe ser un vínculo a selectiveLoggingScript.sh.
Seleccione todos los tipos de nodo que se aplican al clúster. Las opciones son el nodo principal, el nodo de trabajo y el nodo de ZooKeeper.
Defina los parámetros. Por ejemplo:
- Spark:
spark HDInsightSparkLogs:SparkExecutorLog --disable
- Interactive Query:
interactivehive HDInsightHadoopAndYarnLogs:NodeManager --enable
- Hadoop:
hadoop HDInsightHiveAndLLAPLogs:HiveServer2Log --disable
- HBase:
hbase HDInsightHBaseLogs:HBaseRegionServerLog --enable
Para obtener más información, consulte la sección Sintaxis de los parámetros.
- Spark:
Seleccione Crear.
Al cabo de unos minutos, aparece una marca de verificación verde junto al historial de acciones del script. Significa que el script se ha ejecutado correctamente.
Verá los cambios en el área de trabajo de Log Analytics.
Solución de problemas
No aparecen cambios en el área de trabajo de Log Analytics
Si envía la acción de script, pero no hay ningún cambio en el área de trabajo de Log Analytics:
En Paneles, seleccione Inicio de Ambari para comprobar la información de depuración.
Seleccione Configuración.
Seleccione la ejecución de script más reciente en la parte superior de la lista de operaciones en segundo plano.
Compruebe el estado de ejecución del script en todos los nodos individualmente.
Compruebe que la sintaxis de los parámetros de la sección de sintaxis de parámetros es correcta.
Compruebe que el área de trabajo de Log Analytics está conectada al clúster y que la supervisión de Log Analytics está activada.
Compruebe que ha seleccionado la casilla Conservar esta acción de script para volver a ejecutarla cuando se agreguen nuevos nodos al clúster correspondiente a la acción de script que ha ejecutado.
Compruebe si recientemente se ha agregado un nuevo nodo al clúster.
Nota:
Para que el script se ejecute en el clúster más reciente, debe conservarse.
Asegúrese de que ha seleccionado todos los tipos de nodo que quería para la acción de script.
Se ha producido un error en la acción de script
Si la acción de script muestra un estado de error en el historial de acciones del script:
- Compruebe que la sintaxis de los parámetros de la sección de sintaxis de parámetros es correcta.
- Compruebe que el vínculo del script es correcto. Debe ser:
https://hdiconfigactions.blob.core.windows.net/log-analytics-patch/selectiveLoggingScriptsAma/selectiveLoggingScript.sh
.
Nombres de tabla
Para obtener una lista completa de los nombres de tabla para distintos tipos de registro (orígenes), consulte Tablas de registros de Azure Monitor.
Sintaxis de parámetros
Los parámetros definen el tipo de clúster, los nombres de tabla, los nombres de origen y la acción.
Un parámetro contiene tres elementos:
- Tipo de clúster
- Tablas y tipos de registro
- Acción (
--disable
o--enable
)
Sintaxis para varias tablas
Cuando tiene varias tablas, se separan con una coma. Por ejemplo:
spark HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --disable
hbase HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --enable
Sintaxis para varios tipos de origen o de registro
Cuando tiene varios tipos de origen o de registro, se separan con un espacio.
Para deshabilitar un origen, escriba el nombre de la tabla que contiene los tipos de registro seguido de dos puntos y, a continuación, el nombre del tipo de registro real:
TableName : LogTypeName
Por ejemplo, supongamos que spark HDInsightSecurityLogs
es una tabla que tiene dos tipos de registro: AmbariAuditLog
y AuthLog
. Para deshabilitar ambos tipos de registro, la sintaxis correcta sería la siguiente:
spark HDInsightSecurityLogs: AmbariAuditLog AuthLog --disable
Sintaxis para varias tablas y tipos de origen
Si necesita deshabilitar dos tablas y dos tipos de origen, use la sintaxis siguiente:
- Spark: tipo de registro
InteractiveHiveMetastoreLog
en la tablaHDInsightHiveAndLLAPLogs
- Hbase: tipo de registro
InteractiveHiveHSILog
en la tablaHDInsightHiveAndLLAPLogs
- Hadoop: tabla
HDInsightHiveAndLLAPMetrics
- Hadoop: tabla
HDInsightHiveTezAppStats
Separe las tablas con una coma. Denote los orígenes mediante dos puntos después del nombre de la tabla en la que residen.
La sintaxis de parámetros correcta para estos casos sería la siguiente:
interactivehive HDInsightHiveAndLLAPLogs: InteractiveHiveMetastoreLog, HDInsightHiveAndLLAPMetrics, HDInsightHiveTezAppStats, HDInsightHiveAndLLAPLogs: InteractiveHiveHSILog --enable