Share via


Usare la registrazione selettiva con un'azione script in Azure HDInsight

Log di Monitoraggio di Azure è un servizio di Monitoraggio di Azure che monitora gli ambienti cloud e locali. Il monitoraggio consente di mantenere la disponibilità e le prestazioni.

I log di Monitoraggio di Azure raccolgono i dati generati dalle risorse nel cloud, dalle risorse negli ambienti locali e da altri strumenti di monitoraggio. Usa i dati per fornire analisi tra più origini. Per ottenere l'analisi, abilitare la funzionalità di registrazione selettiva usando un'azione script per HDInsight nella portale di Azure.

Informazioni sulla registrazione selettiva

La registrazione selettiva fa parte del sistema di monitoraggio complessivo in Azure. Dopo aver connesso il cluster a un'area di lavoro Log Analytics e aver abilitato la registrazione selettiva, è possibile visualizzare log e metriche come i log di sicurezza di HDInsight, Yarn Resource Manager e le metriche di sistema. È possibile monitorare i carichi di lavoro e vedere come influiscono sulla stabilità del cluster.

La registrazione selettiva consente di abilitare o disabilitare tutte le tabelle o di abilitare le tabelle selezionate nell'area di lavoro Log Analytics. È possibile modificare il tipo di origine per ogni tabella.

Nota

Se Log Analytics viene reinstallato in un cluster, sarà necessario disabilitare di nuovo tutte le tabelle e i tipi di log. La reinstallazione reimposta tutti i file di configurazione sullo stato originale.

Considerazioni sulle azioni script

  • Il sistema di monitoraggio usa il daemon del server di metadati (un agente di monitoraggio) e Fluentd per raccogliere i log usando un livello di registrazione unificato.
  • La registrazione selettiva usa un'azione script per disabilitare o abilitare le tabelle e i relativi tipi di log. Poiché la registrazione selettiva non apre nuove porte o modifica le impostazioni di sicurezza esistenti, non vengono apportate modifiche alla sicurezza.
  • L'azione script viene eseguita in parallelo in tutti i nodi specificati e modifica i file di configurazione per disabilitare o abilitare le tabelle e i relativi tipi di log.

Prerequisiti

  • Un'area di lavoro Log Analytics. È possibile considerare questa area di lavoro come un ambiente univoco dei log di Monitoraggio di Azure con il proprio repository di dati, origini dati e soluzioni. Per istruzioni, vedere Creare un'area di lavoro Log Analytics.
  • Un cluster HDInsight di Azure. Attualmente, è possibile usare la funzionalità di registrazione selettiva con i tipi di cluster HDInsight seguenti:
    • Hadoop
    • hbase
    • Interactive Query
    • Spark

Per istruzioni su come creare un cluster HDInsight, vedere Introduzione ad Azure HDInsight.

Abilitare o disabilitare i log usando un'azione script per più tabelle e tipi di log

  1. Passare a Azioni script nel cluster e selezionare Invia nuovo per avviare il processo di creazione di un'azione script.

    Screenshot that shows the button for starting the process of creating a script action.

    Viene visualizzato il riquadro Invia azione script.

    Screenshot that shows the pane for submitting a script action.

  2. Per il tipo di script selezionare Personalizzato.

  3. Denominare lo script. Ad esempio: disabilitare due tabelle e due origini.

  4. L'URI dello script Bash deve essere un collegamento a selectiveLoggingScript.sh.

  5. Selezionare tutti i tipi di nodo che si applicano per il cluster. Le opzioni sono nodo head, nodo di lavoro e nodo ZooKeeper.

  6. Definire i parametri. Ad esempio:

    • Scintilla: spark HDInsightSparkLogs:SparkExecutorLog --disable
    • Interactive Query: interactivehive HDInsightSparkLogs:SparkExecutorLog --enable
    • Hadoop: hadoop HDInsightSparkLogs:SparkExecutorLog --disable
    • HBase: hbase HDInsightSparkLogs: HDInsightHBaseLogs --enable

    Per altre informazioni, vedere la sezione Sintassi dei parametri.

  7. Seleziona Crea.

  8. Dopo alcuni minuti, accanto alla cronologia delle azioni script viene visualizzato un segno di spunta verde. Significa che lo script è stato eseguito correttamente.

    Screenshot that shows a successful run of a script to enable tables and log types.

Le modifiche verranno visualizzate nell'area di lavoro Log Analytics.

Risoluzione dei problemi

Non vengono visualizzate modifiche nell'area di lavoro Log Analytics

Se si invia l'azione script ma non sono presenti modifiche nell'area di lavoro Log Analytics:

  1. In Dashboard selezionare Home di Ambari per controllare le informazioni di debug.

    Screenshot that shows the location of the Ambari home dashboard.

  2. Selezionare il pulsante Impostazioni.

    Screenshot that shows the Settings button.

  3. Selezionare l'esecuzione dello script più recente nella parte superiore dell'elenco delle operazioni in background.

    Screenshot that shows background operations.

  4. Verificare lo stato di esecuzione dello script in tutti i nodi singolarmente.

    Screenshot that shows the script run status for hosts.

  5. Verificare che la sintassi dei parametri della sezione della sintassi dei parametri sia corretta.

  6. Verificare che l'area di lavoro Log Analytics sia connessa al cluster e che il monitoraggio di Log Analytics sia attivato.

  7. Verificare di aver selezionato l'azione Persist this script to rerun when new nodes are added to the cluster checkbox for the script action that you run.

    Screenshot that shows the checkbox for persisting a script action.

  8. Verificare se un nuovo nodo è stato aggiunto di recente al cluster.

    Nota

    Affinché lo script venga eseguito nel cluster più recente, lo script deve essere persistente.

  9. Assicurarsi di aver selezionato tutti i tipi di nodo desiderati per l'azione script.

    Screenshot that shows selected node types.

Azione script non riuscita

Se l'azione script mostra uno stato di errore nella cronologia delle azioni script:

  1. Verificare che la sintassi dei parametri della sezione della sintassi dei parametri sia corretta.
  2. Verificare che il collegamento di script sia corretto. Deve essere: https://hdiconfigactions.blob.core.windows.net/log-analytics-patch/selectiveLoggingScripts/selectiveLoggingScript.sh.

Nomi di tabella

Cluster Spark

I nomi di tabella seguenti sono per tipi di log diversi (origini) all'interno delle tabelle Spark.

Numero di origine Nome tabella Tipi di log Descrizione
1. Avvisi HDInsightAmbariCluster Nessun tipo di log Questa tabella contiene avvisi del cluster Ambari da ogni nodo del cluster (ad eccezione dei nodi perimetrali). Ogni avviso è un record in questa tabella.
2. Metriche di HDInsightAmbariSystem Nessun tipo di log Questa tabella contiene le metriche di sistema raccolte da Ambari. Le metriche provengono ora da ogni nodo del cluster (ad eccezione dei nodi perimetrali) anziché solo dai due nodi head. Ogni metrica è ora una colonna e ogni metrica viene segnalata una volta per ogni record.
3. HDInsightHadoopAnd YarnLogs Nodo head: MRJobSummary, Resource Manager, nodo TimelineServer Worker: NodeManager Questa tabella contiene tutti i log generati dai framework Hadoop e YARN.
4. HDInsightSecurityLogs AmbariAuditLog, AuthLog Questa tabella contiene i record dei log di controllo e autenticazione di Ambari.
5. HDInsightSparkLogs Nodo head: JupyterLog, LivyLog, SparkThriftDriverLog Nodo di lavoro: SparkExecutorLog, SparkDriverLog Questa tabella contiene tutti i log correlati a Spark e ai relativi componenti: Livy e Jupyter.
6. HDInsightHadoopAnd YarnMetrics Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hadoop e YARN. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti, oltre ad altre metriche considerate importanti. Sono state aggiunte le metriche server sequenza temporale, Gestione nodi e Server cronologia processi. Contiene una metrica per ogni record.
7. HDInsightOozieLogs Oozie Questa tabella contiene tutti i log generati dal framework Oozie.

Cluster Interactive Query

