Share via


Selectieve logboekregistratie gebruiken met een scriptactie voor Azure Monitor Agent (AMA) in Azure HDInsight

Azure Monitor-logboeken is een Azure Monitor-service die uw cloud- en on-premises omgevingen bewaakt. De bewaking helpt hun beschikbaarheid en prestaties te behouden.

Met Azure Monitor-logboeken worden gegevens verzameld die zijn gegenereerd door resources in uw cloud, resources in on-premises omgevingen en andere bewakingsprogramma's. De gegevens worden gebruikt om analyses uit te voeren in meerdere bronnen. Als u de analyse wilt ophalen, schakelt u de functie voor selectieve logboekregistratie in met behulp van een scriptactie voor HDInsight in Azure Portal.

Over selectieve logboekregistratie

Selectieve logboekregistratie maakt deel uit van het algehele bewakingssysteem in Azure. Nadat u uw cluster hebt verbonden met een Log Analytics-werkruimte en selectieve logboekregistratie hebt ingeschakeld, kunt u logboeken en metrische gegevens zien, zoals HDInsight-beveiligingslogboeken, Yarn Resource Manager en metrische systeemgegevens. U kunt workloads bewaken en zien hoe deze van invloed zijn op clusterstabiliteit.

Met selectief logboekregistratie kunt u alle tabellen in- of uitschakelen, of geselecteerde tabellen inschakelen in de Log Analytics-werkruimte. U kunt het brontype voor elke tabel aanpassen.

Notitie

Als Log Analytics opnieuw is geïnstalleerd in een cluster, moet u alle tabellen en logboektypen opnieuw uitschakelen. Opnieuw installeren stelt alle configuratiebestanden opnieuw in op de oorspronkelijke staat.

Overwegingen voor scriptacties

  • Het bewakingssysteem maakt gebruik van de Metadata Server-daemon (een bewakingsagent) en Fluentd voor het verzamelen van logboeken met behulp van een uniforme logboekregistratielaag.
  • Selectief logboekregistratie maakt gebruik van een scriptactie om tabellen en de bijbehorende logboektypen uit te schakelen of in te schakelen. Omdat selectieve logboekregistratie geen nieuwe poorten opent of bestaande beveiligingsinstellingen wijzigt, zijn er geen beveiligingswijzigingen.
  • De scriptactie wordt parallel uitgevoerd op alle opgegeven knooppunten en wijzigt de configuratiebestanden voor het uitschakelen of inschakelen van tabellen en hun logboektypen.

Vereisten

  • Een Log Analytics-werkruimte. U kunt deze werkruimte beschouwen als een unieke Azure Monitor-logboekomgeving met een eigen gegevensopslagplaats, gegevensbronnen en oplossingen. Zie Een Log Analytics-werkruimte maken voor instructies.
  • Een Azure HDInsight-cluster. Op dit moment kunt u de functie voor selectieve logboekregistratie gebruiken met de volgende HDInsight-clustertypen:
    • Hadoop
    • HBase
    • Interactive Query
    • Spark

Zie Aan de slag met Azure HDInsight voor instructies over het maken van een HDInsight-cluster.

Logboeken in- of uitschakelen met behulp van een scriptactie voor meerdere tabellen en logboektypen

  1. Ga naar Scriptacties in uw cluster en selecteer Nieuw verzenden om het proces voor het maken van een scriptactie te starten.

    Schermopname van de knop voor het starten van het proces voor het maken van een scriptactie.

    Het deelvenster Scriptactie verzenden wordt weergegeven.

    Schermopname van het deelvenster voor het verzenden van een scriptactie.

  2. Selecteer Aangepast voor het scripttype.

  3. Geef het script een naam. Bijvoorbeeld: Schakel twee tabellen en twee bronnen uit.

  4. De Bash-script-URI moet een koppeling naar selectiveLoggingScript.sh zijn.

  5. Selecteer alle knooppunttypen die van toepassing zijn op het cluster. De opties zijn hoofdknooppunt, werkknooppunt en ZooKeeper-knooppunt.

  6. Definieer de parameters. Voorbeeld:

    • Vonk: spark HDInsightSparkLogs:SparkExecutorLog --disable
    • Interactieve query: interactivehive HDInsightHadoopAndYarnLogs:NodeManager --enable
    • Hadoop: hadoop HDInsightHiveAndLLAPLogs:HiveServer2Log --disable
    • HBase: hbase HDInsightHBaseLogs:HBaseRegionServerLog --enable

    Zie de sectie Parametersyntaxis voor meer informatie.

  7. Selecteer Maken.

  8. Na een paar minuten wordt er een groen vinkje weergegeven naast uw scriptactiegeschiedenis. Dit betekent dat het script is uitgevoerd.

    Schermopname van een geslaagde uitvoering van een script om tabellen en logboektypen in te schakelen.

