Site is under maintenance mode. Please wait few min!
Saltar al contenido

Cómo instalar Nagios 4 y monitorear sus servidores en Ubuntu 14.04

marzo 4, 2020

 

Introducción

Este tutorial cubrirá la creación de un cluster Hadoop en digitalocean. La biblioteca de software Hadoop es un marco de Apache que le permite procesar grandes conjuntos de datos de una manera distribuida a través de los clústeres de servidores mediante el aprovechamiento de los modelos básicos de programación. La escalabilidad proporcionada por Hadoop permite aplicar una escala a partir de servidores individuales a miles de máquinas. También proporciona detección de fallos en la capa de aplicación, por lo que puede detectar y fracasos de manejar como un servicio de alta disponibilidad.

Hay 4 módulos importantes que vamos a trabajar con el en este tutorial:

  • Hadoop común es la colección de utilidades y bibliotecas comunes necesarios para apoyar a otros módulos de Hadoop.
  • El Hadoop Distributed System (HDFS) del archivo, según lo declarado por la organización de Apache, es un sistema de archivos altamente tolerante a fallos, distribuida, específicamente diseñado para ejecutarse en hardware para procesar grandes conjuntos de datos.
  • Hadoop hilo es el marco utilizado para la planificación de tareas y gestión de recursos de clúster.
  • Hadoop MapReduce es un sistema basado en hilo para el procesamiento en paralelo de grandes conjuntos de datos.

En este tutorial, será configurar y ejecutar un cluster Hadoop en cuatro de las gotitas digitalocean.

Requisitos previos

Este tutorial requerirá lo siguiente:

  • Cuatro Ubuntu 16.04 Las gotitas con los usuarios que no sean root sudo establecidos. Si usted no tiene esta configuración, seguir con los pasos 1-4 de la configuración inicial del servidor con Ubuntu 16.04. Este tutorial asume que está utilizando una clave SSH desde una máquina local. Por idioma de Hadoop, nos referiremos a estas gotitas por los siguientes nombres: hadoop-masterhadoop-trabajador-01hadoop-trabajador-02hadoop-trabajador-03
  • hadoop-master
  • hadoop-trabajador-01
  • hadoop-trabajador-02
  • hadoop-trabajador-03
  • Además, es posible que desee utilizar digitalocean instantáneas después de que el servidor de configuración inicial y la finalización de los pasos 1 y 2 (por debajo) de su primera gotita.

Cuatro Ubuntu 16.04 Las gotitas con un sudo usuarios no root levantado. Si usted no tiene esta configuración, seguir con los pasos 1-4 de la configuración inicial del servidor con Ubuntu 16.04. Este tutorial asume que está utilizando una clave SSH desde una máquina local. Por idioma de Hadoop, nos referiremos a estas gotitas por los siguientes nombres:

  • hadoop-master
  • hadoop-trabajador-01
  • hadoop-trabajador-02
  • hadoop-trabajador-03

Además, puede desee utilizar digitalocean instantáneas después de que el servidor de configuración inicial y la finalización de los pasos 1 y 2 (abajo) de la primera gotita.

Con estos requisitos en su lugar, estará listo para comenzar a configurar un cluster Hadoop.

Paso 1 – Configuración de instalación para cada gotita

Vamos a ser la instalación de Java y Hadoop en cada una de nuestras cuatro Las gotitas . Si no desea repetir cada paso en cada de gotas, se puede utilizar digitalocean instantáneas al final de la Etapa 2 con el fin de replicar su instalación y configuración inicial.

En primer lugar, vamos a actualizar Ubuntu con parches disponibles el software más reciente:

sudo apt-get update && sudo apt-get -y dist-upgrade

  • sudo apt-get update && sudo apt-get dist-upgrade -y

A continuación, vamos a instalar la versión sin cabeza de Java para Ubuntu en cada gota. “Sin cabeza” se refiere al software que es capaz de ejecutar en un dispositivo sin una interfaz gráfica de usuario.

sudo apt-get -y install openjdk-8-jdk-headless

  • sudo apt-get -y install OpenJDK-8-jdk-sin cabeza

Para instalar Hadoop en cada gota, vamos a hacer el directorio donde se instalará Hadoop. Podemos decir que es mi-hadoop a instalar y luego pasar a ese directorio.

mkdir my-hadoop-install && cd my-hadoop-install

  • mkdir mi-hadoop-instalan && cd-mi-hadoop instalar

Una vez que hemos creado el directorio, vamos a instalar el binario más reciente de la lista de comunicados de Hadoop. En el momento de este tutorial, el más reciente es Hadoop 3.0.1.

Nota : Tenga en cuenta que estas descargas se distribuyen a través de sitios espejo, y se recomienda que se comprueba en primer lugar para la manipulación utilizando GPG o SHA-256.

Cuando esté satisfecho con la descarga que ha seleccionado, puede utilizar el comando wget con el enlace binario que ha elegido, como por ejemplo:

wget http://mirror.cc.columbia.edu/pub/software/apache/hadoop/common/hadoop-3.0.1/hadoop-3.0.1.tar.gz

  • wget http://mirror.cc.columbia.edu/pub/software /apache/hadoop/common/hadoop-3.0.1/hadoop-3.0.1.tar.gz

una vez finalizada la descarga, descomprimir el contenido del archivo utilizando alquitrán, una herramienta de archivado de ficheros para Ubuntu: tar

tar xvzf hadoop-3.0.1.tar.gz

  • xvzf hadoop-3.0.1.tar.gz

ahora estamos listos para comenzar nuestra configuración inicial.

Paso 2 – Actualización Hadoop entorno de configuración de

Para cada nodo de la gotita, vamos a necesitar para configurar JAVA_HOME. Abra el siguiente archivo con nano u otro editor de texto de su elección para que podamos actualizarlo:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/hadoop-env.sh

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / hadoop-env.sh

actualización de la sección siguiente, donde se encuentra JAVA_HOME:

...
###
# Generic settings for HADOOP
###

# Technically, the only required environment variable is JAVA_HOME.
# All others are optional. However, the defaults are probably not
# preferred. Many sites configure these options outside of Hadoop,
# such as in /etc/profile.d

# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!
# export JAVA_HOME=

# Location of Hadoop. By default, Hadoop will attempt to determine
# this location based upon its execution path.
# export HADOOP_HOME=
...

para tener este aspecto:

...
###
# Generic settings for HADOOP
###

# Technically, the only required environment variable is JAVA_HOME.
# All others are optional. However, the defaults are probably not
# preferred. Many sites configure these options outside of Hadoop,
# such as in /etc/profile.d

# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

# Location of Hadoop. By default, Hadoop will attempt to determine
# this location based upon its execution path.
# export HADOOP_HOME=
...

también tendrá que añadir algunas variables de entorno para ejecutar Hadoop y sus módulos. Deben añadirse a la parte inferior del archivo para que se vea como la siguiente, donde Sammy sería su nombre de usuario sudo de usuario no root.

Nota : Si está utilizando un nombre de usuario diferente a través de sus Gotitas de racimo, que tendrá que editar el archivo con el fin de reflejar el nombre de usuario correcto para cada específica de la gotita.

...
#
# To prevent accidents, shell commands be (superficially) locked
# to only allow certain users to execute certain subcommands.
# It uses the format of (command)_(subcommand)_USER.
#
# For example, to limit who can execute the namenode command,
export HDFS_NAMENODE_USER="sammy"
export HDFS_DATANODE_USER="sammy"
export HDFS_SECONDARYNAMENODE_USER="sammy"
export YARN_RESOURCEMANAGER_USER="sammy"
export YARN_NODEMANAGER_USER="sammy"

En este punto, se puede guardar y salir del archivo. A continuación, ejecute el siguiente comando para aplicar nuestras exportaciones: fuente

source ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/hadoop-env.sh

  • ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / hadoop-env.sh

Con el guión hadoop-env.sh actualizada y de origen, tenemos que crear un directorio de datos para el sistema de archivos distribuido Hadoop (HDFS) para almacenar todos los archivos HDFS pertinentes.

sudo mkdir -p /usr/local/hadoop/hdfs/data

  • sudo mkdir -p / usr / local / hadoop / hdfs / datos

establecer los permisos de este archivo con su respectivo usuario. Recuerde, si usted tiene diferentes nombres de usuario en cada gota, asegúrese de permitir su respectivo usuario sudo para tener estos permisos:

sudo chown -R sammy:sammy /usr/local/hadoop/hdfs/data

  • sudo chown -R Sammy Sammy / usr / local / Hadoop HDFS / / datos

Si le gustaría utilizar un digitalocean instantánea para replicar estos comandos a través de sus nodos de gotas, puede crear su instantánea ahora y crear nuevas gotitas provenientes de esta imagen. Para obtener orientación sobre esto, se puede leer una introducción a digitalocean instantáneas.

Cuando haya completado los pasos anteriores a través de los cuatro Ubuntu Las gotas, se puede pasar a completar esta configuración en los nodos.

Paso 3 – Configuración inicial completa para cada nodo

En este punto, tenemos que actualizar el archivo de core_site.xml los 4 de sus nodos de gotas. Dentro de cada gotita determinado, abra el siguiente archivo:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/core-site.xml

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / núcleo-site.xml

Debería ver las siguientes líneas:

...

Cambiar el archivo para que parezca el siguiente código XML de manera que incluimos respectiva dentro IP de cada gota del valor del inmueble, donde tenemos IP_del_servidor escrito. Si está utilizando un servidor de seguridad, tendrá que abrir el puerto 9000.

...
fs.defaultFS<
ame>
hdfs://server-ip:9000

Repetir el escrito anteriormente en la IP correspondiente de gota para los los cuatro de sus servidores.

Ahora todos los ajustes generales de Hadoop debe ser actualizado para cada nodo de servidor, y podemos continuar en la conexión de los nodos a través de claves SSH.

Paso 4 – Configurar SSH para cada nodo orden

En para Hadoop para que funcione correctamente, es necesario configurar SSH sin contraseña entre el nodo principal y los nodos de trabajo (la lengua del amo y el trabajador es el lenguaje de Hadoop para referirse a primaria y los servidores secundarios).

Para este tutorial, el nodo maestro será hadoop-maestro y los nodos de trabajo serán referidos colectivamente como hadoop de trabajo, pero tendrá tres de ellos en total (en adelante, -01, -02, y – 03). En primer lugar, la necesidad de crear un par de claves pública-privada en el nodo maestro, que será el nodo con la dirección IP que pertenece a hadoop-maestro.

Mientras que en el hadoop maestro de la gotita, ejecute el siguiente comando. Usted Pulse Intro para usar el valor predeterminado para la ubicación de las teclas, a continuación, pulse Intro dos veces para utilizar una frase de contraseña vacío:

ssh-keygen

  • ssh-keygen

Para cada uno de los nodos de trabajo, tenemos que tener la clave pública del nodo maestro y copiarlo en cada uno de authorized_keys los nodos de trabajo.

Obtener la clave pública desde el nodo maestro mediante la ejecución de gato en el archivo id_rsa.pub encuentra en la carpeta .ssh, para imprimir a la consola:

cat ~/.ssh/id_rsa.pub

  • cat ~ / .ssh / id_rsa.pub

Ahora registro en cada nodo trabajador de la gotita, y abra el archivo authorized_keys:

nano ~/.ssh/authorized_keys

  • nano ~ / .ssh / authorized_keys

deberá copiar la clave pública del nodo maestro – que es la salida generó desde el gato ~ / .ssh / id_rsa .pub comando en el nodo maestro – en authorized_keys respectiva de cada gotita ~ / .ssh /. Asegúrese de guardar cada archivo antes de cerrar.

Cuando haya terminado la actualización de los 3 nodos de trabajo, también copiar la clave pública del nodo maestro en su propio archivo authorized_keys emitiendo el mismo comando:

nano ~/.ssh/authorized_keys

  • nano ~ / .ssh / authorized_keys

En hadoop-master, debe establecer la configuración ssh para incluir cada uno de los nombres de host de los nodos relacionados. Abra el archivo de configuración para la edición, el uso de nano:

nano ~/.ssh/config

  • nano ~ / .ssh / config

Se debe modificar el archivo para parecerse a la siguiente, con direcciones IP y nombres de usuario pertinentes añadido.

Host hadoop-master-server-ip
HostName hadoop-example-node-server-ip
User sammy
IdentityFile ~/.ssh/id_rsa

Host hadoop-worker-01-server-ip
HostName hadoop-worker-01-server-ip
User sammy
IdentityFile ~/.ssh/id_rsa

