Usar o túnel SSH para acessar a interface do usuário da Web do Apache Ambari, JobHistory, NameNode, Apache Oozie e outras interfaces do usuário

Os clusters HDInsight fornecem acesso à interface do usuário da Web do Apache Ambari pela Internet. Alguns recursos exigem um túnel SSH. Por exemplo, a IU da Web do Apache Oozie não pode ser acessada pela Internet sem um túnel SSH.

Por que usar um túnel SSH

Vários menus no Ambari só funcionam por meio de um túnel SSH. Esses menus dependem de sites e serviços em execução em outros tipos de nó, como nós de trabalho.

As seguintes interfaces do usuário da Web exigem um túnel SSH:

  • JobHistory
  • NameNode
  • Pilhas de Threads
  • Interface do usuário da Web do Oozie
  • Interface do usuário mestre e de logs do HBase

Os serviços instalados com Ações de Script que expõem um serviço Web exigirão um túnel SSH. O matiz instalado com a ação de script requer um túnel SSH para acessar a interface do usuário da Web.

Importante

Se tiver acesso direto ao HDInsight por meio de uma rede virtual, você não precisará usar túneis SSH. Para obter um exemplo de acesso direto ao HDInsight por meio de uma rede virtual, consulte o documento Conectar HDInsight em sua rede local.

O que é um túnel SSH

O túnel Secure Shell (SSH) se conecta a uma porta em seu computador local para um nó principal no HDInsight. O tráfego enviado para a porta local é roteado por meio de uma conexão SSH para o nó principal. A solicitação é resolvida como se ela tivesse sido originada no nó principal. A resposta é então roteada de volta pelo túnel até a sua estação de trabalho.

Pré-requisitos

  • Um cliente SSH. Para saber mais, confira Conectar-se ao HDInsight (Apache Hadoop) usando SSH.

  • Um navegador da Web que pode ser configurado para usar um proxy SOCKS5.

    Aviso

    O suporte a proxy SOCKS integrado das configurações de Internet do Windows não dá suporte a SOCKS5 e não funciona com as etapas neste documento. Os navegadores a seguir contam com as configurações de proxy do Windows e não funcionam com as etapas neste documento:

    • Microsoft Edge
    • Microsoft Internet Explorer

    O Google Chrome também conta com as configurações de proxy do Windows. No entanto, você pode instalar extensões que dão suporte a SOCKS5. Recomendamos o FoxyProxy Standard.

Criar um túnel usando o comando SSH

Use o comando a seguir para criar um túnel SSH usando o comando ssh . Substitua sshuser por um usuário SSH para seu cluster HDInsight e substitua CLUSTERNAME pelo nome do seu cluster HDInsight:

ssh -C2qTnNf -D 9876 sshuser@CLUSTERNAME-ssh.azurehdinsight.net

Esse comando cria uma conexão que encaminha o tráfego para a porta local 9876 do cluster via SSH. As opções são:

Opção Descrição
D 9876 A porta local que roteará o tráfego pelo túnel.
C Compactar todos os dados, porque o tráfego da Web é texto, em sua maioria.
2 Forçar o SSH para tentar somente a versão 2 do protocolo.
q Modo silencioso.
T Desabilitar alocação pseudo-tty, já que estamos apenas encaminhando uma porta.
n Impedir a leitura de STDIN, já que estamos apenas encaminhando uma porta.
N Não executar um comando remoto, pois estamos apenas encaminhando uma porta.
f Executar em segundo plano.

Quando o comando terminar, o tráfego enviado para a porta 9876 no computador local será roteado para o nó de cabeçalho do cluster.

Criar um túnel usando o PuTTY

O PuTTY é um cliente SSH gráfico do Windows. Se você não estiver familiarizado com PuTTY, consulte a documentação do PuTTY. Use as etapas a seguir para criar um túnel SSH usando o PuTTY:

Criar ou carregar uma sessão

  1. Abra o PuTTY e certifique-se de que Sessão está selecionada no menu esquerdo. Se você já tiver salvado uma sessão, selecione o nome da sessão na lista Sessões salvas e selecione Carregar.

  2. Se você ainda não tiver uma sessão salva, insira suas informações de conexão:

    Propriedade Valor
    Nome do host (ou endereço IP) O endereço SSH para o cluster HDInsight. Por exemplo, mycluster-ssh.azurehdinsight.net.
    Porta 22
    Tipo de Conexão SSH
  3. Selecione Salvar

    HDInsight create putty session.

  4. Na seção Categoria à esquerda da caixa de diálogo, expanda Conexão, expanda SSH e selecione Túneis.

  5. Forneça as seguintes informações no formulário Opções de controle do encaminhamento de porta SSH :

    Propriedade Valor
    Porta de origem A porta no cliente que você deseja encaminhar. Por exemplo, 9876.
    Destino O endereço SSH para o cluster HDInsight. Por exemplo, mycluster-ssh.azurehdinsight.net.
    Dinâmico Habilita o roteamento dinâmico de proxy SOCKS.

    PuTTY Configuration tunneling options.

  6. Selecione Adicionar para adicionar as configurações e selecione Abrir para abrir uma conexão SSH.

  7. Quando solicitado, entre no servidor.

Usar o túnel de seu navegador

Importante

As etapas nesta seção usam o navegador Mozilla FireFox, pois ele fornece as mesmas configurações de proxy em todas as plataformas. Outros navegadores modernos como Google Chrome podem exigir uma extensão como o FoxyProxy para trabalhar com o túnel.

  1. Configure o navegador para usar localhost e a porta usada ao criar o túnel como um proxy SOCKS v5. Aqui está a aparência das configurações do Firefox. Se você tiver usado uma porta diferente da 9876, altere a porta que usou:

    firefox browser proxy settings.

    Observação

    Selecionar DNS Remoto resolve as solicitações de DNS (Sistema de Nomes de Domínio) usando o cluster HDInsight. Essa configuração resolve o DNS usando o nó principal do cluster.

  2. Verifique se o túnel funciona, visitando um site como https://www.whatismyip.com/. O IP retornado deve ser um IP usado pelo data center do Microsoft Azure.

Verifique com a interface do usuário do Ambari Web

Assim que o cluster tiver sido estabelecido, use as etapas a seguir para verificar se você pode acessar as interfaces do usuário da Web do serviço Ambari Web:

  1. No navegador, acesse http://headnodehost:8080. O endereço headnodehost é enviado pelo túnel para o cluster e resolverá o nó principal que o Ambari está executando. Quando solicitado, insira o nome de usuário do administrador (admin) e a senha do seu cluster. Talvez a interface do usuário do Ambari Web seja solicitada uma segunda vez. Nesse caso, insira novamente as informações.

    Observação

    Ao usar o endereço http://headnodehost:8080 para conectar o cluster, você estará conectando através do túnel. A comunicação é protegida usando o túnel SSH em vez de HTTPS. Para conectar pela Internet usando HTTPS, use https://clustername.azurehdinsight.net, em que clustername é o nome do cluster.

  2. Na interface do usuário do Ambari na Web, selecione HDFS na lista à esquerda da página.

    Apache Ambari hdfs service selected.

  3. Quando as informações do serviço HDFS forem exibidas, selecione Links Rápidos. Uma lista de nós de cabeçalho do cluster é exibida. Escolha um dos nós de cabeça e Interface de Usuário do NameNode.

    Image with the QuickLinks menu expanded.

    Observação

    Quando você seleciona Links rápidos, pode receber um indicador de espera. Essa condição poderá ocorrer se você tiver uma conexão de Internet lenta. Aguarde um minuto ou dois pelos dados a serem recebidos do servidor e experimente a lista novamente.

    Algumas entradas no menu Links rápidos podem ser cortadas pelo lado direito da tela. Nesse caso, expanda o menu usando o mouse e a tecla de seta para a direita para rolar a tela para a direita e ver o restante do menu.

  4. Uma página semelhante à seguinte imagem será exibida:

    Image of the Hadoop NameNode UI.

    Observação

    Observe a URL dessa página, que deve ser semelhante a http://hn*.randomcharacters.cx.internal.cloudapp.net:8088/cluster. Essa URI está usando o nome de domínio totalmente qualificado (FQDN) interno do nó e é acessada apenas ao utilizar um túnel SSH.

Próximas etapas

Agora que você aprendeu a criar e usar um túnel SSH, veja o seguinte documento para outras maneiras de usar o Ambari: