Use Azure Monitor logs to monitor HDInsight clusters (Utilizar registos do Azure Monitor para monitorizar clusters do HDInsight)

Saiba como habilitar os logs do Azure Monitor para monitorar operações de cluster Hadoop no HDInsight. E como adicionar uma solução de monitoramento HDInsight.

Os logs do Azure Monitor são um serviço do Azure Monitor que monitora seus ambientes de nuvem e locais. O monitoramento é para manter sua disponibilidade e desempenho. Ele coleta dados gerados por recursos em sua nuvem, ambientes locais e de outras ferramentas de monitoramento. Os dados são usados para fornecer análises em várias fontes.

Nota

Este artigo foi atualizado recentemente para usar o termo logs do Azure Monitor em vez de Log Analytics. Os dados de log ainda são armazenados em um espaço de trabalho do Log Analytics e ainda são coletados e analisados pelo mesmo serviço do Log Analytics. Estamos atualizando a terminologia para refletir melhor a função dos logs no Azure Monitor. Consulte Alterações de terminologia do Azure Monitor para obter detalhes.

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Importante

A nova experiência do Azure Monitor está disponível em todas as regiões como um recurso de visualização.

Pré-requisitos

  • Uma área de trabalho do Log Analytics. Você pode pensar nesse espaço de trabalho como um ambiente de logs exclusivo do Azure Monitor com seu próprio repositório de dados, fontes de dados e soluções. Para obter instruções, consulte Criar um espaço de trabalho do Log Analytics.

  • Um cluster do Azure HDInsight. Atualmente, você pode usar os logs do Azure Monitor com os seguintes tipos de cluster HDInsight:

    • Hadoop
    • HBase
    • Interactive Query
    • Kafka
    • Spark

    Para obter instruções sobre como criar um cluster HDInsight, consulte Introdução ao Azure HDInsight.

  • Se estiver usando o PowerShell, você precisará do Módulo Az. Certifique-se de ter a versão mais recente. Se necessário, execute Update-Module -Name Az.

  • Se quiser usar a CLI do Azure e ainda não a tiver instalado, consulte Instalar a CLI do Azure.

Nota

A nova experiência do Azure Monitor só está disponível em todas as regiões como um recurso de visualização. É recomendável colocar o cluster HDInsight e o espaço de trabalho do Log Analytics na mesma região para obter um melhor desempenho.

Habilitar o Azure Monitor usando o portal

Nesta seção, você configura um cluster Hadoop HDInsight existente para usar um espaço de trabalho do Azure Log Analytics para monitorar trabalhos, depurar logs e assim por diante.

  1. No portal do Azure, selecione o seu cluster. O cluster é aberto numa página nova do portal.

  2. À esquerda, em Monitoramento, selecione Monitorar integração.

  3. Na vista principal, em Azure Monitor for HDInsight Clusters Integration, selecione Ativar.

  4. Na lista suspensa Selecione um espaço de trabalho, selecione um espaço de trabalho existente do Log Analytics.

  5. Selecione Guardar. Leva alguns minutos para salvar a configuração.

    Enable monitoring for HDInsight clusters.

Se quiser desativar o Azure Monitor, pode fazer o mesmo neste portal.

Habilitar o Azure Monitor usando o Azure PowerShell

Você pode habilitar os logs do Azure Monitor usando o cmdlet Azure PowerShell Az module Enable-AzHDInsightAzureMonitor .

# Enter user information
$resourceGroup = "<your-resource-group>"
$cluster = "<your-cluster>"
$LAW = "<your-Log-Analytics-workspace>"
# End of user input

# obtain workspace id for defined Log Analytics workspace
$WorkspaceId = (Get-AzOperationalInsightsWorkspace `
                    -ResourceGroupName $resourceGroup `
                    -Name $LAW).CustomerId

# obtain primary key for defined Log Analytics workspace
$PrimaryKey = (Get-AzOperationalInsightsWorkspace `
                    -ResourceGroupName $resourceGroup `
                    -Name $LAW | Get-AzOperationalInsightsWorkspaceSharedKeys).PrimarySharedKey

# Enables monitoring and relevant logs will be sent to the specified workspace.
Enable-AzHDInsightAzureMonitor `
    -ResourceGroupName $resourceGroup `
    -ClusterName $cluster `
    -WorkspaceId $WorkspaceId `
    -PrimaryKey $PrimaryKey

