Partilhar via


Solucionar problemas do Apache Oozie no Azure HDInsight

Com a interface do usuário do Apache Oozie, você pode visualizar os logs do Oozie. A interface do usuário do Oozie também contém links para os logs do JobTracker para as tarefas do MapReduce que foram iniciadas pelo fluxo de trabalho. O padrão para solução de problemas deve ser:

  1. Exiba o trabalho na interface do usuário da Web do Oozie.

  2. Se houver um erro ou falha para uma ação específica, selecione a ação para ver se o campo Mensagem de erro fornece mais informações sobre a falha.

  3. Se disponível, use a URL da ação para exibir mais detalhes, como os logs do JobTracker, para a ação.

A seguir estão erros específicos que você pode encontrar e como resolvê-los.

JA009: Não é possível inicializar o cluster

Problema

O status do trabalho muda para SUSPENDED. Os detalhes do trabalho mostram o RunHiveScript status como START_MANUAL. Selecionar a ação exibe a seguinte mensagem de erro:

JA009: Cannot initialize Cluster. Please check your configuration for map

Motivo

Os endereços de armazenamento de Blob do Azure usados no arquivo job.xml não contêm o contêiner de armazenamento ou o nome da conta de armazenamento. O formato de endereço de armazenamento de Blob deve ser wasbs://containername@storageaccountname.blob.core.windows.net.

Resolução

Altere os endereços de armazenamento de Blob que o trabalho usa.


JA002: Oozie não tem permissão para se passar <por USUÁRIO>

Problema

O status do trabalho muda para SUSPENDED. Os detalhes do trabalho mostram o RunHiveScript status como START_MANUAL. Se você selecionar a ação, ela mostrará a seguinte mensagem de erro:

JA002: User: oozie is not allowed to impersonate <USER>

Motivo

As configurações de permissão atuais não permitem que o Oozie represente a conta de usuário especificada.

Resolução

O Oozie pode se passar por usuários do users grupo. Use o groups USERNAME para ver os grupos dos quais a conta de usuário é membro. Se o usuário não for membro do users grupo, use o seguinte comando para adicioná-lo ao grupo:

sudo adduser USERNAME users

Nota

Pode levar vários minutos até que o HDInsight reconheça que o usuário foi adicionado ao grupo.


Launcher ERROR (Sqoop)

Problema

O status do trabalho muda para KILLED. Os detalhes do trabalho mostram o RunSqoopExport status como ERROR. Se você selecionar a ação, ela mostrará a seguinte mensagem de erro:

Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.SqoopMain], exit code [1]

Motivo

O Sqoop não consegue carregar o driver de banco de dados necessário para acessar o banco de dados.

Resolução

Quando você usa o Sqoop de um trabalho do Oozie, você deve incluir o driver de banco de dados com os outros recursos, como o workflow.xml, o trabalho usa. Além disso, faça referência ao arquivo que contém o driver de banco de dados da <sqoop>...</sqoop> seção do workflow.xml.

Por exemplo, para o exemplo de trabalho de Usar fluxos de trabalho do Hadoop Oozie, você usaria as seguintes etapas:

  1. Copie o mssql-jdbc-7.0.0.jre8.jar arquivo para o diretório /tutorials/useoozie :

    hdfs dfs -put /usr/share/java/sqljdbc_7.0/enu/mssql-jdbc-7.0.0.jre8.jar /tutorials/useoozie/mssql-jdbc-7.0.0.jre8.jar
    
  2. Modifique o workflow.xml para adicionar o seguinte XML em uma nova linha acima </sqoop>:

    <archive>mssql-jdbc-7.0.0.jre8.jar</archive>
    

Próximos passos

Se não viu o problema ou não conseguiu resolvê-lo, visite um dos seguintes canais para obter mais suporte:

  • Obtenha respostas de especialistas do Azure através do Suporte da Comunidade do Azure.

  • Conecte-se com o @AzureSupport - a conta oficial do Microsoft Azure para melhorar a experiência do cliente. Ligar a comunidade do Azure aos recursos certos: respostas, suporte e especialistas.

  • Se precisar de mais ajuda, você pode enviar uma solicitação de suporte do portal do Azure. Selecione Suporte na barra de menus ou abra o hub Ajuda + suporte . Para obter informações mais detalhadas, consulte Como criar uma solicitação de suporte do Azure. O acesso ao suporte para Gestão de Subscrições e faturação está incluído na sua subscrição do Microsoft Azure e o Suporte Técnico é disponibilizado através de um dos Planos de Suporte do Azure.