Diferencia entre revisiones de «Hadoop»

De Ardemans Wiki
Saltar a: navegación, buscar
(Instalación)
(Configuración pseudo-distribuida)
Línea 62: Línea 62:
 
     </property>
 
     </property>
 
</configuration>
 
</configuration>
 +
</pre>
 +
 +
Sin embargo yo lo he hecho de la siguiente forma, lanzando unos scripts de configuración que hay en esta versión rpm de centos.
 +
 +
En primer lugar lanzamos el script de configuración de hadoop:
 +
<pre>
 +
# hadoop-setup-conf.sh
 +
</pre>
 +
En el que pregunta varios datos de ubicación de ficheros de configuración o donde va a ir el repositorio de datos de hdfs, donde va el pid, etc
 +
 +
Al terminal este script de configuración dice que hay que ejecutar el de configuracion de hdfs, pero antes de eso le vamos a dar formato.
 +
 +
Para ello, como usuario hdfs, ejecutamos el comando:
 +
<pre>
 +
# hadoop namenode -format
 +
</pre>
 +
 +
Después podemos volver al usuario root y ejecutamos la configuracion de hdfs
 +
<pre>
 +
# hadoop-setup-hdfs.sh
 +
</pre>
 +
esto generará varios directorios dentro del dfs. Al finalizar nos sugiere que arranquemos el servicio datanode
 +
<pre>
 +
# /etc/init.d/hadoop-datanode start
 
</pre>
 
</pre>
  

Revisión de 06:33 10 sep 2012

Introducción

Documento con apuntes sobre mi investigación sobre que es hadoop y como instalarlo. Viene de la necesidad en mi curro de instalar un sistema de procesado distribuido de ciertos ficheros de log.

Enlaces de interes

Instalación

Preparación

Antes de nada he tenido que instalar Java 1.6.x (segun la documentación, preferiblemente desde SUN). Para descargarlo desde esta página. Me lo he descargado a /opt/src, y después lo he ejecutado poniendo sh /opt/src/jre-6u33-linux-x64.bin. Esto descomprime el binario y lo deja en /opt/src/jre1.6.0_33 y yo lo he movido a /opt/jre1.6.0_33. Además creo un enlace dentro del propio /opt con ln -s /opt/jre1.6.0_33 java.

Tambien he añadido al fichero /root/.bashrc las siguientes líneas

export JAVA_HOME=/opt/java
export PATH=$PATH:$JAVA_HOME/bin

Comprobamos que tenemos el paquete ssh y sshd en el servidor

Descarga

Nos descargamos el hadoop. Para ello vamos a esta página para descargarnos la versión estable actual.

En primer lugar me he bajado la versión estable en RPM para 64 bits. Me la he descargado en el directorio /opt/src. Después lo he instalado con rpm: rpm -i hadoop-1.0.3-1.x86_64.rpm

Configuración previa

Home de Java

Antes de arrancar nada, nada más instalar el rpm, editamos el fichero /etc/hadoop/hadoop-env.sh. Comprobamos que hace un export a la ubicación de java correcta (/opt/java)

Uso maximo de memoria java

Para cambiar el límite de memoria que puede usar el proceso java de hadoop hay que cambiar la variable de HADOOP_OPTS del fichero de configuración /etc/hadoop/hadoop-env.sh

export HADOOP_OPTS="-Djava.net.preferIPv4Stack=true -Xmx2048m $HADOOP_CLIENT_OPTS"

Si ejecutamos /usr/bin/hadoop, nos dará información de como arrancar el proceso de hadoop.

Configuración pseudo-distribuida

Segun la página de documentación de hadoop La configuración que hay que realizar para el modo de distribuido en un solo nodo es la siguiente: conf/core-site.xml:

<configuration>
     <property>
         <name>fs.default.name</name>
         <value>hdfs://localhost:9000</value>
     </property>
</configuration>

conf/hdfs-site.xml:

<configuration>
     <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
</configuration>

conf/mapred-site.xml:

<configuration>
     <property>
         <name>mapred.job.tracker</name>
         <value>localhost:9001</value>
     </property>
</configuration>

Sin embargo yo lo he hecho de la siguiente forma, lanzando unos scripts de configuración que hay en esta versión rpm de centos.

En primer lugar lanzamos el script de configuración de hadoop:

# hadoop-setup-conf.sh

En el que pregunta varios datos de ubicación de ficheros de configuración o donde va a ir el repositorio de datos de hdfs, donde va el pid, etc

Al terminal este script de configuración dice que hay que ejecutar el de configuracion de hdfs, pero antes de eso le vamos a dar formato.

Para ello, como usuario hdfs, ejecutamos el comando:

# hadoop namenode -format

Después podemos volver al usuario root y ejecutamos la configuracion de hdfs

# hadoop-setup-hdfs.sh

esto generará varios directorios dentro del dfs. Al finalizar nos sugiere que arranquemos el servicio datanode

# /etc/init.d/hadoop-datanode start

Configuración distribuida

(falta... lo guapo)

Instalación de PIG

La instalación de pig es muy sencilla en Centos. Nos hemos bajado la versión estable desde esta página como rpm en /opt/src/ y después lo hemos instalado con rpm -i pig-0.10.0-1.i386.rpm