I nomi di tabella seguenti sono relativi a tipi di log (origini) diversi all'interno delle tabelle Interactive Query.

Numero di origine Nome tabella Tipi di log Descrizione
1. HDInsightAmbariClusterAlerts Nessun tipo di log Questa tabella contiene avvisi del cluster Ambari da ogni nodo del cluster (ad eccezione dei nodi perimetrali). Ogni avviso è un record in questa tabella.
2. Metriche di HDInsightAmbariSystem Nessun tipo di log Questa tabella contiene le metriche di sistema raccolte da Ambari. Le metriche provengono ora da ogni nodo del cluster (ad eccezione dei nodi perimetrali) anziché solo dai due nodi head. Ogni metrica è ora una colonna e ogni metrica viene segnalata una volta per ogni record.
3. HDInsightHadoopAndYarnLogs Nodo head: MRJobSummary, Resource Manager, nodo TimelineServer Worker: NodeManager Questa tabella contiene tutti i log generati dai framework Hadoop e YARN.
4. HDInsightHadoopAndYarnMetrics Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hadoop e YARN. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti, oltre ad altre metriche considerate importanti. Sono state aggiunte le metriche server sequenza temporale, Gestione nodi e Server cronologia processi. Contiene una metrica per ogni record.
5. HDInsightHiveAndLLAPLogs Nodo head: InteractiveHiveHSILog, InteractiveHiveMetastoreLog, ZeppelinLog Questa tabella contiene i log generati da Hive, LLAP e i relativi componenti: WebHCat e Zeppelin.
6. HDInsightHiveAndLLAPmetrics Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hive e LLAP. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti. Contiene una metrica per ogni record.
7. HDInsightHiveTezAppStats Nessun tipo di log
8. HDInsightSecurityLogs Nodo head: AmbariAuditLog, nodo ZooKeeper AuthLog , nodo del ruolo di lavoro: AuthLog Questa tabella contiene i record dei log di controllo e autenticazione di Ambari.

Cluster HBase

I nomi di tabella seguenti sono relativi a tipi di log diversi (origini) all'interno delle tabelle HBase.

Numero di origine Nome tabella Tipi di log Descrizione
1. HDInsightAmbariClusterAlerts Nessun altro tipo di log Questa tabella contiene avvisi del cluster Ambari da ogni nodo del cluster (ad eccezione dei nodi perimetrali). Ogni avviso è un record in questa tabella.
2. Metriche di HDInsightAmbariSystem Nessun altro tipo di log Questa tabella contiene le metriche di sistema raccolte da Ambari. Le metriche provengono ora da ogni nodo del cluster (ad eccezione dei nodi perimetrali) anziché solo dai due nodi head. Ogni metrica è ora una colonna e ogni metrica viene segnalata una volta per ogni record.
3. HDInsightHadoopAndYarnLogs Nodo head: MRJobSummary, Resource Manager, nodo TimelineServer Worker: NodeManager Questa tabella contiene tutti i log generati dai framework Hadoop e YARN.
4. HDInsightSecurityLogs Nodo head: AmbariAuditLog, nodo del ruolo di lavoro AuthLog: nodo ZooKeeper AuthLog: AuthLog Questa tabella contiene i record dei log di controllo e autenticazione di Ambari.
5. HDInsightHBaseLogs Nodo head: HDFSGarbageCollectorLog, nodo del ruolo di lavoro HDFSNameNodeLog: PhoenixServerLog, HBaseRegionServerLog, nodo HBaseRestServerLog ZooKeeper: HBaseMasterLog Questa tabella contiene i log di HBase e i relativi componenti: Phoenix e HDFS.
6. HDInsightHBaseMetrics Nessun tipo di log Questa tabella contiene le metriche JMX di HBase. Contiene tutte le stesse metriche JMX delle tabelle elencate nella colonna Schema precedente. Al contrario delle tabelle precedenti, ogni riga contiene una metrica.
7. Metriche di HDInsightHadoopAndYarn Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hadoop e YARN. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti, oltre ad altre metriche considerate importanti. Sono state aggiunte le metriche server sequenza temporale, Gestione nodi e Server cronologia processi. Contiene una metrica per ogni record.

Cluster Hadoop

I nomi di tabella seguenti sono relativi a tipi di log (origini) diversi all'interno delle tabelle Hadoop.

Numero di origine Nome tabella Tipi di log Descrizione
1. HDInsightAmbariClusterAlerts Nessun tipo di log Questa tabella contiene avvisi del cluster Ambari da ogni nodo del cluster (ad eccezione dei nodi perimetrali). Ogni avviso è un record in questa tabella.
2. Metriche di HDInsightAmbariSystem Nessun tipo di log Questa tabella contiene le metriche di sistema raccolte da Ambari. Le metriche provengono ora da ogni nodo del cluster (ad eccezione dei nodi perimetrali) anziché solo dai due nodi head. Ogni metrica è ora una colonna e ogni metrica viene segnalata una volta per ogni record.
3. HDInsightHadoopAndYarnLogs Nodo head: MRJobSummary, Resource Manager, nodo TimelineServer Worker: NodeManager Questa tabella contiene tutti i log generati dai framework Hadoop e YARN.
4. HDInsightHadoopAndYarnMetrics Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hadoop e YARN. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti, oltre ad altre metriche considerate importanti. Sono state aggiunte le metriche server sequenza temporale, Gestione nodi e Server cronologia processi. Contiene una metrica per ogni record.
5. HDInsightHiveAndLLAPLogs Nodo head: HiveMetastoreLog, HiveServer2Log, WebHcatLog Questa tabella contiene i log generati da Hive, LLAP e i relativi componenti: WebHCat e Zeppelin.
6. Metriche Hive e LLAP di HDInsight Nessun tipo di log Questa tabella contiene le metriche JMX dei framework Hive e LLAP. Contiene tutte le stesse metriche JMX delle tabelle dei log personalizzati precedenti. Contiene una metrica per ogni record.
7. Log di sicurezza di HDInsight Nodo head: AmbariAuditLog, nodo ZooKeeper AuthLog: AuthLog Questa tabella contiene i record dei log di controllo e autenticazione di Ambari.

Sintassi dei parametri

I parametri definiscono il tipo di cluster, i nomi delle tabelle, i nomi di origine e l'azione.

Screenshot that shows the parameter syntax box.

Un parametro contiene tre parti:

  • Tipo di cluster
  • Tabelle e tipi di log
  • Azione ( --disable o --enable)

Sintassi per più tabelle

Quando sono presenti più tabelle, le tabelle sono separate da una virgola. Ad esempio:

spark HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --disable

hbase HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --enable

Sintassi per più tipi di origine o tipi di log

Quando si hanno più tipi di origine o tipi di log, questi sono separati da uno spazio.

Per disabilitare un'origine, scrivere il nome della tabella contenente i tipi di log, seguito da due punti e quindi dal nome del tipo di log reale:

TableName : LogTypeName

Si supponga, ad esempio, che spark HDInsightSecurityLogs sia una tabella con due tipi di log: AmbariAuditLog e AuthLog. Per disabilitare entrambi i tipi di log, la sintassi corretta sarà:

spark HDInsightSecurityLogs: AmbariAuditLog AuthLog --disable

Sintassi per più tabelle e tipi di origine

Se è necessario disabilitare due tabelle e due tipi di origine, usare la sintassi seguente:

  • Spark: InteractiveHiveMetastoreLog tipo di log nella HDInsightHiveAndLLAPLogs tabella
  • Hbase: InteractiveHiveHSILog tipo di log nella HDInsightHiveAndLLAPLogs tabella
  • Hadoop: HDInsightHiveAndLLAPMetrics tabella
  • Hadoop: HDInsightHiveTezAppStats tabella

Separare le tabelle con una virgola. Denotare le origini usando due punti dopo il nome della tabella in cui risiedono.

La sintassi dei parametri corretta per questi casi è:

interactivehive HDInsightHiveAndLLAPLogs: InteractiveHiveMetastoreLog, HDInsightHiveAndLLAPMetrics, HDInsightHiveTezAppStats, HDInsightHiveAndLLAPLogs: InteractiveHiveHSILog --enable 

Passaggi successivi