Todos os produtos
Search
Central de documentação

E-MapReduce:Conectar-se ao Impala

Última atualização: Jul 20, 2026

Use uma interface de linha de comando (CLI) para se conectar ao Impala no E-MapReduce (EMR).

Pré-requisitos

Crie um cluster e selecione o service Impala. Para mais informações, consulte Crie um cluster.

Conexão via Impala-shell

Antes de se conectar ao Impala, execute o comando impala-shell --help para visualizar as opções disponíveis.

Cluster padrão

  1. Conecte-se ao nó mestre do cluster via SSH. Para mais informações, consulte Log on to a cluster.

  2. Execute o comando a seguir para se conectar ao Impala.

    impala-shell -i <impalad_node_name>

    <impalad_node_name> é o nome de um nó Impalad. Para obter esse nome, acesse a aba Status do service Impala no console EMR, expanda o componente Impalad e localize o nome na coluna Node Name da lista de topologia. Por exemplo, os nomes dos nós podem ser core-1-1 e core-1-2. Use qualquer um desses nomes para estabelecer a conexão. Substitua <impalad_node_name> no comando anterior pelo nome do nó obtido.

  3. Opcional: Execute o comando quit; para sair da CLI do Impala.

Cluster de alta segurança

  1. Conecte-se ao nó mestre do cluster via SSH. Para mais informações, consulte Log on to a cluster.

  2. Inicialize uma credencial.

    1. Verifique a existência de uma credencial Kerberos com o comando abaixo.

      klist

      Se a saída exibir klist: No credentials cache found, prossiga para a próxima etapa e inicialize uma credencial. Caso a saída já contenha informações de credenciais, ignore a inicialização e conecte-se diretamente ao Impala.

    2. Visualize o principal com o seguinte comando.

      klist -k $IMPALA_CONF_DIR/impala.keytab

      Anote o principal exibido na saída. Ele será necessário na próxima etapa. Um exemplo de principal é impala/master-1-1.c-45dcb9bbe234****.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE23****.COM.

      [root@master-l-1(192.16xxx) ~]# klist -k $IMPALA_CONF_DIR/impala.keytab
      Keytab name: FILE:/etc/taihao-apps/impala-conf/runtime-conf/impala.keytab
      KVNO Principal
      ---- ----------------------------------------------------------------
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
         2 impala/master-l-1.c-45dcb9bbe234xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-45DCB9BBE234xxx.COM
    3. Inicialize a credencial com o comando a seguir.

      kinit -k -t $IMPALA_CONF_DIR/impala.keytab <principal>
      Nota

      Substitua <principal> pelo principal anotado na etapa anterior.

  3. Conecte-se ao Impala com este comando.

    impala-shell -k -i <impalad_node_name>
  4. Opcional: Execute o comando quit; para sair da CLI do Impala.

Conexão JDBC via Beeline

Cluster padrão

  1. Conecte-se ao nó mestre do cluster via SSH. Para mais informações, consulte Log on to a cluster.

  2. Execute o comando abaixo para se conectar ao Impala.

    beeline -u 'jdbc:hive2://<impalad_node_name>:28000/default;transportMode=http;uauth=noSasl'
  3. Opcional: Execute o comando quit; para sair da CLI do Impala.

Cluster de alta segurança

  1. Conecte-se a um nó core do cluster via SSH. Para mais informações, consulte Log on to a cluster.

  2. Inicialize uma credencial como usuário root.

    1. Verifique se há uma credencial Kerberos disponível.

      klist

      Se a mensagem klist: No credentials cache found aparecer na saída, avance para a próxima etapa e inicialize uma credencial de acesso. Caso contrário, se houver informações de credenciais, ignore a inicialização e use o comando impala-shell para se conectar ao Impala.

    2. Consulte o principal com o comando a seguir.

      klist -k $IMPALA_CONF_DIR/impala.keytab

      Registre o principal apresentado na saída para uso na etapa subsequente. Como exemplo, o principal pode ser impala/core-1-1.c-ee5cfb2d6306****.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D6306****.COM.

      [root@core-1-1(xxx) ~]# klist -k $IMPALA_CONF_DIR/impala.keytab
      Keytab name: FILE:/etc/taihao-apps/impala-conf/runtime-conf/impala.keytab
      KVNO Principal
      ---- ----------------------------------------------------------------
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 impala/core-1-1.c-ee5cfb2dxxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2Dxxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
         2 HTTP/core-1-1.c-ee5cfb2d63xxx.cn-hangzhou.emr.aliyuncs.com@EMR.C-EE5CFB2D63xxx.COM
    3. Inicialize a credencial com o comando abaixo.

      kinit -k -t $IMPALA_CONF_DIR/impala.keytab <principal>
      Nota

      Substitua <principal> pelo valor do principal registrado anteriormente.

  3. Como usuário root, execute o comando a seguir para se conectar ao Impala.

    beeline -u 'jdbc:hive2://<impalad_node_name>:28000/default;principal=<principal>;transportMode=http'
  4. Opcional: Para sair da CLI do Beeline, execute o comando !quit.

Perguntas frequentes

Onde os logs do Impala são armazenados?

Por padrão, os logs do Impala ficam no diretório /var/log/taihao-apps/impala/. Acesse um nó do cluster e navegue até esse caminho para consultar os registros.

Nota

Os logs residem nos nós onde os processos Impalad estão em execução (geralmente nós core). Se não encontrar os logs em um nó específico, verifique se o processo Impalad está implantado nele.

Como consultar usuários históricos que acessaram o Impala?

Quando o Apache Ranger não está habilitado no cluster, o controle de acesso do Impala depende das permissões de leitura e escrita de arquivos do Hadoop Distributed File System (HDFS).

Para extrair contas de conexões históricas do log de auditoria, execute o comando abaixo em um nó com o processo Impalad ativo:

grep "Successfully authenticated client user" /var/log/taihao-apps/impala/impalad.INFO* | awk -F'"' '{print $2}' | sort | uniq -c | sort -nr

Esse comando busca registros de autenticação bem-sucedida nos logs de auditoria do Impala, extrai os nomes de usuário e os lista em ordem decrescente de quantidade de conexões.

Como criar uma conta somente leitura para o Impala?

Criar uma conta somente leitura exige o Apache Ranger para gerenciar permissões. Se o Ranger não estiver implantado no seu cluster, adicione esse service antes de configurar controles de acesso granulares, como permissões de somente leitura.

O Impala no EMR 4.9.0 oferece suporte à autorização via Ranger?

A versão 4.9.0 do EMR não suporta autorização via Ranger para o Impala. Para utilizar o Ranger no gerenciamento de permissões, crie um cluster com uma versão mais recente do EMR e migre seus dados para essa nova infraestrutura.