# Gets the status of monitoring installation on the cluster.
Get-AzHDInsightAzureMonitor `
    -ResourceGroupName $resourceGroup `
    -ClusterName $cluster

Para desabilitar, use o cmdlet Disable-AzHDInsightAzureMonitor :

Disable-AzHDInsightAzureMonitor -ResourceGroupName $resourceGroup `
-ClusterName $cluster

Habilitar o Azure Monitor usando a CLI do Azure

Você pode habilitar os logs do Azure Monitor usando o comando Azure CLI az hdinsight azure-monitor enable .

# set variables
export resourceGroup=RESOURCEGROUPNAME
export cluster=CLUSTERNAME
export LAW=LOGANALYTICSWORKSPACENAME

# Enable the Azure Monitor logs integration on an HDInsight cluster.
az hdinsight azure-monitor enable --name $cluster --resource-group $resourceGroup --workspace $LAW

# Get the status of Azure Monitor logs integration on an HDInsight cluster.
az hdinsight azure-monitor show --name $cluster --resource-group $resourceGroup

Para desativar, use o az hdinsight monitor disable comando.

az hdinsight azure-monitor disable --name $cluster --resource-group $resourceGroup

Usar o HDInsight out-of-box Insights para monitorar um único cluster

O HDInsight fornece uma pasta de trabalho específica da carga de trabalho para ajudá-lo a obter informações rapidamente. Esta pasta de trabalho coleta métricas de desempenho importantes do cluster HDInsight e fornece as visualizações e painéis para os cenários mais comuns. As informações prontas para uso fornecem uma visão completa de um único cluster HDInsight, incluindo a utilização de recursos e o status do aplicativo.

Pastas de trabalho HDInsight disponíveis:

  • Pasta de trabalho do HDInsight Spark
  • Pasta de trabalho do HDInsight Kafka
  • Pasta de trabalho do HBase do HDInsight
  • Pasta de trabalho do HDInsight Hive/LLAP

Captura de ecrã do Livro do Spark Spark workbook screenshot.

Configurando contadores de desempenho

O monitor do Azure dá suporte à coleta e análise de métricas de desempenho para os nós em seu cluster. Para obter mais informações, consulte Fontes de dados de desempenho do Linux no Azure Monitor.

Auditoria de cluster

O HDInsight oferece suporte à auditoria de cluster com logs do Azure Monitor, importando os seguintes tipos de logs:

  • log_gateway_audit_CL - Esta tabela fornece logs de auditoria de nós de gateway de cluster que mostram tentativas de entrada bem-sucedidas e falhadas.
  • log_auth_CL - esta tabela fornece logs SSH com tentativas de entrada bem-sucedidas e falhadas.
  • log_ambari_audit_CL - esta tabela fornece logs de auditoria do Ambari.
  • log_ranger_audti_CL - esta tabela fornece logs de auditoria do Apache Ranger em clusters ESP.

Atualizar o Agente do Log Analytics (OMS) usado pela Integração do Monitor do Azure do HDInsight

Quando a integração do Azure Monitor está habilitada em um cluster, o agente do Log Analytics, ou o Agente do Operations Management Suite (OMS), é instalado no cluster e não é atualizado, a menos que você desabilite e reative a Integração do Azure Monitor. Conclua as etapas a seguir se precisar atualizar o Agente do OMS no cluster. Se você estiver atrás de um firewall, talvez seja necessário concluir os pré-requisitos para clusters atrás de um firewall antes de concluir estas etapas.

  1. No portal do Azure, selecione o seu cluster. O cluster é aberto numa página nova do portal.
  2. No lado esquerdo, em Monitorização, selecione Azure Monitor.
  3. Tome nota do nome da área de trabalho do Log Analytics atual.
  4. Na vista principal, em Integração do Azure Monitor, desative o seletor e, em seguida, selecione Guardar.
  5. Depois que a configuração for salva, reative a alternância de Integração do Azure Monitor e verifique se o mesmo espaço de trabalho do Log Analytics está selecionado e selecione Salvar.

Se você tiver a Integração do Azure Monitor habilitada em um cluster, a atualização do agente do OMS também atualizará a versão da Infraestrutura de Gerenciamento Aberto (OMI). Você pode verificar a versão do OMI no cluster executando o seguinte comando:

 sudo /opt/omi/bin/omiserver –version

Próximos passos