Conecte-se ao nó primário usando SSH - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conecte-se ao nó primário usando SSH

O Secure Shell (SSH) é um protocolo de rede que você pode usar para criar uma conexão segura com um computador remoto. Depois de estabelecer uma conexão, o terminal no computador local se comporta como se estivesse em execução no computador remoto. Os comandos que você emitir localmente serão executados no computador remoto, e a saída do comando do computador remoto será exibida na janela do terminal.

Ao usar SSH com AWS, você está se conectando a uma EC2 instância, que é um servidor virtual executado na nuvem. Ao trabalhar com a AmazonEMR, o uso mais comum SSH é conectar-se à EC2 instância que está atuando como o nó principal do cluster.

O uso SSH para se conectar ao nó primário permite monitorar e interagir com o cluster. Você pode emitir comandos do Linux no nó primário, executar aplicações como o Hive e o Pig interativamente, pesquisar diretórios, ler arquivos de log e assim por diante. Você também pode criar um túnel em sua SSH conexão para visualizar as interfaces da web hospedadas no nó primário. Para ter mais informações, consulte Visualize interfaces web hospedadas em EMR clusters da Amazon.

Para se conectar ao nó primário usandoSSH, você precisa do DNS nome público do nó primário. Além disso, o grupo de segurança associado ao nó primário deve ter uma regra de entrada que permita o tráfego SSH (TCPporta 22) de uma origem que inclua o cliente de onde a SSH conexão se origina. Talvez seja necessário adicionar uma regra para permitir uma SSH conexão do seu cliente. Para obter mais informações sobre a modificação das regras do grupo de segurança, consulte Controle do tráfego de rede com grupos de segurança Adicionar regras a um grupo de segurança no Guia do EC2 usuário da Amazon.

Recupere o DNS nome público do nó primário

Você pode recuperar o DNS nome público principal usando o EMR console da Amazon e o. AWS CLI

nota

Nós redesenhamos o EMR console da Amazon para torná-lo mais fácil de usar. Consulte Console do Amazon EMR para conhecer as diferenças entre as experiências do console antigo e novo.

New console
Para recuperar o DNS nome público do nó primário com o novo console
  1. Faça login no AWS Management Console e abra o EMR console da Amazon em https://console.aws.amazon.com/emr.

  2. EC2Em EMRAtivado, no painel de navegação esquerdo, escolha Clusters e, em seguida, selecione o cluster em que você deseja recuperar o nome públicoDNS.

  3. Observe o DNS valor público do nó primário na seção Resumo da página de detalhes do cluster.

Old console
Para recuperar o DNS nome público do nó primário com o console antigo
  1. Navegue até o novo EMR console da Amazon e selecione Alternar para o console antigo na navegação lateral. Para obter mais informações sobre o que esperar ao alternar para o console antigo, consulte Usar o console antigo.

  2. Na página Cluster List (Lista de clusters), selecione o link para o seu cluster.

  3. Observe o DNS valor público principal que aparece na seção Resumo da página Detalhes do Cluster.

    nota

    Você também pode escolher o SSHlink para obter instruções sobre como criar uma SSH conexão com o nó primário.

CLI
Para recuperar o DNS nome público do nó primário com o AWS CLI
  1. Para recuperar o identificador do cluster, digite o seguinte comando.

    aws emr list-clusters

    A saída lista seus clusters, incluindo o clusterIDs. Observe o ID do cluster ao qual você está se conectando.

    "Status": { "Timeline": { "ReadyDateTime": 1408040782.374, "CreationDateTime": 1408040501.213 }, "State": "WAITING", "StateChangeReason": { "Message": "Waiting after step completed" } }, "NormalizedInstanceHours": 4, "Id": "j-2AL4XXXXXX5T9", "Name": "My cluster"
  2. Para listar as instâncias do cluster, incluindo o DNS nome público do cluster, digite um dos comandos a seguir. Substituir j-2AL4XXXXXX5T9 com o ID do cluster retornado pelo comando anterior.

    aws emr list-instances --cluster-id j-2AL4XXXXXX5T9

    Ou:

    aws emr describe-cluster --cluster-id j-2AL4XXXXXX5T9

    A saída lista as instâncias do cluster, incluindo DNS nomes e endereços IP. Observe o valor para PublicDnsName.

    "Status": { "Timeline": { "ReadyDateTime": 1408040779.263, "CreationDateTime": 1408040515.535 }, "State": "RUNNING", "StateChangeReason": {} }, "Ec2InstanceId": "i-e89b45e7", "PublicDnsName": "ec2-###-##-##-###.us-west-2.compute.amazonaws.com" "PrivateDnsName": "ip-###-##-##-###.us-west-2.compute.internal", "PublicIpAddress": "##.###.###.##", "Id": "ci-12XXXXXXXXFMH", "PrivateIpAddress": "###.##.#.###"

Para obter mais informações, consulte EMRos comandos da Amazon no AWS CLI.

Conecte-se ao nó primário usando SSH uma chave EC2 privada da Amazon no Linux, Unix e Mac OS X

Para criar uma SSH conexão autenticada com um arquivo de chave privada, você precisa especificar a EC2 chave privada do par de chaves da Amazon ao iniciar um cluster. Para obter mais informações sobre como acessar seu par de chaves, consulte os pares de EC2 chaves da Amazon no Guia EC2 do usuário da Amazon.

Seu computador Linux provavelmente inclui um SSH cliente por padrão. Por exemplo, o Open SSH está instalado na maioria dos sistemas operacionais Linux, Unix e macOS. Você pode verificar se há um SSH cliente digitando ssh na linha de comando. Se o computador não reconhecer o comando, instale um SSH cliente para se conectar ao nó primário. O SSH projeto Open fornece uma implementação gratuita do conjunto completo de SSH ferramentas. Para obter mais informações, consulte o SSH site da Open.

As instruções a seguir demonstram como abrir uma SSH conexão com o nó EMR primário da Amazon no Linux, Unix e Mac OS X.

Para configurar as permissões do arquivo de chave privada do par de chaves

Antes de usar sua EC2 chave privada de par de chaves da Amazon para criar uma SSH conexão, você deve definir permissões no .pem arquivo para que somente o proprietário da chave tenha permissão para acessá-lo. Isso é necessário para criar uma SSH conexão usando o terminal ou AWS CLI o.

  1. Verifique se você permitiu o SSH tráfego de entrada. Para obter instruções, consulte Antes de se conectar: autorize o tráfego de entrada.

  2. Localize seu arquivo .pem. Estas instruções pressupõem que o arquivo se chame mykeypair.pem e esteja armazenado no diretório inicial do usuário atual.

  3. Digite o seguinte comando para definir as permissões. Substituir ~/mykeypair.pem com o caminho completo e o nome do arquivo de chave privada do par de chaves. Por exemplo, C:/Users/<username>/.ssh/mykeypair.pem.

    chmod 400 ~/mykeypair.pem

    Se você não definir permissões no arquivo .pem, receberá um erro indicando que o arquivo de chave está desprotegido e que a chave será rejeitada. Para conectar, você só precisa definir permissões no arquivo de chave privada do par de chaves ao usá-lo pela primeira vez.

Conectar-se ao nó primário usando o terminal
  1. Abra uma janela do terminal. No Mac OS X, escolha Applications > Utilities > Terminal (Aplicativos > Utilitários > Terminal). Em outras distribuições do Linux, o terminal está normalmente localizado em Applications > Accessories > Terminal (Aplicativos > Acessórios > Terminal).

  2. Para estabelecer uma conexão com o nó primário, digite o comando a seguir. Substituir ec2-###-##-##-###.compute-1.amazonaws.com com o DNS nome público primário do seu cluster e substitua ~/mykeypair.pem com o caminho completo e o nome do .pem arquivo. Por exemplo, C:/Users/<username>/.ssh/mykeypair.pem.

    ssh hadoop@ec2-###-##-##-###.compute-1.amazonaws.com -i ~/mykeypair.pem
    Importante

    Você deve usar o nome de login hadoop ao se conectar ao nó EMR primário da Amazon; caso contrário, você poderá ver um erro semelhante Server refused our key a.

  3. Um aviso afirma que não foi possível verificar a autenticidade do host ao qual você está se conectando. Digite yes para continuar.

  4. Quando terminar de trabalhar no nó primário, digite o comando a seguir para fechar a SSH conexão.

    exit

Se você estiver tendo dificuldades para se conectar SSH ao seu nó primário, consulte Solucionar problemas de conexão com sua instância.

Conecte-se ao nó primário usando SSH no Windows

Os usuários do Windows podem usar um SSH cliente como o Pu TTY para se conectar ao nó primário. Antes de se conectar ao nó EMR primário da Amazon, você deve baixar e instalar o Pu TTY e o uTTYgen P. Você pode baixar essas ferramentas na página de TTY download do Pu.

TTYO Pu não oferece suporte nativo ao formato de arquivo de chave privada do par de chaves (.pem) gerado pela AmazonEC2. Você usa P uTTYgen para converter seu arquivo de chave para o TTY formato Pu necessário (.ppk). Você deve converter sua chave nesse formato (.ppk) antes de tentar se conectar ao nó primário usando PuTTY.

Para obter mais informações sobre como converter sua chave, consulte Convertendo sua chave privada usando P uTTYgen no Guia EC2 do usuário da Amazon.

Para se conectar ao nó primário usando Pu TTY
  1. Verifique se você permitiu o SSH tráfego de entrada. Para obter instruções, consulte Antes de se conectar: autorize o tráfego de entrada.

  2. Abra o putty.exe. Você também pode iniciar o Pu na lista TTY de programas do Windows.

  3. Se necessário, na lista Category (Categoria), escolha Session (Sessão).

  4. Em Nome do host (ou endereço IP), digite hadoop@MasterPublicDNS. Por exemplo: hadoop@ec2-###-##-##-###.compute-1.amazonaws.com.

  5. Na lista Categoria, escolha Conexão > SSH, Auth.

  6. Para Private key file for authentication (Arquivo de chave privada para autenticação), escolha Browse (Procurar) e selecione o arquivo .ppk que você gerou.

  7. Escolha Abrir e depois Sim para ignorar o alerta de TTY segurança Pu.

    Importante

    Quando fizer login no nó primário, digite hadoop se for solicitado a especificar um nome de usuário.

  8. Quando terminar de trabalhar no nó primário, você pode fechar a SSH conexão fechando o PuTTY.

    nota

    Para evitar que a SSH conexão atinja o tempo limite, você pode escolher Conexão na lista Categoria e selecionar a opção Ativar TCP _keepalives. Se você tiver uma SSH sessão ativa no PuTTY, poderá alterar suas configurações abrindo o contexto (clique com o botão direito do mouse) da barra de TTY título do Pu e escolhendo Alterar configurações.

Se você estiver tendo dificuldades para se conectar SSH ao seu nó primário, consulte Solucionar problemas de conexão com sua instância.

Conectar-se ao nó primário usando a AWS CLI

Você pode criar uma SSH conexão com o nó primário usando o AWS CLI no Windows e no Linux, Unix e Mac OS X. Independentemente da plataforma, você precisa do DNS nome público do nó primário e da EC2 chave privada do par de chaves da Amazon. Se você estiver usando o AWS CLI no Linux, Unix ou Mac OS X, também deverá definir permissões no arquivo (.pemou.ppk) chave privada, conforme mostrado emPara configurar as permissões do arquivo de chave privada do par de chaves.

Para se conectar ao nó primário usando o AWS CLI
  1. Verifique se você permitiu o SSH tráfego de entrada. Para obter instruções, consulte Antes de se conectar: autorize o tráfego de entrada.

  2. Para recuperar o identificador de cluster, digite:

    aws emr list-clusters

    A saída lista seus clusters, incluindo o clusterIDs. Observe o ID do cluster ao qual você está se conectando.

    "Status": { "Timeline": { "ReadyDateTime": 1408040782.374, "CreationDateTime": 1408040501.213 }, "State": "WAITING", "StateChangeReason": { "Message": "Waiting after step completed" } }, "NormalizedInstanceHours": 4, "Id": "j-2AL4XXXXXX5T9", "Name": "AWS CLI cluster"
  3. Digite o comando a seguir para abrir uma SSH conexão com o nó primário. No exemplo a seguir, substitua j-2AL4XXXXXX5T9 com o ID do cluster e substitua ~/mykeypair.key com o caminho completo e o nome do .pem arquivo (para Linux, Unix e Mac OS X) ou .ppk arquivo (para Windows). Por exemplo, C:\Users\<username>\.ssh\mykeypair.pem.

    aws emr ssh --cluster-id j-2AL4XXXXXX5T9 --key-pair-file ~/mykeypair.key
  4. Quando terminar de trabalhar no nó primário, feche a AWS CLI janela.

    Para obter mais informações, consulte EMRos comandos da Amazon no AWS CLI. Se você estiver tendo dificuldades para se conectar SSH ao seu nó primário, consulte Solucionar problemas de conexão com sua instância.