GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Apache Hadoop en CentOS 7, Ubuntu 18.04 y Debian 9

Apache Hadoop es un marco de software de código abierto escrito en Java para almacenamiento distribuido y procesos distribuidos, y maneja conjuntos de datos de gran tamaño distribuyéndolos entre clústeres de computadoras.

En lugar de depender de la alta disponibilidad del hardware, los módulos de Hadoop están diseñados para detectar y manejar la falla en la capa de la aplicación, por lo que le brinda un servicio de alta disponibilidad.

El marco Hadoop consta de los siguientes módulos,

  • Común de Hadoop:contiene un conjunto común de bibliotecas y utilidades compatibles con otros módulos de Hadoop
  • Sistema de archivos distribuidos de Hadoop (HDFS):es un sistema de archivos distribuido basado en Java que almacena datos, proporcionando un rendimiento muy alto a la aplicación.
  • Hadoop YARN:administra los recursos en los clústeres de cómputo y los usa para programar las aplicaciones del usuario.
  • Hadoop MapReduce:es un marco para el procesamiento de datos a gran escala.

Esta guía lo ayudará a instalar Apache Hadoop en CentOS 7, Ubuntu 18.04 y Debian 9. Esta guía también debería funcionar en Ubuntu 16.04.

Requisitos

Cambie al usuario root.

su -

O

sudo su -

Instalar Java

Apache Hadoop requiere solo la versión 8 de Java. Por lo tanto, puede optar por instalar OpenJDK u Oracle JDK.

LEER: Cómo instalar Oracle Java en CentOS 7/RHEL 7

LEER: Cómo instalar Oracle Java en Ubuntu 18.04

LEER: Cómo instalar Oracle Java en Debian 9

Aquí, para esta demostración, instalaré OpenJDK 8.

### CentOS 7/RHEL 7 ### # yum -y install java-1.8.0-openjdk wget### Ubuntu 18.04/16.04 y Debian 9 ### # apt actualizar # apt install -y openjdk-8-jdk wget

Compruebe la versión de Java.

# java -versión

Salida:

openjdk versión "1.8.0_212" OpenJDK Runtime Environment (compilación 1.8.0_212-b04)OpenJDK 64-Bit Server VM (compilación 25.212-b04, modo mixto)

Cree un usuario de Hadoop y habilite la autenticación sin contraseña

Se recomienda crear un usuario normal para configurar y ejecutar Apache Hadoop. Por lo tanto, cree un usuario llamado hadoop y establezca una contraseña.

# useradd -m -d /home/hadoop -s /bin/bash hadoop# passwd hadoop

Una vez que haya creado un usuario, configure ssh sin contraseña en el sistema local. Cree una clave ssh usando los siguientes comandos.

# su - hadoop$ ssh-keygen$ cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys$ chmod 600 ~/.ssh/authorized_keys

Verifique la comunicación sin contraseña con el sistema local. Si está haciendo ssh por primera vez, escriba sí para agregar claves RSA a hosts conocidos.

$ ssh 127.0.0.1

Instalar Apache Hadoop

Descarga Hadoop

Puede visitar la página de Apache Hadoop para descargar el último paquete de Hadoop, o puede ejecutar el siguiente comando en la terminal para descargar Hadoop v3.2.0.

$ wget https://www-us.apache.org/dist/hadoop/common/stable/hadoop-3.2.0.tar.gz$ tar -zxvf hadoop-3.2.0.tar.gz $ mv hadoop -3.2.0 hadoop

Instalar Hadoop

Hadoop admite tres modos de clústeres

  1. Modo local (independiente):se ejecuta como un único proceso Java.
  2. Modo pseudodistribuido:cada demonio de Hadoop se ejecuta en un proceso independiente.
  3. Modo completamente distribuido:es un clúster real de varios nodos que va desde unos pocos nodos hasta un clúster extremadamente grande.

Configurar variables ambientales

Aquí, configuraremos Hadoop en modo pseudodistribuido. Para empezar, configure las variables ambientales en el archivo ~/.bashrc.

exportar JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre ## Cámbialo según tu sistema exportar HADOOP_HOME=/inicio/hadoop/hadoop ## Cámbialo según tu sistema exportar hadoop_install =$ hadoop_homeexport hadoop_mapred_home =$ hadoop_homeexport hadoop_common_home =$ hadoop_homeexport 

Aplicar variables ambientales a la sesión actual.

$ fuente ~/.bashrc

Modificar archivos de configuración

Edite el archivo ambiental de Hadoop.

vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh

Establezca la variable de entorno JAVA_HOME.

exportar JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre

Hadoop tiene muchos archivos de configuración y debemos editarlos según los modos de clúster que configuremos (pseudodistribuidos).

$ cd $HADOOP_HOME/etc/hadoop

Edite core-site.xml.

  fs.defaultFS hdfs://servidor.itzgeek.local :9000 

Edite hdfs-site.xml.

  dfs.replicación 1   dfs.nombre.dir archivo :///home/hadoop/hadoopdata/hdfs/namenode    dfs.data.dir file:///home/hadoop/hadoopdata/hdfs/datanode  

Cree directorios NameNode y DataNode en el directorio de inicio del usuario de hadoop.

 mkdir -p ~/hadoopdata/hdfs/{namenode,datanode}

Edite mapred-site.xml.

  mapreduce.framework.name hilo 

Edite yarn-site.xml.

  yarn.nodemanager.aux-services mapreduce_shuffle 

Ahora formatee el NameNode usando el siguiente comando. No olvide consultar el directorio de almacenamiento.

$ hdfs namenode -formato

Salida:

. . .. . .2019-05-12 06:38:42,066 INFO common.Storage:el directorio de almacenamiento /home/hadoop/hadoopdata/hdfs/namenode se ha formateado correctamente.2019-05-12 06:38:42,169 INFO namenode.FSImageFormatProtobuf:Guardando imagen file /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage.ckpt_00000000000000000000 sin compresión2019-05-12 06:38:42,483 INFO namenode.FSImageFormatProtobuf:Archivo de imagen /home/hadoop/hadoopdata/hdfs/namenode/current/fsimage .ckpt_0000000000000000000 de tamaño 401 bytes guardado en 0 segundos APAGADO_MSG:/*********************************************** *************SHUTDOWN_MSG:Apagando NameNode en server.itzgeek.local/192.168.1.10*********************** ***************************************/

Cortafuegos

Permita Apache Hadoop a través del firewall. Ejecute los siguientes comandos como usuario root.

CortafuegosD:

firewall-cmd --permanent --add-port=9870/tcpfirewall-cmd --permanent --add-port=8088/tcpfirewall-cmd --recargar

UFW:

ufw permitir 9870/tcpufw permitir 8088/tcpufw recargar

Inicie el daemon NameNode y el daemon DataNode utilizando los scripts en el directorio /sbin, proporcionado por Hadoop.

$ inicio-dfs.sh

Salida:

Iniciando namenodes en [server.itzgeek.local]server.itzgeek.local:Advertencia:Se agregó permanentemente 'server.itzgeek.local,192.168.1.10' (ECDSA) a la lista de hosts conocidos.Iniciando datanodeslocalhost:Advertencia:Permanentemente agregó 'localhost' (ECDSA) a la lista de hosts conocidos. Iniciando nodos de nombre secundarios [server.itzgeek.local]2019-05-12 06:39:14,171 WARN util.NativeCodeLoader:no se puede cargar la biblioteca nativa de hadoop para su plataforma. .. usando clases java integradas cuando corresponda

Abra su navegador web y vaya a la siguiente URL para navegar por NameNode.

http://ip.ad.dre.ss:9870/

Inicie el demonio ResourceManager y el demonio NodeManager.

$ inicio-hilo.sh

Salida:

Iniciando resourcemanagerIniciando nodemanagers

Abra su navegador web y vaya a la siguiente URL para acceder al ResourceManager.

http://ip.ad.dre.ss:8088/

Prueba del clúster de nodo único de Hadoop

Antes de realizar la carga, creemos un directorio en HDFS.

$ hdfs dfs-mkdir /raj

Carguemos un archivo en el directorio HDFS llamado raj.

$ hdfs dfs -put ~/.bashrc /raj

Los archivos subidos se pueden ver yendo a NameNode>> Utilidades>> Explorar el sistema de archivos en NodoNombre.

http://ip.ad.dre.ss/explorer.html#/raj

Copie los archivos de HDFS a sus sistemas de archivos locales.

$ hdfs dfs -get /raj /tmp/

Puede eliminar los archivos y directorios usando los siguientes comandos.

hdfs dfs -rm -f /raj/.bahrchdfs dfs -rmdir /raj

Conclusión

Eso es todo. Configuró correctamente un clúster de Hadoop de un solo nodo y probó el sistema de archivos de Hadoop. Comparta sus comentarios en la sección de comentarios.


Cent OS
  1. Cómo instalar Apache Hadoop en Debian 9 Stretch

  2. Cómo instalar Apache Hadoop en CentOS 7

  3. Cómo instalar Apache Hadoop en Ubuntu 18.04 LTS

  4. Cómo instalar Hadoop en Debian 11

  5. ¿Cómo instalar Apache en Ubuntu?

Cómo instalar Apache en CentOS 8

Cómo instalar Apache Maven en CentOS 8

Cómo instalar Apache Maven en CentOS 8

Cómo instalar Kubernetes en CentOS 7, Ubuntu 18.04/16.04 y Debian 9

Cómo instalar Apache Maven en Ubuntu 18.04 / Ubuntu 16.04 y Debian 9

Cómo instalar Apache en Ubuntu 20.04