Solucionar problemas do Apache Oozie no Azure HDInsight
Com a interface do usuário do Apache Oozie, você pode exibir logs do Oozie. A IU do Oozie também contém links para os logs de JobTracker das tarefas de MapReduce que foram iniciadas pelo fluxo de trabalho. O padrão para solução de problemas deve ser:
Exiba o trabalho na interface do usuário da Web do Oozie.
Se houver um erro ou falha de uma ação específica, selecione a ação para ver se o campo Mensagem de Erro fornece mais informações sobre a falha.
Se estiver disponível, use a URL da ação para exibir mais detalhes, como logs do JobTracker, sobre ela.
A seguir estão erros específicos que podem ser encontrados e como resolvê-los.
JA009: Não é possível inicializar o cluster
Problema
O status do trabalho é alterado para SUSPENSO. Os detalhes do trabalho mostram o status de RunHiveScript
como START_MANUAL. Selecionar a ação exibirá a seguinte mensagem de erro:
JA009: Cannot initialize Cluster. Please check your configuration for map
Causa
Os endereços do Armazenamento de Blobs 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 do armazenamento de blobs deve ser wasbs://containername@storageaccountname.blob.core.windows.net
.
Resolução
Altere os endereços de armazenamento de blobs que o trabalho usa.
JA002: Oozie não tem permissão para representar <USER>
Problema
O status do trabalho é alterado para SUSPENSO. Os detalhes do trabalho mostram o status de RunHiveScript
como START_MANUAL. Se você selecionar a ação, a seguinte mensagem de erro será exibida:
JA002: User: oozie is not allowed to impersonate <USER>
Causa
As configurações de permissão atuais não permitem ao Oozie representar a conta de usuário especificada.
Resolução
O Oozie pode representar os usuários no grupo users
. Use o groups USERNAME
para ver os grupos do qual a conta de usuário é membro. Se o usuário não for membro do grupo users
, use o seguinte comando para adicionar o usuário ao grupo:
sudo adduser USERNAME users
Observação
Pode levar vários minutos antes de o HDInsight reconhecer que o usuário foi adicionado ao grupo.
ERRO do Iniciador (Sqoop)
Problema
O status do trabalho é alterado para ENCERRADO. Os detalhes do trabalho mostram o status RunSqoopExport
como ERRO. Se você selecionar a ação, a seguinte mensagem de erro será exibida:
Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.SqoopMain], exit code [1]
Causa
O Sqoop não conseguiu carregar o driver do banco de dados necessário para acessar o banco de dados.
Resolução
Ao usar o Sqoop em um trabalho do Oozie, você deve incluir o driver de banco de dados com os outros recursos, como o workflow.xml, usados pelo trabalho. Além disso, referencie o arquivo morto que contém o driver de banco de dados na seção <sqoop>...</sqoop>
do workflow.xml.
Por exemplo, para o exemplo de trabalho de Usar fluxos de trabalho do Hadoop no Oozie, você usaria as seguintes etapas:
Copie o arquivo
mssql-jdbc-7.0.0.jre8.jar
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
Modifique o
workflow.xml
para adicionar o seguinte XML a uma nova linha acima</sqoop>
:<archive>mssql-jdbc-7.0.0.jre8.jar</archive>
Próximas etapas
Se você não encontrou seu problema ou não conseguiu resolver seu problema, visite um dos seguintes canais para obter mais suporte:
Obtenha respostas de especialistas do Azure por meio do Suporte da Comunidade do Azure.
Conecte-se com @AzureSupport – a conta oficial do Microsoft Azure para aprimorar a experiência do cliente. Como se conectar à comunidade do Azure para os recursos certos: respostas, suporte e especialistas.
Se precisar de mais ajuda, poderá 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 Gerenciamento de assinaturas e ao suporte de cobrança está incluído na sua assinatura do Microsoft Azure, e o suporte técnico é fornecido por meio de um dos Planos de suporte do Azure.