Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Monta una Infraestructura Big Data para tu Empresa - Sesión II

2.352 visualizaciones

Publicado el

Segunda parte del Taller "Monta una Infraestructura Big Data para tu Empresa", impartido por Urko Zurutuza de Mondragon Unibertsitatea en Enpresa Digitala. En esta segunda parte, se aborda la instalación de un cluster mediante Cloudera Manager 5

Publicado en: Tecnología
  • Sé el primero en comentar

Monta una Infraestructura Big Data para tu Empresa - Sesión II

  1. 1. Taller: “Monta una infraestructura Big Data para tu Empresa” Urko Zurutuza Dpto. Electrónica e Informática Mondragon Goi Eskola Politeknikoa JMA Mondragon Unibertsitatea
  2. 2. Agenda • Día 1: Introducción al Big Data • Día 2: Instalación de un cluster Cloudera • Día 3: Ejercicios sobre Cloudera
  3. 3. Índice 1. Requisitos 2. Consideraciones de Red y de Seguridad 3. Instalación 4. Instalando Cloudera Manager 5. Cloudera Manager
  4. 4. Requisitos
  5. 5. Sistemas Operativos • RHEL, CentOS (5.7 64 bit, 6.4 64 bit, 6.4 en modo Selinux, 6.5, 64 bit) • Oracle Enterprise Linux with default kernel and Unbreakable Enterprise Kernel, 64-bit (5.6 (UEK R2), 6.4 (UEK R2), 6.5 (UEK R2, UEK R3)) • SUSE Linux Enterprise Server 11, 64-bit • Debian - Wheezy (7.0 and 7.1), Squeeze (6.0) (deprecated), 64-bit • Ubuntu - Trusty (14.04), Precise (12.04), Lucid (10.04) (deprecated), 64-bit
  6. 6. JDK (Java Development Kit) • Cloudera Manager: – Oracle JDK 1.8.0_11 – Oracle JDK 1.7.0_67 – Oracle JDK 1.6.0_31 • Cloudera Manager debe estar ejecutado sobre una versión JDK soportada por todos los clusters Hadoop que gestiona. Ejemplo: – Cloudera Manager 5 sobre la versión 1.6 de JDK solo podrá gestionar clusters de CDH4. – Para gestionar clusters CDH5 se necesita la versión 1.7 de JDK. – Si se desean gestionar clusters de CDH4 y CDH5 de forma simultánea con Cloudera Manager 5, se deberá urilizar la versión 1.7 de JDK.
  7. 7. Navegadores • La Consola de Administración de Cloudera Manager, la cual se utiliza para la instalación, configuración, gestión y monitorización de servicios, está soportada por: – Mozilla Firefox 11 y superiores – Google Chrome – Internet Explorer 9 y superiores – Safari 5 y superiores
  8. 8. Bases de Datos • Cloudera Manager Server almacena información sobre los servicios configurados, la asignación de roles, un histórico de la configuración, comandos, usuarios, y procesos en ejecución en una base de datos propia. • Cloudera Manager y los servicios que los soportan pueden hacer uso de las siguientes bases de datos: – MySQL - 5.0, 5.1, 5.5, y 5.6 – Oracle 11gR2 – PostgreSQL - 8.4, 9.1, 9.2, y 9.3 • Cloudera soporta las versiones de MySQL y PostgreSQL que incluyen las distribuciones Linux en sus instalaciones.
  9. 9. Espacio en Disco • Cloudera Manager Server: – 5 GB en la partición /var. – 500 MB en la partición /usr. – Para el uso de “parcels”, el espacio requerido depende del número de “parcelas” que se descarguen a Cloudera Manger y se distribuyan a los agentes. Ejemplo: • CDH 4.6 - 700 MB por parcel; • CDH 5 (que incluye Impala y Search) - 1.5 GB por parcel (empaquetado), 2 GB por parcel (desempaquetado) • Cloudera Impala - 200 MB por parcel • Cloudera Search - 400 MB por parcel • Cloudera Management Service – Las bases de datos de monitorización se almacenan sobre la partición /var. Se recomienda asegurar al menos 20 GB en esta partición. • Agentes – Cada “parcel” desempaquetado requiere en los agentes unas 3 veces el espacio del “parcel” descargado en Cloudera Manager Server.
  10. 10. Espacio en Disco • Cloudera Manager Server: – 5 GB en la partición /var. – 500 MB en la partición /usr. – Para el uso de “parcels”, el espacio requerido depende del número de “parcelas” que se descarguen a Cloudera Manger y se distribuyan a los agentes. Ejemplo: • CDH 4.6 - 700 MB por parcel; • CDH 5 (que incluye Impala y Search) - 1.5 GB por parcel (empaquetado), 2 GB por parcel (desempaquetado) • Cloudera Impala - 200 MB por parcel • Cloudera Search - 400 MB por parcel • Cloudera Management Service – Las bases de datos de monitorización se almacenan sobre la partición /var. Se recomienda asegurar al menos 20 GB en esta partición. • Agentes – Cada “parcel” desempaquetado requiere en los agentes unas 3 veces el espacio del “parcel” descargado en Cloudera Manager Server.
  11. 11. Memoria RAM • Se recomiendan 4 GB para la mayoría de los casos, siendo esto un requisito en el caso que se use una base de datos Oracle. • En caso contrario y en una instalación de menos de 100 hosts, podría ser suficiente con 2 GB. • Es conveniente reducir la cantidad máxima de memoria que usa Cloudera Manager Server para sus servicios Java.
  12. 12. Python • Cloudera Manager, CDH5 y HUE funcionan sobre Python 2.6 o 2.7
  13. 13. Consideraciones de Red y Seguridad
  14. 14. Requisitos de Red Cloudera Manager, CDH5 y HUE funcionan sobre Python 2.6 o 2.7 • Direccionamiento IP asignado de forma estática • Fichero /etc/hosts correctamente formateado. Debe: – Contener información persistente sobre los nombres de los equipos y direcciones IP de los nodos – No debe contener nombres que contengan mayúsculas – No debe contener direcciones IP duplicadas
  15. 15. Requisitos de Red Cloudera Manager, CDH5 y HUE funcionan sobre Python 2.6 o 2.7 • En la mayoría de los casos, Cloudera Manager Server deberá tener acceso SSH a los equipos del cluster para poder realizar la instalación y despliegue de servicios. • Además, se deberá proveer del usuario y credencial de root, o proveer de un usuario con permiso “sudo” sin que se pida la contraseña. • Una vez finalizada la instalación, se puede cambiar la contraseña de root, o deshabilitar el requisito anterior.
  16. 16. Requisitos de Red Cloudera Manager, CDH5 y HUE funcionan sobre Python 2.6 o 2.7 • Asegurar que Security-Enhanced Linux (SELinux) no bloquea ningún servicio o acceso. • IPv6 debe estar deshabilitado. • Asegurarnos que no se están bloqueando puertos mediante iptables o algún otro tipo de firewall. El puerto 7189 debe estar accesible una vez termine la instalación. El propio Cloudera Manager recomienda en su documentación los puertos que deben estar abiertos.
  17. 17. Instalación
  18. 18. Tipos de Instalación de Cloudera Manager • Un despliegue de Cloudera Manager consiste en los siguientes componentes Software: – Oracle JDK – Cloudera Manager Server y los paquetes Agentes – Software de base de datos que de soporte – CDH y el software de servicios gestionados
  19. 19. Tipos de Instalación de Cloudera Manager • Despliegues de demostración y pruebas de concepto totalmente automatizada: – Oracle JDK, – Cloudera Manager Server, – PostgreSQL embebida, – Cloudera Manager Agent, – CDH, – software de servicios gestionados en los hosts del cluster. – Además, configura las bases de datos de Cloudera Manager Server y Hive.
  20. 20. Tipos de Instalación de Cloudera Manager • Despliegues de demostración y pruebas de concepto totalmente automatizados – Recomendada para pruebas de concepto y demostraciones. No para despliegues de producción. – Este sistema no está pensado para poder escalar las bases de datos en el caso de que el cluster crezca mucho. – Los requisitos previos para esta instalación son: • Darle la opción de abrir sesión en el host de Cloudera Manager Server utilizando una cuenta root o una cuenta donde el usuario tenga permisos sudo sin requerir la contraseña. • Permitir que Cloudera Manager Server tenga acceso uniforme a SSH en todos los hosts del cluster. • Todos los hosts deberán tener acceso a los repositorios estándar y también al repositorio de archive.cloudera.com
  21. 21. Tipos de Instalación de Cloudera Manager • Despliegues para entornos de producción – Requiere que primero se instalen y configuren la base de datos de producción para Cloudera Manager Server y Hive Metastore. Existen dos opciones de instalación: • Instalación Manual utilizando los Paquetes de Cloudera Manager – Los administradores instalan Oracle JDK, y los paquetes de Cloudera Manager Server y de la base de datos embebida PostgreSQL en el host Cloudera Manager Server. • Instalación manual utilizando los Tarballs de Cloudera Manager – Los adminsitradores instalan Oracle JDK, Cloudera Manager Server, y Cloudera Manager Agent software como tarballs y utilizan Cloudera Manager para automatizar la instalación de
  22. 22. Tipos de Instalación de Cloudera Manager Hoy realizaremos un despliegue de demostración y prueba de concepto
  23. 23. Instalando Cloudera Manager
  24. 24. Arquitectura del sistema Cloudera Manager Nombre: taldeanodo1 ip: 192.168.0.100 Roles Nombre: taldeanodo4 ip: 192.168.0.101 Roles Nombre: taldeanodo2 ip: 192.168.0.101 Roles Nombre: taldeanodo3 ip: 192.168.0.101
  25. 25. Configuraciones iniciales • Crear usuarios comunes: root@ubuntu$ adduser user xxxxxx@ubuntu$ sudo adduser user user/eskola2016 xxxxxxx@ubuntu$ logout
  26. 26. Configuraciones iniciales • Deshabilitar IPv6: user@ubuntu$ sudo nano /etc/sysctl.conf • Añadir al final: net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 • Aplicar cambios: user@ubuntu$ sudo sysctl -p
  27. 27. Configuraciones iniciales • Identificar nodos del cluster: user@ubuntu$ sudo nano /etc/hosts 127.0.0.1 localhost IP_nodo1 taldeanodo1 IP_nodo2 taldeanodo2 IP_nodo3 taldeanodo3 IP_nodo4 taldeanodo4
  28. 28. Configuraciones iniciales • Dar nombre al host. Ej: user@ubuntu$ sudo nano /etc/hostname taldeanodo1
  29. 29. Configuraciones iniciales • Configurar NTP (Network Time Protocol) user@ubuntu$ sudo apt-get install ntp user@ubuntu$ sudo nano /etc/ntp.conf (comentar los servidores que vienen por defecto, y añadir al final:) #cluster configuration restrict <red_del_cluster> mask <mascara_del_cluster> nomodify notrap server 193.146.78.15 iburst server <ip_del_master> iburst
  30. 30. Configuraciones iniciales • Añadir user a “sudoers”, usuario con capacidad de ejecutar comandos de administrador, sin necesidad de contraseña: user@cdhmaster:~$ sudo visudo Añadir al final: user ALL=(ALL:ALL) NOPASSWD: ALL
  31. 31. Configuraciones iniciales • Añadir repositorios de Cloudera para Ubuntu user@ubuntu $ sudo wget 'http://archive.cloudera.com/cdh5/ubuntu/trusty/amd64/cdh/cloudera .list' -O /etc/apt/sources.list.d/cloudera.list user@ubuntu $ wget http://archive.cloudera.com/cdh5/ubuntu/trusty/amd64/cdh/archive.k ey -O archive.key user@ubuntu $ sudo apt-key add archive.key user@ubuntu $ sudo apt-get update user@ubuntu $ sudo nano /etc/apt/preferences.d/cloudera.pref Package: * Pin: release o=Cloudera, l=Cloudera Pin-Priority: 501
  32. 32. Configuraciones iniciales • Actualizar el servidor user@ubuntu $ sudo apt-get upgrade • Reiniciar las máquinas user@ubuntu $ sudo reboot
  33. 33. Instalación de Cloudera Manager Server • En el Master user@cdhmaster$ wget http://archive.cloudera.com/cm5/installer/latest/clou dera-manager-installer.bin user@cdhmaster$ chmod u+x cloudera-manager- installer.bin user@cdhmaster$ sudo ./cloudera-manager-installer.bin
  34. 34. Instalación de Cloudera Manager Server • Antes de proceder, reducir el parámetro de memoria RAM consumida por Cloudera Manager (debido a los escasos recursos del Curso): user@cdhmaster$ sudo nano /etc/default/cloudera-scm- server export CMF_JAVA_OPTS="-Xmx1g -XX:MaxPermSize=256m - XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp"
  35. 35. Instalación de Cloudera Manager Server http://ip_master:7180/cmf/login User: admin Password: admin
  36. 36. Cloudera Manager
  37. 37. Cloudera Manager
  38. 38. Cloudera Manager • “single user”. Este modo hace que el sistema no necesite crear usuarios para los distintos componentes de los que se compone Cloudera, ya que los gestiona desde un mismo usuario. En nuestro caso, no seleccionaremos está opción (implica cierto trabajo manual).
  39. 39. Cloudera Manager
  40. 40. Cloudera Manager
  41. 41. Cloudera Manager
  42. 42. Cloudera Manager • Una vez finalizada la instalación, “tuneamos” el Master para evitar problemas de memoria: user@cdhmaster:/etc$ sudo sysctl vm.swappiness=0 y/o user@cdhmaster:/etc$ sudo nano /etc/sysctl.conf al final añadir: vm.swappiness=0
  43. 43. Añadir Servicios Gestionados
  44. 44. Roles de los Servicios Gestionados • Una vez instalado y desplegado, deberemos asignar los roles a los nodos. • El ayudante de instalación evalúa las configuraciones del hardware (número de núcleos, RAM, espacio,…) para determinar los mejores nodos para cada rol. • Por lo general, la propuesta realizada no se modificará a no ser que se vea estrictamente necesario, o se quiera separar los roles en diferentes nodos por alguna razón concreta.
  45. 45. Roles de los Servicios Gestionados
  46. 46. Roles de los Servicios Gestionados
  47. 47. Configuración de la Base de Datos
  48. 48. Cloudera Manager
  49. 49. Fin!
  50. 50. Cloudera Manager • Información sobre las máquinas que puede monitorizar Cloudera Manager (agentes de Cloudera)
  51. 51. Cloudera Manager • Diagnóstico, de los procesos y servicios en ejecución • Auditorías: podemos realizar búsquedas y generar filtros para recuperar registros de auditoría o logs. • Charts: sirve para poder crear nuestro propio panel de mandos de donde monitorizar los recursos del Cluster • Administración: permite visualizar y “tocar” algunos parámetros relacionados con la eficiencia, seguridad, monitorización,
  52. 52. Añadir Hosts al Cluster
  53. 53. Añadir Hosts al Cluster
  54. 54. Fin!
  55. 55. Eskerrik asko www.mondragon.edu Urko Zurutuza Mondragon Unibertsitatea uzurutuza@mondragon.edu https://es.linkedin.com/in/uzurutuz a/ @urkovain

×