U ziet uw wijzigingen in de Log Analytics-werkruimte.

Probleemoplossing

Er worden geen wijzigingen weergegeven in de Log Analytics-werkruimte

Als u uw scriptactie indient, maar er geen wijzigingen zijn in de Log Analytics-werkruimte:

  1. Selecteer onder Dashboards de startpagina van Ambari om de foutopsporingsgegevens te controleren.

    Schermopname van de locatie van het Ambari-startpaginadashboard.

  2. Selecteer de knop Instellingen .

    Schermopname van de knop Instellingen.

  3. Selecteer het meest recente script dat boven aan de lijst met achtergrondbewerkingen wordt uitgevoerd.

    Schermopname van achtergrondbewerkingen.

  4. Controleer de uitvoeringsstatus van het script in alle knooppunten afzonderlijk.

    Schermopname van de uitvoeringsstatus van het script voor hosts.

  5. Controleer of de parametersyntaxis uit de sectie parametersyntaxis juist is.

  6. Controleer of de Log Analytics-werkruimte is verbonden met het cluster en of Log Analytics-bewaking is ingeschakeld.

  7. Controleer of u de scriptactie Behouden hebt geselecteerd om opnieuw uit te voeren wanneer er nieuwe knooppunten aan het cluster worden toegevoegd voor de scriptactie die u hebt uitgevoerd.

    Schermopname van het selectievakje voor het persistent maken van een scriptactie.

  8. Kijk of er onlangs een nieuw knooppunt is toegevoegd aan het cluster.

    Notitie

    Het script moet blijven bestaan om het script uit te voeren in het meest recente cluster.

  9. Zorg ervoor dat u alle knooppunttypen hebt geselecteerd die u voor de scriptactie wilt gebruiken.

    Schermopname van geselecteerde knooppunttypen.

De scriptactie is mislukt

Als in de scriptactie een foutstatus wordt weergegeven in de scriptactiegeschiedenis:

  1. Controleer of de parametersyntaxis uit de sectie parametersyntaxis juist is.
  2. Controleer of de scriptkoppeling juist is. Het zou moeten zijn: https://hdiconfigactions.blob.core.windows.net/log-analytics-patch/selectiveLoggingScriptsAma/selectiveLoggingScript.sh.

Tabelnamen

Zie Azure Monitor-logboeken voor een volledige lijst met tabelnamen voor verschillende logboektypen (bronnen).

Parametersyntaxis

Parameters definiëren het clustertype, tabelnamen, bronnamen en actie.

Schermopname van het vak parametersyntaxis.

Een parameter bevat drie onderdelen:

  • Clustertype
  • Tabellen en logboektypen
  • Actie (of --disable --enable)

Syntaxis voor meerdere tabellen

Wanneer u meerdere tabellen hebt, worden deze gescheiden door een komma. Voorbeeld:

spark HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --disable

hbase HDInsightSecurityLogs, HDInsightAmbariSystemMetrics --enable

Syntaxis voor meerdere brontypen of logboektypen

Wanneer u meerdere brontypen of logboektypen hebt, worden deze gescheiden door een spatie.

Als u een bron wilt uitschakelen, schrijft u de tabelnaam die de logboektypen bevat, gevolgd door een dubbele punt en vervolgens de naam van het echte logboektype:

TableName : LogTypeName

Stel dat dit spark HDInsightSecurityLogs een tabel is met twee logboektypen: AmbariAuditLog en AuthLog. Als u beide logboektypen wilt uitschakelen, is de juiste syntaxis:

spark HDInsightSecurityLogs: AmbariAuditLog AuthLog --disable

Syntaxis voor meerdere tabellen en brontypen

Als u twee tabellen en twee brontypen wilt uitschakelen, gebruikt u de volgende syntaxis:

  • Spark: InteractiveHiveMetastoreLog logboektype in de HDInsightHiveAndLLAPLogs tabel
  • Hbase: InteractiveHiveHSILog logboektype in de HDInsightHiveAndLLAPLogs tabel
  • Hadoop: HDInsightHiveAndLLAPMetrics tabel
  • Hadoop: HDInsightHiveTezAppStats tabel

Scheid de tabellen met een komma. Geef bronnen aan met behulp van een dubbele punt na de tabelnaam waarin ze zich bevinden.

De juiste parametersyntaxis voor deze gevallen is:

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

Volgende stappen