Comandos útiles para la gestión de cluster hadoop + spark + yarn

Gestión de almacenes de certificados keystore Java, comandos mas habituales.
13 de febrero de 2024
Controlando el tamaño de logs en /var/log/journal
14 de febrero de 2024
Gestión de almacenes de certificados keystore Java, comandos mas habituales.
13 de febrero de 2024
Controlando el tamaño de logs en /var/log/journal
14 de febrero de 2024

1.- Crearemos un usuario hadoop en el sistema.

2.- Copiaremos las claves ssh en los nodos para que el usuario hadoop pueda logearse sin contraseña desde el master.

3.- Asignaremos permisos hadoop:hadoop a todo el directorio /opt/hadoop recursivamente.

4.- Descomprimiremos los paquetes en los directorios /opt/spark y /opt/hadoop respectivamente.

5.- Configuramos el archivo hosts y hostname de cada servidor, en nuestro caso 1 master y 2 nodos.

6.- Desactivamos el cortafuegos.

7.- Configuramos los archivos de propiedades del master relativos a hadoop y spark, los copiaremos en los nodos también.

8.- Establecemos las variables de entorno necesarias en el archivo .bashrc del usuario hadoop (actualizar tiempo real con source ~/.bashrc).

COMANDOS

Inicializar el almacenamiento hdfs (usuario hadoop).

hdfs namenode -format

Comandos interacción hdfs.

hdfs dfs -mkdir /datasets
hdfs dfs -chmod 777 /datasets
hdfs dfs -chown hadoop:hadoop /datasets
hdfs dfs -copyFromLocal test.txt /test.txt

Cambiar a usuario hadoop.

su - hadoop

Inicializar hadoop (Hay que lanzarlo desde el usuario hadoop. Si están bien las variables de entorno no es necesario ir a /opt/hadoop/sbin).

start-all.sh

Iniciaizar Spark (Como root desde /opt/spark/sbin).

./start-workers.sh (en nodos)
./start-all.sh (en master)

Parar servicio hdfs.

stop-all.sh

Comprobar los servicios corriendo en un host.

jps

En master:
8241 SecondaryNameNode
7942 NameNode
8442 ResourceManager
46924 Jps

En nodos:
3744 Worker (Spark)
10452 Jps
3301 NodeManager
3115 DataNode

Puertos principales de los servicios.

Puerto 8042 -> YARN manager (nodes)
Puerto 8088 -> YARN manager (master)
Puerto 8080 -> Spark master
Puerto 8081 -> Spark workers
Puerto 9870 -> Hadoop master
Puerto 9864 -> Hadoop datanode
Puerto 8888 -> Jupyter notebook

Comprobar nodos ejecutándose en el entorno.

yarn node -list

INFO client.DefaultNoHARMFailoverProxyProvider: Connecting to ResourceManager at hadoop-master/192.168.1.15:8032
Total Nodes:2
Node-Id                         Node-State Node-Http-Address                 Number-of-Running-Containers
hadoop-node1:39161              RUNNING hadoop-node1:8042                                  0
hadoop-node2:46375              RUNNING hadoop-node2:8042                                  0

Lanzar jupyter-notebook (Como usuario hadoop sino hay que añadir el parámetro –allow-root)

jupyter-notebook --ip 0.0.0.0 --no-browser --port=8888

Para utilizar jupyter-notebook e interactuar con nuestro motor Spark tendremos que instalar la librería PySpark.

pip install pyspark

Si no hemos definido variables de entorno hay un paquete que nos ayudará.

pip install findspark

Al comienzo de un script python colocar:

import findspark
findspark.init()
from pyspark import SparkContext

sc = SparkContext()

datos = sc.parallelize([1, 2, 3, 4])
datos.take(2)

Mas información: https://aprenderbigdata.com/hdfs/

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Comandos útiles para la gestión de cluster hadoop + spark + yarn
Este sitio web utiliza cookies para mejorar su experiencia. Al utilizar este sitio web, usted acepta nuestra Política de privacidad.
Leer más