Usar o Túnel SSH para acessar a interface do usuário da Web do Apache Ambari, JobHistory, NameNode, Apache Oozie e outras UIs da WebUse SSH Tunneling to access Apache Ambari web UI, JobHistory, NameNode, Apache Oozie, and other web UIs

Os clusters HDInsight oferecem acesso à interface do usuário da Web do Apache Ambari pela Internet, mas alguns recursos requerem um túnel SSH.HDInsight clusters provide access to the Apache Ambari web UI over the Internet, but some features require an SSH tunnel. Por exemplo, a interface de usuário da Web para o serviço Apache Oozie não pode ser acessada pela internet sem um túnel SSh.For example, the web UI for the Apache Oozie service cannot be accessed over the internet without an SSh tunnel.

Por que usar um túnel SSHWhy use an SSH tunnel

Vários menus no Ambari só funcionam por meio de um túnel SSH.Several of the menus in Ambari only work through an SSH tunnel. Esses menus dependem de sites e serviços em execução em outros tipos de nó, como nós de trabalho.These menus rely on web sites and services running on other node types, such as worker nodes.

As seguintes interfaces do usuário da Web exigem um túnel SSH:The following Web UIs require an SSH tunnel:

  • JobHistoryJobHistory
  • NameNodeNameNode
  • Pilhas de ThreadsThread Stacks
  • Interface do usuário da Web do OozieOozie web UI
  • Interface do usuário mestre e de logs do HBaseHBase Master and Logs UI

Se você usar as Ações de Script para personalizar seu cluster, todos os serviços ou utilitários que forem instalados e que expuserem um serviço Web exigirão um túnel SSH.If you use Script Actions to customize your cluster, any services or utilities that you install that expose a web service require an SSH tunnel. Por exemplo, se você instalar o Hue usando uma Ação de Script, deverá usar um túnel SSH para acessar a interface do usuário da Web do Hue.For example, if you install Hue using a Script Action, you must use an SSH tunnel to access the Hue web UI.

Importante

Se tiver acesso direto ao HDInsight por meio de uma rede virtual, você não precisará usar túneis SSH.If you have direct access to HDInsight through a virtual network, you do not need to use SSH tunnels. Para obter um exemplo de acesso direto ao HDInsight por meio de uma rede virtual, consulte o documento Conectar HDInsight em sua rede local.For an example of directly accessing HDInsight through a virtual network, see the Connect HDInsight to your on-premises network document.

O que é um túnel SSHWhat is an SSH tunnel

O túnel Secure Shell (SSH) se conecta a uma porta em seu computador local para um nó principal no HDInsight.Secure Shell (SSH) tunneling connects a port on your local machine to a head node on HDInsight. O tráfego enviado para a porta local é roteado por meio de uma conexão SSH para o nó principal.Traffic sent to the local port is routed through an SSH connection to the head node. A solicitação é resolvida como se ela tivesse sido originada no nó principal.The request is resolved as if it originated on the head node. A resposta é então roteada de volta pelo túnel até a sua estação de trabalho.The response is then routed back through the tunnel to your workstation.

Pré-requisitosPrerequisites

  • Um cliente SSH.An SSH client. Para saber mais, confira Conectar-se ao HDInsight (Apache Hadoop) usando SSH.For more information, see Connect to HDInsight (Apache Hadoop) using SSH.

  • Um navegador da Web que pode ser configurado para usar um proxy SOCKS5.A web browser that can be configured to use a SOCKS5 proxy.

    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.The SOCKS proxy support built into Windows Internet settings does not support SOCKS5, and does not work with the steps in this document. Os navegadores a seguir contam com as configurações de proxy do Windows e não funcionam com as etapas neste documento:The following browsers rely on Windows proxy settings, and do not currently work with the steps in this document:

    • Microsoft EdgeMicrosoft Edge
    • Microsoft Internet ExplorerMicrosoft Internet Explorer

    O Google Chrome também conta com as configurações de proxy do Windows.Google Chrome also relies on the Windows proxy settings. No entanto, você pode instalar extensões que dão suporte a SOCKS5.However, you can install extensions that support SOCKS5. Recomendamos o FoxyProxy Standard.We recommend FoxyProxy Standard.

Criar um túnel usando o comando SSHCreate a tunnel using the SSH command

Use o comando a seguir para criar um túnel SSH usando o comando ssh .Use the following command to create an SSH tunnel using the ssh command. Substitua sshuser por um usuário do SSH para seu cluster HDInsight e substitua clustername com o nome do seu cluster HDInsight:Replace sshuser with an SSH user for your HDInsight cluster, and replace clustername with the name of your HDInsight cluster:

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.This command creates a connection that routes traffic to local port 9876 to the cluster over SSH. As opções são:The options are:

  • D 9876: a porta local que roteará o tráfego pelo túnel.D 9876 - The local port that routes traffic through the tunnel.
  • C : compactar todos os dados, porque o tráfego da Web é texto, em sua maioria.C - Compress all data, because web traffic is mostly text.
  • 2 : forçar o SSH para tentar somente a versão 2 do protocolo.2 - Force SSH to try protocol version 2 only.
  • q : modo silencioso.q - Quiet mode.
  • T - Desabilitar alocação pseudo-tty, já que estamos apenas encaminhando uma porta.T - Disable pseudo-tty allocation, since you are just forwarding a port.
  • n - Impedir a leitura de STDIN, já que você está apenas encaminhando uma porta.n - Prevent reading of STDIN, since you are just forwarding a port.
  • N - Não executar um comando remoto, pois estamos apenas encaminhando uma porta.N - Do not execute a remote command, since you are just forwarding a port.
  • f : executar em segundo plano.f - Run in the background.

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.Once the command finishes, traffic sent to port 9876 on the local computer is routed to the cluster head node.

Criar um túnel usando o PuTTYCreate a tunnel using PuTTY

O PuTTY é um cliente SSH gráfico do Windows.PuTTY is a graphical SSH client for Windows. Se você não estiver familiarizado com PuTTY, consulte a documentação do PuTTY.If you are not familiar with PuTTY, see the PuTTY documentation. Use as etapas a seguir para criar um túnel SSH usando o PuTTY:Use the following steps to create an SSH tunnel using PuTTY:

Criar ou carregar uma sessãoCreate or load a session

  1. Abra o PuTTY e certifique-se de que Sessão está selecionada no menu esquerdo.Open PuTTY and ensure Session is selected on the left menu. Se você já tiver salvo uma sessão, selecione o nome da sessão do sessões salvas e selecione carga.If you have already saved a session, select the session name from the Saved Sessions list and select Load.

  2. Se você ainda não tiver uma sessão salva, insira suas informações de conexão:If you don't already have a saved session, enter your connection information:

    • Nome do host (ou endereço IP) - O endereço SSH para o cluster HDInsight.Host Name (or IP address) - The SSH address for the HDInsight cluster. Por exemplo, mycluster-ssh.azurehdinsight.netFor example, mycluster-ssh.azurehdinsight.net
    • Porta - 22Port - 22
    • Tipo de conexão - SSHConnection Type - SSH
  3. Selecione SalvarSelect Save

    Criar sessão SSH

  4. Na seção Categoria à esquerda da caixa de diálogo, expanda Conexão, expanda SSH e selecione Túneis.In the Category section to the left of the dialog, expand Connection, expand SSH, and then select Tunnels.

  5. Forneça as seguintes informações no formulário Opções de controle do encaminhamento de porta SSH :Provide the following information on the Options controlling SSH port forwarding form:

    • Porta de Origem : a porta no cliente que você deseja encaminhar.Source port - The port on the client that you wish to forward. Por exemplo, 9876.For example, 9876.

    • Destino - O endereço SSH para o cluster HDInsight.Destination - The SSH address for the HDInsight cluster. Por exemplo, mycluster-ssh.azurehdinsight.net.For example, mycluster-ssh.azurehdinsight.net.

    • Dinâmico : habilita roteamento de proxy SOCKS dinâmico.Dynamic - Enables dynamic SOCKS proxy routing.

      imagem de opções de túnel

  6. Selecione Add para adicionar as configurações e, em seguida, clique em abrir para abrir uma conexão SSH.Select Add to add the settings, and then click Open to open an SSH connection.

  7. Quando solicitado, entre servidor.When prompted, sign in to the server.

Usar o túnel de seu navegadorUse the tunnel from your browser

Importante

As etapas nesta seção usam o navegador Mozilla FireFox, pois ele fornece as mesmas configurações de proxy em todas as plataformas.The steps in this section use the Mozilla FireFox browser, as it provides the same proxy settings across all platforms. Outros navegadores modernos como Google Chrome podem exigir uma extensão como o FoxyProxy para trabalhar com o túnel.Other modern browsers, such as Google Chrome, may require an extension such as FoxyProxy to work with the tunnel.

  1. Configure o navegador para usar localhost e a porta usada ao criar o túnel como um proxy SOCKS v5.Configure the browser to use localhost and the port you used when creating the tunnel as a SOCKS v5 proxy. Aqui está a aparência das configurações do Firefox.Here's what the Firefox settings look like. Se você tiver usado uma porta diferente da 9876, altere a porta que usou:If you used a different port than 9876, change the port to the one you used:

    imagem das configurações do Firefox

    Observação

    Selecionar DNS Remoto resolve as solicitações de DNS (Sistema de Nomes de Domínio) usando o cluster HDInsight.Selecting Remote DNS resolves Domain Name System (DNS) requests by using the HDInsight cluster. Essa configuração resolve o DNS usando o nó principal do cluster.This setting resolves DNS using the head node of the cluster.

  2. Verifique se o túnel funciona, visitando um site como https://www.whatismyip.com/.Verify that the tunnel works by visiting a site such as https://www.whatismyip.com/. O IP retornado deve ser um IP usado pelo data center do Microsoft Azure.The IP returned should be one used by the Microsoft Azure datacenter.

Verifique com a interface do usuário do Ambari WebVerify with Ambari web UI

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:Once the cluster has been established, use the following steps to verify that you can access service web UIs from the Ambari Web:

  1. No navegador, acesse http://headnodehost:8080.In your browser, go to http://headnodehost:8080. O endereço headnodehost é enviado pelo túnel para o cluster e resolverá o nó principal que o Ambari está executando.The headnodehost address is sent over the tunnel to the cluster and resolve to the head node that Ambari is running on. Quando solicitado, insira o nome de usuário do administrador (admin) e a senha do seu cluster.When prompted, enter the admin user name (admin) and password for your cluster. Talvez a interface do usuário do Ambari Web seja solicitada uma segunda vez.You may be prompted a second time by the Ambari web UI. Nesse caso, insira novamente as informações.If so, reenter the information.

    Observação

    Ao usar o endereço http://headnodehost:8080 para conectar o cluster, você estará conectando através do túnel.When using the http://headnodehost:8080 address to connect to the cluster, you are connecting through the tunnel. A comunicação é protegida usando o túnel SSH em vez de HTTPS.Communication is secured using the SSH tunnel instead of HTTPS. Para se conectar pela internet usando HTTPS, use https://clustername.azurehdinsight.net, onde clustername é o nome do cluster.To connect over the internet using HTTPS, use https://clustername.azurehdinsight.net, where clustername is the name of the cluster.

  2. Na interface do usuário do Ambari na Web, selecione HDFS na lista à esquerda da página.From the Ambari Web UI, select HDFS from the list on the left of the page.

    Imagem com o HDFS selecionado

  3. Quando as informações do serviço HDFS forem exibidas, selecione Links Rápidos.When the HDFS service information is displayed, select Quick Links. Uma lista de nós de cabeçalho do cluster é exibida.A list of the cluster head nodes appears. Escolha um dos nós de cabeça e Interface de Usuário do NameNode.Select one of the head nodes, and then select NameNode UI.

    Imagem do menu Links Rápidos expandido

    Observação

    Quando você seleciona Links rápidos, pode receber um indicador de espera.When you select Quick Links, you may get a wait indicator. Essa condição poderá ocorrer se você tiver uma conexão de Internet lenta.This condition can occur if you have a slow internet connection. Aguarde um minuto ou dois pelos dados a serem recebidos do servidor e experimente a lista novamente.Wait a minute or two for the data to be received from the server, then try the list again.

    Algumas entradas no menu Links rápidos podem ser cortadas pelo lado direito da tela.Some entries in the Quick Links menu may be cut off by the right side of the screen. 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.If so, expand the menu using your mouse and use the right arrow key to scroll the screen to the right to see the rest of the menu.

  4. Uma página semelhante à seguinte imagem será exibida:A page similar to the following image is displayed:

    Imagem da interface do usuário do NameNode

    Observação

    Observe a URL da página; ele deve ser semelhante ao http://hn1-CLUSTERNAME.randomcharacters.cx.internal.cloudapp.net:8088/cluster.Notice the URL for this page; it should be similar to http://hn1-CLUSTERNAME.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.This URI is using the internal fully qualified domain name (FQDN) of the node, and is only accessible when using an SSH tunnel.

Próximas etapasNext steps

Agora que você aprendeu a criar e usar um túnel SSH, veja o documento a seguir para outras maneiras de usar o Ambari:Now that you have learned how to create and use an SSH tunnel, see the following document for other ways to use Ambari: