La instalación y configuracion de Hadoop fue uno de los primeros quebraderos de cabeza a los que tenía que enfrentarse la comunidad cuando quería realizar pruebas.
Han surgido diversos proyectos que pretenden automatizar la instalación de Hadoop y su ecosistema a través de distintas herramientas, managers, administradores, etc. De hecho es uno de los principales puntos fuertes que tienen los Middlewares como Cloudera.
En esta línea surge el proyecto Apache Ambari, que busca facilitarnos la tarea de instalación de Hadoop.
Resumen de Ambari
Con Apache Ambari vamos a poder:· Proporcionar un Cluster Hadoop
- Proporciona un instalador (wizard) paso a paso para instalar los servicios de Hadoop a distintos Hosts.
- Permite configurar los servicios del Cluster Hadoop
· Administrar un Cluster Hadoop
- Permite iniciar, parar y reconfigurar los servicios de Hadoop
· Monitorizar un Cluster Hadoop
- Proporciona un dashboard para la monitorización de la salud y el estado de los nodos del Cluster Hadoop
- Tenemos Glanglia para recolectar métricas
- Nos ayuda en la instalación de Nagios, para alertarnos y enviarnos emails cuando sea necesario...
· Además tiene una rica API Rest por si queremos hacer algún desarrollo propio.
Soporte de sistemas operativos
· Soportados actualmente:- RHEL
- CentOS 5 y 6
- OEL
- SLES
· Próximamente:
- Ubuntu aún no
Yo voy a utilizar tres máquinas virtuales CentOs 6.5 64 bits para hacer este post. Para ello puedes descargar la imagen desde aquí:
http://ftp.cixug.es/CentOS/6.5/isos/x86_64/CentOS-6.5-x86_64-minimal.iso
Nota: no os olvidéis de poner el adaptador de red a "modo puente" y seleccionar la interfaz de red que tenga internet (wifi, ethernet...).
Instalación - Común a todos los servidores
sudo su
setenforce 0
vi /etc/selinux/config -> SELINUX=disabled
/etc/init.d/iptables stop
Muy importante:
vi /etc/hosts -> introducir una nueva línea: <ip> <nombre_hosts> <nombre_hosts>
Se quedaría algo así:
ssh-keygen
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
yum install openssl
yum install wget
Instalación - Ambari Manager - sólo en el servidor del manager:
Desde la máquina del servidor probamos a conectarnos a los nodos:
ssh root@{hostname_del_nodo}Esto desde el manager a cada uno de los nodos y desde cada uno de los nodos al servidor del manager:
ssh-copy-id root@{hostname_del_servidor|nodo}Esto solo en el manager:
cd /etc/yum.repos.d/
wget http://public-repo-1.hortonworks.com/ambari/centos6/1.x/updates/1.5.1/ambari.repo
yum install ambari-server
ambari-server setup
Seguimos las opciones recomendadas (las que vienen entre paréntesis).ambari-server start
Vamos a nuestra dirección ip del ambari-server en el navegador apuntando al puerto 8080.
Pasos del Instalador
1. Introducimos de nombre y contraseña: admin
2. Introducimos el nombre del clúster
3. Seleccionamos la distribución de Hadoop que queremos instalar (esto afectará a las versiones de otras aplicaciones compatibles con Hadoop)
4. Introducimos los hostnames
6. Le damos a "Ok" a la confirmación
7. Seleccionamos las aplicaciones que queramos instalar
8. Asignamos los nodos (leed que significa que sean "clients")
9. Le damos a deploy
10. Aparecerá el instalador
11. Una vez completado le damos "Complete"
12. Y ya tenemos Apache Ambari instalado con los servicios más populares del ecosistema Hadoop, para empezar a jugar con el
Más adelante tengo pensado hacer una serie de Screencast sobre Spark, Cassandra, Hadoop, Instaladores, etc.
Espero que os sea de mucha utilidad. Si tenéis cualquier duda, comentad en este mismo post.