Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo configurar un entorno de prueba que contenga dos clústeres de hadoop

Cómo configurar un entorno de prueba que contenga dos clústeres de hadoop

Configuración del entorno:

Máquina virtual:

estación de trabajo vmware 12

Sistema:

ubuntu 16.04 LTS ( Se recomienda usar la versión original, no usar Kirin)

Nodo:

Nodo: 192.168.159.132 master 192.168.159.134 nodo1 192.168.159.137 nodo2

jdk-8u101- Linux-x64.gz (¿Java?) hadoop-2.7.3.tar.gz (paquete Hadoop)

Pasos de instalación:

1. sistema y hacer los preparativos (puede instalar uno primero y luego clonarlo)

2 Modifique el nombre del host y el host de cada máquina virtual

3. p>

4. Configure la red de la máquina virtual para que los sistemas de la máquina virtual puedan hacer ping entre sí y hacia y desde la máquina host.

5. Instale jdk y configure las variables de entorno, verifique si la configuración es exitosa.

6. Configure ssh para lograr un inicio de sesión sin contraseña entre nodos y verifique si el comando ssh node1/2 es exitoso.

>

7. Master configura hadoop y transfiere archivos hadoop a nodos de nodo

8. Configure las variables de entorno, inicie hadoop, verifique si la instalación se realizó correctamente y ejecute wordcount para verificar si tiene éxito.

1. Instale la máquina virtual

Instale el sistema Ubuntu descargado en la máquina virtual. Baidu es responsable del proceso específico. Se puede clonar e instalar en el futuro, pero encontré muchos problemas durante el proceso de instalación. A menudo necesitaba eliminar la máquina virtual y reinstalarla. La máquina virtual clonada no se puede eliminar, por lo que me llevó mucho tiempo instalarla. uno por uno.

Una****3 máquinas virtuales: la asignación y las direcciones IP son las siguientes:

(Nota: ¿El comando para ver la dirección IP? ifconfig)

Instale la máquina virtual Cuando la máquina se está ejecutando, puede configurar una IP estática, porque a menudo se encuentran problemas de conexión de red durante el proceso e ifconfig no puede encontrar la dirección IPV4. Por supuesto, tampoco puedes configurarlo y asignarlo de forma predeterminada.

192.168.159.132 master 192.168.159.134 ? nodo1 192.168.159.137 nodo2

2 Modificar el nombre de host y el archivo de hosts de la máquina virtual

A la máquina virtual. en el maestro Por ejemplo, abra la terminal y realice las siguientes operaciones, cambie el nombre de host a maestro y modifique los hosts, como se muestra a continuación:

Comando #Modify hostname: sudo gedit /etc/hostname

# Comando Modificar hosts: sudo gedit /etc/hosts

# Agregue el siguiente contenido en hosts 192.168.159.132 master192.168 159.134 node1192.168.159.137 node2

. se muestra a continuación:

De manera similar, realice las mismas operaciones en las máquinas nodo1 y nodo2, cambie los nombres de host a nodo1 y nodo2 respectivamente y luego cambie el archivo de hosts para que sea el mismo que el maestro.

3. Crear usuarios y grupos de usuarios (en las tres máquinas)

1. Crear un grupo de usuarios de hadoop

sudo addgroup hadoop

2. Cree un usuario de hadoop

sudo adduser -ingroup hadoop hadoop

3. Agregue permisos al usuario de hadoop y abra el archivo /etc/sudoers

sudo gedit /. etc/sudoers

Presione Enter para abrir el archivo /etc/sudoers y otorgar al usuario de hadoop los mismos permisos que el usuario root

Sudo gedit /etc/sudoers

Sudo gedit /etc/sudoers

En Agregar hadoop ?ALL=(ALL:ALL) ?ALL bajo raíz ?ALL=(ALL:ALL) ?ALL

4. el host Conectado entre sí

Vuelva a iniciar sesión en el sistema como el usuario de hadoop que acaba de crear y luego inicie sesión como el usuario de hadoop para realizar el resto de las operaciones.

ping + nombre de host

Ejecute el comando anterior en cada host para ver si puede conectarse a otros hosts.

La siguiente imagen aparece para indicar una conexión exitosa:

Si todos los pings son exitosos, realice las siguientes operaciones.

5. Instale jdk y configure las variables de entorno.

Instale jdk en cada host y configure las variables de entorno. (Si le resulta problemático, puede clonarlo después de instalar jdk)

1) Descargue el instalador de jdk de Baidu y arrástrelo a la máquina virtual

2) Ingrese a través del comando cd El directorio actual del instalador y descomprímalo usando el siguiente comando.

tar -zxvf jdk....(nombre del paquete)

3) Utilice el siguiente comando para mover la carpeta descomprimida al directorio /usr

# Tenga en cuenta que no hay jdk1.8... después de pasar al directorio /usr. El directorio se mueve a /usr/java y todos los archivos de ese directorio se mueven a /usr/java. (nombre de carpeta)/usr/java

4) Configurar variables de entorno

sudo gedit /etc/profile

Agrega cuatro líneas al final:

[plano]?ver plano?copiar?imprimir?

#java

exportar?JAVA_HOME=/usr/java

exportar?JRE_HOME= /usr/java/jre

exportar?CLASSPATH=$JAVA_HOME/lib

exportar?PATH=:$PATH:$JAVA_HOME/bin:$JRE_HOME/bin?

Ingrese el siguiente comando para que la configuración surta efecto: source /etc/profile

Compruebe si la configuración fue exitosa.

La información anterior indica que la configuración de Java fue exitosa .

6. Configure SSH para lograr un inicio de sesión sin contraseña entre nodos

A menudo cometo errores en este paso, de manera inexplicable, y no puedo encontrar información relevante en línea. Necesitas experimentar varias veces.

Los siguientes pasos 1.2.3 deben completarse en todos los hosts

1. Instalar ssh

[plain][view][plain][copy][ print ]

sudo?apt-get?install?

Para verificar que SSH se instaló correctamente, ingrese

[plain]?view Plain?copy?print ?

ssh?localhost?

Cuando aparece el siguiente comando, el siguiente mensaje indica que la instalación se realizó correctamente

3. Genere el par de claves sh-keygen. ?-t?rsa

p>

Después de ingresar la clave, continúe seleccionando Enter. La clave generada se encuentra en la carpeta ~/.ssh. Puedes acceder a él usando el comando cd.

4. En el servidor principal, importe autorizado_keyscat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

5. Inicie sesión de forma remota sin contraseña (Copiar autorizado_keys). en la máquina maestra al directorio correspondiente en otro host) #Vaya al directorio .ssh de la máquina maestra y realice la operación de copia

scp autorizado_keys hadoop@node1:~/.ssh/

scp autorizado_keys hadoop@node2:~/ .ssh/

Modifique los permisos del archivo autorizado_keys en cada host:

Ejecute el comando en todas las máquinas: chmod 600 .ssh /authorized_keys

Una vez completado, realice las siguientes operaciones en la computadora host para verificar si el inicio de sesión sin contraseña se realizó correctamente.

ssh node1(node2)

7. El maestro configura hadoop y luego transfiere el archivo hadoop del maestro al nodo

1) Descomprime y mueve

[ simple] ?ver simple?copiar?imprimir?

# ¿Descomprimir el paquete de software hadoop?

tar?-zxvf?hadoop...?

# ¿Mover el paquete de instalación al directorio /usr?

mv?hadoop...?

2) Crear una nueva carpeta

[plain]?view Plain?copy?print?

# ¿Crear el siguiente directorio nuevo (directorio raíz) en el directorio /usr/hadoop?

mkdir?/dfs?

mkdir?/dfs/nombre?

mkdir?/dfs/data?

mkdir?/ tmp?

3) Archivo de configuración: hadoop-env.hadoop)

¿Modificar el valor JAVA_HOME (exportar JAVA_HOME=/usr/java)?

4) Archivo de configuración: Yarn-env.sh

Modificar valor JAVA_HOME (exportar JAVA_HOME=/usr/java)

5) Archivo de configuración: esclavos

El contenido modificado es: nodo1

nodo2

6) Archivo de configuración: core-site.xml

[html]?view Plain ? ¿copiar?imprimir?

?

?

fs.defaultFS?

hdfs://master:9000?

?

?

io .file.buffer.size?

131072?

?

hadoop.tmp.dir?

archivo:/usr/hadoop/tmp?

¿Base?para?otros?directorios temporales.?

?

?

7) Archivo de configuración: hdfs-site.xml

[html]?view Plain?copy?print?

?

?

dfs.namenode.secundario.direcciónhttp?

maestro:9001?

erty>?

?

dfs.namenode.name.dir?

archivo:/usr /hadoop/dfs/name?

?

?

dfs.datanode.data. dir?

archivo:/usr/hadoop/dfs/data?

?

?

dfs.replication?

2?

?

?

dfs.webhdfs.enabled?

true?

?

?

8) Archivo de configuración: mapred-site.xml

Crear primero y luego editar

cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml

gedit etc/hadoop/mapred-site.hadoop/mapred-site. xml

[html]?ver plano?copiar?imprimir?

?

mapreduce .framework.name?

hilo?

?

?< / p>

mapreduce.jobhistory.address?

master:10020?

?< / p>

?

mapreduce.jobhistory.webapp.address?

master:19888?

?

?

9) Archivo de configuración: Yarn-site.xml

[html ] ?ver plano?copiar?imprimir?

?

?

ame>yarn.nodemanager.aux-services?

mapreduce_shuffle?

?

< propiedad>?

yarn.nodemanager.aux-services.mapreduce.shuffle.class?

org.apache.hadoop.mapred.ShuffleHandler ?

?

?

yarn.resourcemanager.address?

master:8032?

?

?

hilado .resourcemanager.scheduler.address?

master:8030?

?

>

yarn.resourcemanager.resource-tracker.address?

master:8031?

?

?

yarn.resourcemanager.admin.address?

master :8033?

?

?

yarn.resourcemanager.webapp.address>

master:8088?

?

?

10) Transfiera hadoop al directorio usr/hadoop de nodo1 y nodo2 (si el error de transferencia indica: Permiso denegado, primero transfiera el archivo a un directorio que no sea /usr y luego mueva el archivo a /usr/hadoop en el nodo) scp -r /usr/hadoop hadoop @node1:/usr/hadoop

7. Configure las variables de entorno e inicie hadoop para comprobar si la instalación se realizó correctamente

1) Configurar variables de entorno

#Editar /etc/profilesudo gedit /etc/profile#La variable de entorno de Java se agregó arriba, agréguela al final.

Agréguelo más tarde #hadoop?export?HADOOP_HOME=/opt/Hadoop/hadoop-2.7.2?export?PATH=$PATH:$HADOOP_HOME/sbin?export?PATH=$PATH:$HADOOP_HOME/bin ?

Exportar ?source /etc/profile

Hacer efectivo el archivo.

2) Inicie hadoop e ingrese al directorio de instalación de hadoop bin/hdfs namenode -format

sbin/start-all.sh

3) Después de iniciar, ingrese jps Verifique los procesos en maestro y nodo respectivamente

Si ve los siguientes resultados, significa que el inicio fue exitoso.

Maestro:

nodo:

8. Envíe la primera tarea mapreduce (número de palabras)

Ingrese el directorio local de hadoop ( /usr /hadoop)

1./Copie el archivo README.txt en el directorio actual al sistema de archivos distribuido virtual

3. para ver ¿El archivo que copiamos existe en el sistema de archivos?

La operación es la que se muestra:

3 Ejecute el siguiente comando para enviar la tarea de recuento de palabras a hadoop

.

Vaya al directorio del archivo jar y ejecute el siguiente comando. hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /data/input /data/output/result

Ver los resultados. El resultado está en part-r-00000 bajo el resultado hdfs?dfs?-cat?/data/output/result/part-r-00000

Desde entonces, ¡el clúster de hadoop se construyó con éxito!