Buscar..


Observaciones

¿Qué es Apache Hadoop?

La biblioteca de software Apache Hadoop es un marco que permite el procesamiento distribuido de grandes conjuntos de datos en grupos de computadoras utilizando modelos de programación simples. Está diseñado para escalar desde servidores individuales a miles de máquinas, cada una ofrece computación y almacenamiento locales. En lugar de confiar en el hardware para ofrecer alta disponibilidad, la biblioteca en sí está diseñada para detectar y manejar fallas en la capa de aplicación, por lo que ofrece un servicio de alta disponibilidad sobre un grupo de computadoras, cada una de las cuales puede ser propensa a fallas.

Apache Hadoop incluye estos módulos:

  • Hadoop Common : las utilidades comunes que admiten los otros módulos de Hadoop.
  • Sistema de archivos distribuidos de Hadoop (HDFS) : un sistema de archivos distribuidos que proporciona acceso de alto rendimiento a los datos de la aplicación.
  • Hadoop YARN : un marco para la planificación de tareas y la gestión de recursos de clúster.
  • Hadoop MapReduce : un sistema basado en YARN para el procesamiento paralelo de grandes conjuntos de datos.

Referencia:

Apache Hadoop

Versiones

Versión Notas de lanzamiento Fecha de lanzamiento
3.0.0-alfa1 2016-08-30
2.7.3 Haga clic aquí - 2.7.3 2016-01-25
2.6.4 Haga clic aquí - 2.6.4 2016-02-11
2.7.2 Haga clic aquí - 2.7.2 2016-01-25
2.6.3 Haga clic aquí - 2.6.3 2015-12-17
2.6.2 Haga clic aquí - 2.6.2 2015-10-28
2.7.1 Haga clic aquí - 2.7.1 2015-07-06

Instalación o configuración en Linux

Un procedimiento de configuración de clúster pseudo-distribuido

Prerrequisitos

  • Instale JDK1.7 y establezca la variable de entorno JAVA_HOME.

  • Crea un nuevo usuario como "hadoop".

    useradd hadoop

  • Configuración de inicio de sesión SSH sin contraseña en su propia cuenta

     su - hadoop
     ssh-keygen
     << Press ENTER for all prompts >>
     cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
     chmod 0600 ~/.ssh/authorized_keys
    
  • Verificar realizando ssh localhost

  • Deshabilite IPV6 editando /etc/sysctl.conf con lo siguiente:

     net.ipv6.conf.all.disable_ipv6 = 1
     net.ipv6.conf.default.disable_ipv6 = 1
     net.ipv6.conf.lo.disable_ipv6 = 1
    
  • Compruebe que utilizando cat /proc/sys/net/ipv6/conf/all/disable_ipv6

    (debe devolver 1)

Instalacion y configuracion:

  • Descargue la versión requerida de Hadoop desde los archivos de Apache usando el comando wget .

     cd /opt/hadoop/
     wget http:/addresstoarchive/hadoop-2.x.x/xxxxx.gz
     tar -xvf hadoop-2.x.x.gz
     mv hadoop-2.x.x.gz hadoop 
    (or)
    
     ln -s hadoop-2.x.x.gz hadoop
     chown -R hadoop:hadoop hadoop
    
  • Actualice .bashrc / .kshrc función de su shell con las siguientes variables de entorno

      export HADOOP_PREFIX=/opt/hadoop/hadoop
      export HADOOP_CONF_DIR=$HADOOP_PREFIX/etc/hadoop
      export JAVA_HOME=/java/home/path
      export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin:$JAVA_HOME/bin
    
  • En el $HADOOP_HOME/etc/hadoop edite debajo de los archivos

    • core-site.xml

      <configuration>
          <property>
              <name>fs.defaultFS</name>
              <value>hdfs://localhost:8020</value>
          </property>
      </configuration> 
      
    • mapred-site.xml

      Crea mapred-site.xml desde su plantilla

      cp mapred-site.xml.template mapred-site.xml

        <configuration>
            <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
            </property>
        </configuration> 
      
    • hilo-sitio.xml

       <configuration>
           <property>
               <name>yarn.resourcemanager.hostname</name>
               <value>localhost</value> 
           </property>
           <property>
               <name>yarn.nodemanager.aux-services</name>
               <value>mapreduce_shuffle</value>
           </property>
       </configuration>
      
    • hdfs-site.xml

       <configuration>
           <property>
               <name>dfs.replication</name>
               <value>1</value>
           </property>
           <property>
               <name>dfs.namenode.name.dir</name>
               <value>file:///home/hadoop/hdfs/namenode</value>
           </property>
           <property>
               <name>dfs.datanode.data.dir</name> 
               <value>file:///home/hadoop/hdfs/datanode</value> 
           </property>
       </configuration>
      

    Cree la carpeta principal para almacenar los datos de hadoop

    mkdir -p /home/hadoop/hdfs
    
  • Formato NameNode (limpia el directorio y crea los meta archivos necesarios)

    hdfs namenode -format
    
  • Inicia todos los servicios:

    start-dfs.sh && start-yarn.sh
    mr-jobhistory-server.sh start historyserver
    

En su lugar, use start-all.sh (en desuso).

  • Compruebe todos los procesos en ejecución de Java

    jps 
    
  • Interfaz Web de Namenode: http: // localhost: 50070 /

  • Interfaz web del administrador de recursos: http: // localhost: 8088 /

  • Para detener demonios (servicios):

    stop-dfs.sh && stop-yarn.sh
    mr-jobhistory-daemon.sh stop historyserver
    

En su lugar, use stop-all.sh (en desuso).

Instalación de Hadoop en ubuntu

Creando Usuario Hadoop:

sudo addgroup hadoop

Añadiendo un usuario:

sudo adduser --ingroup hadoop hduser001

introduzca la descripción de la imagen aquí

Configurando SSH:

su -hduser001
ssh-keygen -t rsa -P ""
cat .ssh/id rsa.pub >> .ssh/authorized_keys

Nota : Si obtiene errores [ bash: .ssh / authorized_keys: No existe dicho archivo o directorio ] mientras escribe la clave autorizada. Compruebe aquí .

introduzca la descripción de la imagen aquí introduzca la descripción de la imagen aquí introduzca la descripción de la imagen aquí

Añadir usuario de hadoop a la lista de sudoers:

sudo adduser hduser001 sudo

introduzca la descripción de la imagen aquí

Deshabilitando IPv6:

introduzca la descripción de la imagen aquí introduzca la descripción de la imagen aquí

Instalación de Hadoop:

sudo add-apt-repository ppa:hadoop-ubuntu/stable
sudo apt-get install hadoop

introduzca la descripción de la imagen aquí introduzca la descripción de la imagen aquí

Visión general de Hadoop y HDFS

introduzca la descripción de la imagen aquí

    Hadoop es un marco de software de código abierto para almacenamiento y procesamiento a gran escala de conjuntos de datos en un entorno informático distribuido. Está patrocinado por la Apache Software Foundation. Está diseñado para escalar desde servidores individuales a miles de máquinas, cada una ofrece computación y almacenamiento locales.
Historia

  • Hadoop fue creado por Doug Cutting y Mike Cafarella en 2005.
  • Cutting, que trabajaba en Yahoo! en ese momento, lo nombró por el juguete del elefante de su hijo.
  • Originalmente fue desarrollado para soportar la distribución del proyecto del motor de búsqueda.
Los principales módulos de hadoop.

    Sistema de archivos distribuidos de Hadoop (HDFS): un sistema de archivos distribuidos que proporciona acceso de alto rendimiento a los datos de la aplicación. Hadoop MapReduce: un marco de software para el procesamiento distribuido de grandes conjuntos de datos en clusters de cómputo.
Características básicas del sistema de archivos Hadoop

    Muy tolerante a fallos. Alto rendimiento. Adecuado para aplicaciones con grandes conjuntos de datos. Puede ser construido de hardware de los productos básicos.
Namenode y Datanodes

    Arquitectura maestro / esclavo. El clúster HDFS consta de un solo Namenode, un servidor maestro que administra el espacio de nombres del sistema de archivos y regula el acceso de los clientes a los archivos. Los DataNodes administran el almacenamiento adjunto a los nodos en los que se ejecutan. HDFS expone un espacio de nombres del sistema de archivos y permite que los datos del usuario se almacenen en archivos. Un archivo se divide en uno o más bloques y el conjunto de bloques se almacena en DataNodes. DataNodes: sirve para leer, escribir solicitudes, realizar la creación, eliminación y replicación de bloques siguiendo instrucciones de Namenode.

introduzca la descripción de la imagen aquí

    HDFS está diseñado para almacenar archivos muy grandes a través de máquinas en un grupo grande. Cada archivo es una secuencia de bloques. Todos los bloques en el archivo, excepto el último, son del mismo tamaño. Los bloques se replican para tolerancia a fallos. El Namenode recibe un Heartbeat y un BlockReport de cada DataNode en el clúster. BlockReport contiene todos los bloques en un Datanode.
Comandos de Shell Hadoop

    Comandos comunes utilizados: -
      ls Uso: hadoop fs –ls Ruta (dir / archivo ruta a lista). Uso del gato : hadoop fs -cat PathOfFileToView

introduzca la descripción de la imagen aquí

Enlace para los comandos de shell hadoop: - https://hadoop.apache.org/docs/r2.4.1/hadoop-project-dist/hadoop-common/FileSystemShell.html



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow