Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Conexión al nodo principal del clúster de Amazon EMR mediante SSH
Secure Shell (SSH) es un protocolo de red que puede utilizar para crear una conexión segura a un equipo remoto. Después de realizar una conexión, el terminal en su equipo local se comporta como si se estuviera ejecutando en el equipo remoto. Los comandos que emita a nivel local se ejecutan en el equipo remoto y la salida de comandos desde el equipo remoto aparece en la ventana del terminal.
Cuando usas SSH con AWS, te conectas a una EC2 instancia, que es un servidor virtual que se ejecuta en la nube. Cuando se trabaja con Amazon EMR, el uso más común de SSH es conectarse a la EC2 instancia que actúa como nodo principal del clúster.
El uso de SSH para conectarse al nodo principal le ofrece la posibilidad de monitorizar e interactuar con el clúster. Puede emitir comandos de Linux en el nodo principal, ejecutar aplicaciones como, por ejemplo, Hive y Pig de forma interactiva, examinar directorios, leer archivos de registro, etc. También puede crear un túnel en la conexión SSH para ver las interfaces web alojadas en el nodo principal. Para obtener más información, consulte Ver las interfaces web alojadas en clústeres de Amazon EMR.
Para conectar con el nodo principal mediante SSH, necesita el nombre de DNS público del nodo principal. Además, el grupo de seguridad asociado al nodo principal debe tener una regla de entrada que permita el tráfico SSH (puerto TCP 22) desde un origen que incluya el cliente donde se origina la conexión SSH. Es posible que tenga que añadir una regla para permitir una conexión SSH de su cliente. Para obtener más información sobre la modificación de las reglas de los grupos de seguridad, consulte Control del tráfico de red con grupos de seguridad para su clúster de Amazon EMR Añadir reglas a un grupo de seguridad en la Guía del EC2 usuario de Amazon.
Recuperar el nombre de DNS público del nodo principal
Puede recuperar el nombre de DNS público principal utilizando la consola de Amazon EMR y la AWS CLI.
Conéctate al nodo principal mediante SSH y una clave EC2 privada de Amazon en Linux, Unix y Mac OS X
Para crear una conexión SSH autenticada con un archivo de clave privada, debes especificar la clave privada del par de EC2 claves de Amazon al lanzar un clúster. Para obtener más información sobre cómo acceder a tu par de claves, consulta los pares de EC2 claves de Amazon en la Guía del EC2 usuario de Amazon.
Su equipo Linux muy probablemente incluye un cliente SSH de forma predeterminada. Por ejemplo, OpenSSH está instalado en la mayoría de los sistemas operativos Linux, Unix y macOS. Puede comprobar si tiene un cliente SSH escribiendo ssh en la línea de comandos. Si su equipo no reconoce el comando, instale un cliente SSH para conectarse al nodo principal. El proyecto OpenSSH ofrece una implementación gratuita de toda la suite de herramientas de SSH. Para obtener más información, consulte el sitio web OpenSSH
Las siguientes instrucciones muestran la apertura de una conexión SSH al nodo principal de Amazon EMR en Linux, Unix y Mac OS X.
Para configurar los permisos de archivo de clave privada del par de claves
Antes de poder usar la EC2 clave privada del par de claves de Amazon para crear una conexión SSH, debes configurar los permisos en el .pem
archivo para que solo el propietario de la clave tenga permiso para acceder al archivo. Esto es necesario para crear una conexión SSH mediante el terminal o el. AWS CLI
-
Asegúrese de permitir el tráfico SSH entrante. Para obtener instrucciones, consulte Antes de conectarse a Amazon EMR: autorice el tráfico entrante.
-
Localice su archivo
.pem
. Estas instrucciones suponen que el archivo se denominamykeypair.pem
y que se almacena en el directorio de inicio del usuario actual. -
Escriba el comando siguiente para definir los permisos.
~/mykeypair.pem
Sustitúyalo por la ruta completa y el nombre del archivo de clave privada del par de claves. Por ejemplo,C:/Users/<username>/.ssh/mykeypair.pem
.chmod 400
~/mykeypair.pem
Si no establece permisos en el archivo
.pem
, recibirá un error indicando que el archivo de clave no está protegido y la clave se rechazará. Para conectarse, solo tiene que establecer permisos en el archivo de clave privada del par de claves la primera vez que lo use.
Para conectarse al nodo principal utilizando el terminal
-
Abra una ventana de terminal. En Mac OS X, elija Aplicaciones > Utilidades > Terminal. En otras distribuciones de Linux, el terminal normalmente se encuentra en Aplicaciones > Accesorios > Terminal.
-
Para establecer una conexión al nodo principal, escriba el siguiente comando.
ec2-###-##-##-###.compute-1.amazonaws.com
Sustitúyalo por el nombre DNS público principal de tu clúster y~/mykeypair.pem
sustitúyelo por la ruta completa y el nombre del.pem
archivo. Por ejemplo,C:/Users/<username>/.ssh/mykeypair.pem
.ssh hadoop@
ec2-###-##-##-###.compute-1.amazonaws.com
-i~/mykeypair.pem
importante
Debe utilizar el nombre de inicio de sesión
hadoop
cuando se conecte al nodo principal de Amazon EMR; de lo contrario, es posible que vea un error similar aServer refused our key
. -
Una advertencia indica que la autenticidad del host al que se está conectando no se puede verificar. Escriba
yes
para continuar. -
Cuando haya terminado de trabajar en el nodo principal, escriba el siguiente comando para cerrar la conexión SSH.
exit
Si tiene dificultades para usar SSH para conectarse a su nodo principal, consulte Solucionar problemas de conexión a su instancia.
Conectarse al nodo principal mediante SSH en Windows
Los usuarios de Windows pueden utilizar un cliente SSH como PuTTY para conectarse al nodo principal. Antes de conectarse al nodo principal de Amazon EMR, debe descargar e instalar PuTTY y PuTTY. TTYgen Puede descargar estas herramientas desde la página de descarga de PuTTY
PuTTY no admite de forma nativa el formato de archivo de clave privada (.pem
) de pares de claves generado por Amazon. EC2 Utiliza Pu TTYgen para convertir el archivo clave al formato PuTTY requerido ().ppk
. Debe convertir su clave en este formato (.ppk
) antes de intentar conectarse al nodo principal utilizando PuTTY.
Para obtener más información sobre la conversión de tu clave, consulta Cómo convertir tu clave privada mediante Pu TTYgen en la Guía del EC2 usuario de Amazon.
Para conectarse al nodo principal utilizando PuTTY
-
Asegúrese de permitir el tráfico SSH entrante. Para obtener instrucciones, consulte Antes de conectarse a Amazon EMR: autorice el tráfico entrante.
-
Abra
putty.exe
. También puede lanzar PuTTY desde la lista de programas de Windows. -
Si es necesario, en la lista Category (Categoría), elija Session (Sesión).
-
En Nombre de host (o dirección IP), escriba
hadoop@
MasterPublicDNS
. Por ejemplo:hadoop@
ec2-###-##-##-###.compute-1.amazonaws.com
. -
En la lista Category (Categoría), elija Connection > SSH (Conexión > SSH), Auth (Autenticación).
-
En Private key file for authentication (Archivo de clave privada para la autenticación), elija Browse (Examinar) y seleccione el archivo
.ppk
que ha generado. -
Selecciona Abrir y, a continuación, Sí para descartar la alerta de seguridad de PuTTY.
importante
Al iniciar sesión en el nodo principal, escriba
hadoop
si se le solicita un nombre de usuario. -
Cuando haya terminado de trabajar en el nodo principal, puede cerrar la conexión SSH cerrando PuTTY;.
nota
Para evitar que se supere el tiempo de espera de la conexión SSH, puede elegir Connection (Conexión) en la lista Category (Categoría) y seleccionar la opción Enable TCP_keepalives (Habilitar conexiones keepalives de TCP). Si dispone de una sesión de SSH activa en PuTTY, puede cambiar la configuración abriendo el contexto (clic con el botón derecho) en la barra del título de PuTTY y seleccionar Cambiar configuración.
Si tiene dificultades para usar SSH para conectarse a su nodo principal, consulte Solucionar problemas de conexión a su instancia.
Conectarse al nodo principal utilizando la AWS CLI
Puede crear una conexión SSH con el nodo principal mediante Windows y Linux, Unix y Mac OS X. Independientemente de la plataforma, necesitará el nombre de DNS público del nodo principal y la clave privada del par de EC2 claves de Amazon. AWS CLI Si utiliza Linux, Unix o Mac OS X, también debe configurar los permisos en el archivo de clave privada (.pem
o.ppk
), tal y como se muestra en la siguiente. AWS CLI Para configurar los permisos de archivo de clave privada del par de claves
Para conectarse al nodo principal mediante el AWS CLI
-
Asegúrese de permitir el tráfico SSH entrante. Para obtener instrucciones, consulte Antes de conectarse a Amazon EMR: autorice el tráfico entrante.
-
Para recuperar el identificador del clúster, escriba:
aws emr list-clusters
El resultado muestra los clústeres, incluido el clúster IDs. Tenga en cuenta el ID del clúster al que se está 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"
-
Escriba el comando siguiente para abrir una conexión SSH al nodo principal. En el ejemplo siguiente,
j-2AL4XXXXXX5T9
sustitúyalo por el ID del clúster y~/mykeypair.key
sustitúyelo por la ruta completa y el nombre del.pem
archivo (para Linux, Unix y Mac OS X) o.ppk
archivo (para Windows). Por ejemplo,C:\Users\<username>\.ssh\mykeypair.pem
.aws emr ssh --cluster-id
j-2AL4XXXXXX5T9
--key-pair-file~/mykeypair.key
-
Cuando termine de trabajar en el nodo principal, cierre la AWS CLI ventana.
Para más información, consulte Comandos de Amazon EMR en la AWS CLI. Si tiene dificultades para usar SSH para conectarse a su nodo principal, consulte Solucionar problemas de conexión a su instancia.