Use 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 requerem um túnel SSH. Por exemplo, a interface do usuário 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 dos menus em Ambari só funcionam através de um túnel SSH. Esses menus dependem de sites e serviços executados em outros tipos de nós, 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 do HBase Master e Logs

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 o Script Action requer um túnel SSH para acessar a interface do usuário da Web.

Importante

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

O que é um túnel SSH

O túnel Secure Shell (SSH) conecta uma porta em sua máquina local a um nó principal no HDInsight. O tráfego enviado para a porta local é roteado através de uma conexão SSH para o nó principal. A solicitação é resolvida como se tivesse se originado no nó principal. A resposta é então encaminhada de volta através do túnel para a sua estação de trabalho.

Pré-requisitos

  • Um cliente SSH. Para obter mais informações, veja Ligar ao HDInsight (Apache Hadoop) através de SSH.

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

    Aviso

    O suporte de proxy SOCKS incorporado nas definições de Internet do Windows não suporta SOCKS5 e não funciona com os passos neste documento. Os seguintes navegadores dependem das configurações de proxy do Windows e atualmente não funcionam com as etapas neste documento:

    • Microsoft Edge
    • Microsoft Internet Explorer

    O Google Chrome também depende das configurações de proxy do Windows. No entanto, você pode instalar extensões que suportam SOCKS5. Recomendamos FoxyProxy Standard.

Criar um túnel usando o comando SSH

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

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

Este comando cria uma conexão que roteia o tráfego para a porta local 9876 para o cluster por SSH. As opções são:

Opção Description
D 9876 O porto local que encaminha o tráfego através do túnel.
C Comprima todos os dados, porque o tráfego da Web é principalmente texto.
2 Força o SSH para tentar apenas a versão 2 do protocolo.
q Modo silencioso.
T Desative a alocação pseudo-tty, pois você está apenas encaminhando uma porta.
n Evite a leitura de STDIN, pois você está apenas encaminhando uma porta.
N Não execute um comando remoto, pois você está 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ó principal do cluster.

Criar um túnel usando PuTTY

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

Criar ou carregar uma sessão

  1. Abra o PuTTY e verifique se Sessão está selecionada no menu à esquerda. Se você já salvou uma sessão, selecione o nome da sessão na lista Sessões salvas e selecione Carregar.

  2. Se ainda não tiver uma sessão guardada, introduza as suas informações de ligação:

    Property valor
    Nome do host (ou endereço IP) O endereço SSH do cluster HDInsight. Por exemplo, mycluster-ssh.azurehdinsight.net.
    Porta 22
    Tipo de Ligação SSH
  3. Selecione Guardar

    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 sobre o formulário Opções de controle de encaminhamento de porta SSH:

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

    PuTTY Configuration tunneling options.

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

  7. Quando solicitado, entre no servidor.

Use o túnel do 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 o Google Chrome, podem exigir uma extensão como FoxyProxy para trabalhar com o túnel.

  1. Configure o navegador para usar localhost e a porta que você usou ao criar o túnel como um proxy SOCKS v5 . Veja como são as configurações do Firefox. Se você usou uma porta diferente da 9876, altere a porta para a que você usou:

    firefox browser proxy settings.

    Nota

    A seleção de DNS remoto resolve solicitações 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 usado pelo datacenter do Microsoft Azure.

Verificar com a interface do usuário da Web do Ambari

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

  1. No browser, aceda a http://headnodehost:8080. O headnodehost endereço é enviado através do túnel para o cluster e resolve para o nó principal em que o Ambari está sendo executado. Quando solicitado, insira o nome de usuário admin (admin) e a senha do cluster. Você pode ser solicitado uma segunda vez pela interface do usuário da Web do Ambari. Em caso afirmativo, volte a introduzir as informações.

    Nota

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

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

    Apache Ambari hdfs service selected.

  3. Quando as informações de serviço do HDFS forem exibidas, selecione Links rápidos. É apresentada uma lista dos nós principais do cluster. Selecione um dos nós principais e, em seguida, selecione NameNode UI.

    Image with the QuickLinks menu expanded.

    Nota

    Ao selecionar Links Rápidos, você pode obter um indicador de espera. Esta condição pode ocorrer se tiver uma ligação à Internet lenta. Aguarde um ou dois minutos para que os dados sejam recebidos do servidor e, em seguida, tente a lista novamente.

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

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

    Image of the Hadoop NameNode UI.

    Nota

    Observe o URL desta página; deve ser semelhante a http://hn*.randomcharacters.cx.internal.cloudapp.net:8088/cluster. Esse URI está usando o FQDN (nome de domínio totalmente qualificado) interno do nó e só é acessível ao usar um túnel SSH.

Próximos passos

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