Distribuciones que integran Hadoop
- MapReduce: plataforma para procesado en paralelo una tarea o un calculo en grandes cantidades de datos.
- HBase: base de datos distribuida para grandes volúmenes de datos.
- HDFS: sistema de ficheros distribuido.
Con el fin de facilitar la configuración e instalación de Hadoop, existen diversas distribuciones, tales como Cloudera o Hortonworks entre otras.
La distribución de Cloudera (CDH) fue la primera en aparecer en el mercado, combinando Big Data y Hadoop. CDH no solo incluye el núcleo de Hadoop (HDFS, MapReduce…) sino que también integra diversos proyectos de Apache (HBase, Mahout, Pig, Hive, etc.). CDH es 100% open-source, y cuenta con una interfaz gráfica propietaria, Cloudera Manager, para la administración y gestión de los nodos del clúster Hadoop. La descarga es totalmente gratuita. No obstante, también cuenta con una versión empresarial, que incluye una interfaz más sofisticada.
Instalando Cloudera Manager
Para seguir mi andadura en el mundo de Hadoop, después de haber realizado el curso online de introducción en bigdatauniversity.com (con prácticas en el utilizando una imagen con un sistema Linux para wmware con el software IBM biginsights ya configurado) pretendo instalar y configurar Hadoop por mi cuenta y montarme un pequeño cluster compuesto por mi nuevo ordenador de sobremesa y mi viejo portatil.
Esquema de mini-cluster hadoop administrado con Cloudera Manager |
He decidido instalar Hadoop mediante la distribución de Cloudera a través de la aplicación Cloudera Manager. He instalado Cloudera Enterprise 5 Beta 2 (incorpora la distribución de Hadoop de cloudera CDH 5 Beta 2) en el ordenador de sobremesa. Se accede inicialmente a la consola de administración a través de la dirección/puerto http://127.0.0.1:7180, con usuario/contraseña admin/admin.
Una vez instalado Cloudera Manager en el ordenador de sobremesa y para poder instalar y configurar CDH sobre los host que componen el cluster, según se indica en la guía de instalación:
- Uniform SSH access to cluster hosts on the same port from Cloudera Manager Server host.
- You must log in to the Cloudera Manager Server host using a root account or an account that has password-less sudo permission.
- Cluster hosts must have a working network name resolution system. Properly configuring DNS and reverse DNS meets this requirement.
Para que la aplicación Cloudera Manager tenga acceso a ambos ordenadores a través de SSH he instalado Open SSH en los dos:
sudo apt-get install openssh-client
sudo apt-get install openssh-server
Para que Cloudera Manager pueda instalar los paquetes necesarios y configurarlos, necesita acceder mediante SSH como usuario root o como un usuario con permisos sudo sin que se requiera contraseña. La cuenta root viene desactivada por defecto en Ubuntu, por lo que voy a conceder permisos sudo (permite a los usuarios tener ciertos privilegios sobre el sistema, acercándose a root,) a un usuario en cada uno de los ordenadores sin que requiera contraseña.
Los parámetros de que usuario está dentro de sudo y que usuario no lo está, se encuentran en el archivo sudoers, así que lo tendré que editar:
Los parámetros de que usuario está dentro de sudo y que usuario no lo está, se encuentran en el archivo sudoers, así que lo tendré que editar:
sudo gedit /etc/sudoers
Doy permiso sudo sin contraseña al usuario astwin (usuario en ordenador de sobremesa) y usuario peset (usuario en ordenador portatil), añadiendo una linea al final del archivo sudoers:
astwin ALL=(ALL) NOPASSWD:ALL #(Sobremesa)
peset ALL=(ALL) NOPASSWD:ALL #(Portatil)
Otro requerimiento es que todos los host del cluster deber ser capaces de resolver DNS y DNS inversa hacia el resto de host. Al tener ambos ordenadores conectados en red mediante cable, compartiendo el Internet wifi del portátil al ordenador de sobremesa, se puede conseguir "bypaseeando" la búsqueda DNS en cada uno de los host a través del fichero /etc/hosts:
sudo gedit /etc/hosts
Así queda el contenido del fichero hosts en cada uno de los ordenadores:
127.0.0.1 localhost.localdomain localhost
10.42.0.12 astwin-H87-HD3.local astwin-H87-HD3
10.42.0.1 peset-dv6-Notebook-PC.local peset-dv6-Notebook-PC
Desde la consola de administración, en el apartado de host, le clickeamos a añadir nuevos hosts al cluster para añadir los dos ordenadores y automáticamente instalar y pre-configurar CDH en cada uno de ellos.
sudo gedit /etc/hosts
Así queda el contenido del fichero hosts en cada uno de los ordenadores:
127.0.0.1 localhost.localdomain localhost
10.42.0.12 astwin-H87-HD3.local astwin-H87-HD3
10.42.0.1 peset-dv6-Notebook-PC.local peset-dv6-Notebook-PC
Desde la consola de administración, en el apartado de host, le clickeamos a añadir nuevos hosts al cluster para añadir los dos ordenadores y automáticamente instalar y pre-configurar CDH en cada uno de ellos.
Ordenador portatil |
Ordenador sobremesa |
No hay comentarios:
Publicar un comentario