Host hadoop-worker-02-server-ip
HostName hadoop-worker-02-server-ip
User sammy
IdentityFile ~/.ssh/id_rsa

Host hadoop-worker-03-server-ip
HostName hadoop-worker-03-server-ip
User sammy
IdentityFile ~/.ssh/id_rsa

Guardar y cerrar el archivo.

Desde el hadoop-master, SSH en cada nodo:

ssh sammy@hadoop-worker-01-server-ip

  • ssh Sammy @ hadoop-trabajador-01-server-ip

Ya que es su primer registro de tiempo en cada nodo con el actual sistema establecido, que se puede pedir lo siguiente:

Outputare you sure you want to continue connecting (yes
o)?

Responder a la petición con un sí. Esta será la única vez que hay que hacer, sino que se requiere para cada nodo del trabajador para la conexión inicial SSH. Por último, cierre la sesión de cada nodo trabajador para volver a Hadoop-master:

logout

  • cierre de sesión

Asegúrese de repetir estos pasos para los dos nodos de trabajo restantes.

Ahora que hemos establecido con éxito SSH sin contraseña para cada nodo del trabajador, que ahora puede seguir para configurar el nodo maestro.

Paso 5 – Configurar el Maestro Nodo

Para nuestro cluster Hadoop, tenemos que configurar las propiedades HDFS en el nodo maestro de la gotita.

Mientras que en el nodo maestro, editar el siguiente archivo:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/hdfs-site.xml

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / hdfs-site.xml

Editar la sección de configuración de aspecto como el XML siguiente:

...
dfs.replication<
ame>
3
dfs.namenode.name.dir<
ame>
file:///usr/local/hadoop/hdfs/data

Guardar y cerrar el archivo.

ahora vamos a configurar las propiedades de MapReduce en el nodo maestro. mapred.site.xml abierto con nano u otro editor de texto:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/mapred-site.xml

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / site.xml-mapred

A continuación, actualice el archivo para que se parece a esto, la dirección IP de su servidor actual refleja a continuación:

...
mapreduce.jobtracker.address<
ame>
hadoop-master-server-ip:54311
mapreduce.framework.name<
ame>
yarn

Guardar y cerrar el archivo. Si está utilizando un servidor de seguridad, asegúrese de abrir el puerto 54311.

siguiente es configurar el hilo en el nodo maestro. Una vez más, estamos actualizando la sección de configuración de otro archivo XML, por lo que vamos a abrir el archivo:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/yarn-site.xml

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / hilo site.xml

ahora actualizar el archivo, asegurándose de introducción de la dirección IP de su servidor actual:

...

yarn.nodemanager.aux-services<
ame>
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class<
ame>
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.hostname<
ame>
hadoop-master-server-ip

por último, dejar que el punto de referencia de configuración de Hadoop para lo que debe ser el maestro y nodos de trabajo. En primer lugar, abra el archivo maestros:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/masters

  • nano ~ / mi-hadoop-install / Hadoop-3.0.1 / etc / Hadoop / maestros

a este archivo, va a añadir la dirección IP del servidor actual:

hadoop-master-server-ip

Ahora, abrir y editar el archivo de los trabajadores:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/workers

  • nano ~ / mi-Hadoop-install / Hadoop-3.0.1 / etc / Hadoop / trabajadores

Aquí, vamos a añadir las direcciones IP de cada uno de sus nodos de trabajo, debajo de donde dice localhost.

localhost
hadoop-worker-01-server-ip
hadoop-worker-02-server-ip
hadoop-worker-03-server-ip

Después de finalizar la configuración del MapReduce y propiedades del hilo, ahora puede terminar de configurar los nodos de trabajo.

Paso 6 – Configurar el trabajador nodos

Vamos ahora configurar los nodos de trabajo de manera que cada uno tiene la referencia correcta al directorio de datos de HDFS.

En cada nodo trabajador , editar el archivo XML:

nano ~/my-hadoop-install/hadoop-3.0.1/etc/hadoop/hdfs-site.xml

  • nano ~ / mi-hadoop a instalar / hadoop-3.0.1 / etc / hadoop / hdfs-site.xml

Reemplazar la sección de configuración con lo siguiente:

dfs.replication<
ame>
3
dfs.datanode.data.dir<
ame>
file:///usr/local/hadoop/hdfs/data

Guardar y cerrar el archivo. Asegúrese de replicar este paso en los tres de sus nodos de trabajo.

En este punto, nuestros Gotitas nodo trabajador están apuntando al directorio de datos de HDFS, lo que nos permitirá ejecutar nuestro cluster Hadoop.

Paso 7 – Ejecutar el Hadoop Cluster

Hemos llegado a un punto en el que podemos empezar a nuestro cluster Hadoop. Antes de ponerlo en marcha, lo que necesitamos para dar formato a los HDFS en el nodo maestro. Mientras que en el nodo maestro de la gotita, cambie al directorio donde está instalado Hadoop:

cd ~/my-hadoop-install/hadoop-3.0.1/

  • cd ~ / mi-hadoop a instalar / hadoop-3.0.1 /

A continuación, ejecute el siguiente comando para HDFS formato:

sudo ./bin/hdfs namenode -format

  • sudo ./bin/hdfs NameNode -format

un formato exitoso de la NameNode dará lugar a una gran cantidad de la producción, que consiste en su mayoría declaraciones INFO. En la parte inferior verá el siguiente, lo que confirma que has formateado con éxito el directorio de almacenamiento.

Output...
2018-01-28 17:58:08,323 INFO common.Storage: Storage directory /usr/local/hadoop/hdfs/data has been successfully formatted.
2018-01-28 17:58:08,346 INFO namenode.FSImageFormatProtobuf: Saving image file /usr/local/hadoop/hdfs/data/current/fsimage.ckpt_0000000000000000000 using no compression
2018-01-28 17:58:08,490 INFO namenode.FSImageFormatProtobuf: Image file /usr/local/hadoop/hdfs/data/current/fsimage.ckpt_0000000000000000000 of size 389 bytes saved in 0 seconds.
2018-01-28 17:58:08,505 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
2018-01-28 17:58:08,519 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at hadoop-example-node/127.0.1.1
************************************************************/

Ahora, iniciar el clúster Hadoop ejecutando los siguientes scripts (asegúrese de revisar las secuencias de comandos antes de ejecutar utilizando el comando less):

sudo ./sbin/start-dfs.sh

  • sudo ./sbin/start-dfs.sh

A continuación, ver salida que contiene lo siguiente:

OutputStarting namenodes on [hadoop-master-server-ip]
Starting datanodes
Starting secondary namenodes [hadoop-master]

A continuación, ejecute hilado, utilizando la siguiente secuencia de comandos:

./sbin/start-yarn.sh

  • ./sbin/start-yarn.sh

la salida siguiente aparecerá:

OutputStarting resourcemanager
Starting nodemanagers

Una vez que ejecute estos comandos, usted debe tener demonios ejecutándose en el nodo maestro y uno en cada uno de los nodos de trabajo.

Podemos comprobar los demonios mediante la ejecución de los JPS comandos para comprobar si los procesos Java:

jps

  • JPS

Después de ejecutar el comando JPS, se verá que la NodeManager, SecondaryNameNode, SCC, NameNode, ResourceManager y DataNode son corriendo. aparecerá algo similar a la siguiente salida:

Output9810 NodeManager
9252 SecondaryNameNode
10164 Jps
8920 NameNode
9674 ResourceManager
9051 DataNode

Esto verifica que hemos creado con éxito un clúster y verifica que los demonios de Hadoop se están ejecutando.

En un navegador web de su elección, puede obtener una visión general de la salud de su clúster navegando a:

http://hadoop-master-server-ip:9870

Si usted tiene un firewall, asegúrese de abrir el puerto 9870. Se verá algo que se parece a lo siguiente:

a partir de aquí, se puede navegar al elemento DataNodes en la barra de menú para ver la actividad nodo.

Conclusión

En este tutorial, se acercó cómo instalar y configurar un clúster de varios nodos utilizando Hadoop digitalocean Ubuntu 16.04 gotas. Ahora también puede supervisar y controlar la salud del clúster mediante interfaz web DFS Salud de Hadoop.

Para tener una idea de los posibles proyectos que pueda trabajar en utilizar el clúster recién configurado, echa un vistazo a la larga lista de proyectos impulsados ​​por Hadoop de Apache.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *