instalación de hadoop (Centos7)

Preludio

1. Luego modifique el nombre de host para facilitar el acceso entre clústeres

Modificación: hostnamectl set-hostname centos1

Vista: nombre de host

2. Modifique el archivo de mapeo de resolución de nombre de dominio (agregue una nueva línea) para que se pueda acceder directamente por el nombre de host en el futuro

vi / etc / hosts

#Content agrega una nueva línea al final

192.168.190.130 cenos1

192.168.190.131 centos2

192.168.190.132 centos3

 

red de servicio reiniciar # Reiniciar el servicio de tarjeta de red

reiniciar #Restart

ping centos1 #La prueba es efectiva

3. Apague el firewall y prohíba el arranque

firewall-cmd --state #Ver el estado del firewall

systemctl stop firewalld.service #Detener el firewall

systemctl deshabilita firewalld.service #Prohibir el inicio del firewall

4. Cerrar selinux

vim / etc / sysconfig / selinux

Modificar contenido SELINUX = deshabilitado

SELINUXTYPE = objetivo comentado

scp / etc / sysconfig / selinux centos2: / etc / sysconfig /

scp / etc / sysconfig / selinux centos3: / etc / sysconfig /

Descargar abajo

http://mirrors.shu.edu.cn/apache/hadoop/common/

hadoop-2.7.7.tar.gz

Más tarde se cambió a hadoop-2.6.5.tar.gz para instalar oozie

Instalar

cd / usr / local

rz

tar xzvf hadoop-2.7.7.tar.gz

rm -rf hadoop-2.7.7.tar.gz

mv hadoop-2.7.7.tar.gz Hadoop

Configurar variables de entorno

vim / etc / profile #Configure variables de entorno, ingrese la parte inferior para iniciar la configuración:

exportar HADOOP_HOME = / usr / local / hadoop

export PATH = $ PATH: $ JAVA_HOME / bin: $ HADOOP_HOME / bin: $ HADOOP_HOME / sbin

wq

Configure hadoop-env.sh, yarn-env.sh, mapred-env.sh (los tres sistemas cambiaron)

vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh

修改 : export JAVA_HOME = $ {JAVA_HOME} 为 : export JAVA_HOME = / usr / local / jdk

wq

 

vim /usr/local/hadoop/etc/hadoop/yarn-env.sh

export JAVA_HOME = / usr / local / jdk

 

vim /usr/local/hadoop/etc/hadoop/mapred-env.sh

export JAVA_HOME = / usr / local / jdk

 

source / etc / profile #effective de inmediato

Prueba

Después de probar la configuración distribuida de hadoop, asegúrese de que Hadoop se haya iniciado y de que haya un directorio correspondiente.

hadoop version

En este momento, el entorno hadoop más básico (este no es un entorno de desarrollo), pruebe un programa de prueba que viene con hadoop (implementando el número de palabras "hola palabra del mundo hadoop")

cd / usr / local / hadoop

entrada mkdir

echo hola sm hola zhangsan hola lisi hola sm> input / info.txt

entrada de cd

gato info.txt

cd / usr / local / hadoop

 

hadoop jar share / hadoop / mapreduce / sources / hadoop-mapreduce-examples-2.7.7-sources.jar org.apache.hadoop.examples.WordCount input output

 

salida de cd

ll

0 0

 

Prueba en hdfs:

hadoop fs -put /songtemptest/worldcount.txt / test / input

cd / usr / local / hadoop / share / hadoop / mapreduce

hadoop jar hadoop-mapreduce-examples-2.6.5.jar wordcount / test / input / test / output

La configuración de hadoop del sistema distribuido

Procesamiento sin inicio de sesión SSH

ll ~ # Si ha configurado ssh para que se elimine

rm -rf ~ / .ssh

 

ssh-keygen -t rsa #generate ssh key en el host centos1

Todo el camino ingrese el procesamiento predeterminado

cat ~ / .ssh / id_rsa.pub >> ~ / .ssh / certified_keys # Copie la clave pública en el archivo de autorización

raíz ssh @ centos1 #Iniciar sesión

salir # Cerrar sesión

 

Nota: Sincronice otras máquinas: ssh-copy-id centos2

 

Configuración: core-site.xml Información básica de Hadoop, incluido el directorio temporal, la dirección de acceso, etc.

Configuración: procesamiento de trabajos relacionados con la configuración yarn-site.xml

Configuración: hdfs-site.xml es muy importante, puede determinar el número de copias de seguridad de archivos y la ruta de la carpeta de datos

Configuración: core-site.xml (se modifican los tres sistemas)

core-site.xml es la información central de Hadoop, incluido el directorio temporal, la dirección de acceso, etc.

vim /usr/local/hadoop/etc/hadoop/core-site.xml

<configuración>

    <propiedad>

        <name> hadoop.tmp.dir </name>

        <value> / home / root / hadoop_tmp </value>

        <description> Reducción para otros directorios temporales. </description>

    </property>

    <propiedad>

        <name> fs.defaultFS </name>

        <valor> hdfs: // centos1: 9000 </value>

    </property>

</configuration>

La información "/ Home / root / hadoop_tmp" es la más importante. La información del archivo temporal de esta configuración de ruta de archivo, si no está configurada, se generará un archivo "tmp" en la carpeta hadoop (muchas personas lo configurarán en "/ user / local / hadoop / tmp "), si se configura de esta manera, toda la información se borrará una vez reiniciada, lo que significa que el entorno de Hadoop no será válido en este momento.

El mensaje " centos1: 9000 " describe la ruta del administrador de páginas que se abrirá en el futuro;

La versión de hadoop 2.x está predeterminada en el puerto 9000. Si se usa la versión 1.x, la predeterminada es 8020.

Para garantizar que la operación general esté libre de errores, puede crear directamente un directorio "/ home / root / hadoop_tmp";

cd ~

mkdir hadoop_tmp

Configuración: yarn-site.xml (solo modificar el nodo maestro)

Procesamiento de trabajos relacionados con la configuración Yarn-site.xml

vim /usr/local/hadoop/etc/hadoop/yarn-site.xml

<configuración>

    <propiedad>

        <nombre> yarn.resourcemanager.admin.address </name>

        <value> centos1: 8033 </value>

    </property>

    <propiedad>

        <nombre> yarn.nodemanager.aux-services </nombre>

        <value> mapreduce_shuffle </value>

    </property>

    <propiedad>

        <nombre> yarn.nodemanager.aux-services.mapreduce_shuffle.class </name>

        <value> org.apache.hadoop.mapred.ShuffleHandler </value>

    </property>

    <propiedad>

        <nombre> yarn.resourcemanager.resource-tracker.address </name>

        <value> centos1: 8025 </value>

    </property>

    <propiedad>

        <nombre> yarn.resourcemanager.scheduler.address </name>

        <value> centos1: 8030 </value>

    </property>

    <propiedad>

        <nombre> yarn.resourcemanager.address </nombre>

        <value> centos1: 8050 </value>

    </property>

    <propiedad>

        <nombre> yarn.resourcemanager.webapp.address </name>

        <value> centos1: 8088 </value>

    </property>

    <propiedad>

        <nombre> yarn.resourcemanager.webapp.https.address </name>

        <value> centos1: 8090 </value>

    </property>

</configuration>

Configuración: hdfs-site.xml (se modifican los tres sistemas)

hdfs-site.xml es muy importante, puede determinar la cantidad de copias de seguridad de archivos y la ruta de la carpeta de datos

vim /usr/local/hadoop/etc/hadoop/hdfs-site.xml

<configuración>

    <propiedad>

        <name> dfs.replication </name>

        <value> 1 </value>

    </property>

    <propiedad>

        <name> dfs.namenode.name.dir </name>

        Archivo <value>: /// usr / local / hadoop / dfs / name </value>

    </property>

    <propiedad>

        <name> dfs.datanode.data.dir </name>

        Archivo <value>: /// usr / local / hadoop / dfs / data </value>

    </property>

    <propiedad>

        <name> dfs.namenode.http-address </name>

        <value> centos1: 50070 </value>

    </property>

    <propiedad>

        <name> dfs.namenode.secondary.http-address </name>

        <value> centos1: 50090 </value>

    </property>

    <propiedad>

        <name> dfs.permissions </name>

        <valor> falso </valor>

    </property>

<propiedad>

             <name> dfs.namenode.datanode.registration.ip-hostname-check </name>

             <valor> falso </valor>

</property>

</configuration>

"Dfs.replication": el número de copias del archivo, en circunstancias normales, el archivo tendrá una copia de seguridad de 3 copias;

"Dfs.namenode.name.dir": define la ruta del nodo de nombre;

"Dfs.datanode.data.dir": define la ruta del nodo del archivo de datos;

"Dfs.namenode.http-address": acceso de ruta http del servicio de nombres;

"Dfs.namenode.secondary.http-address": el nodo del segundo nombre;

"Dfs.permissions": problema de autenticación de permisos, porque si está configurado, puede que no sea posible acceder a los archivos en el futuro;

dfs.namenode.datanode. 192.168.190.138) "tm lee ipv6, en realidad debería ser ipv4 ip.

Configuración: mapred-site.xml (solo modificar el nodo maestro)

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

vim /usr/local/hadoop/etc/hadoop/mapred-site.xml

<configuración>

    <propiedad>

              <name> mapreduce.framework.name </name>

              <valor> hilo </value>

</property>

</configuration>

Otra configuración

Crear archivos maestros, esclavos

vim / usr / local / hadoop / etc / hadoop / masters # 加入 “centos1”

 

vim / usr / local / hadoop / etc / hadoop / slaves #Cambie "localhost" por

centos2

centos3

 

hadoop pertenece a un entorno de desarrollo distribuido, considerando que el clúster se construirá en el futuro;

Se recomienda crear un archivo maestro en el directorio "/ usr / local / hadoop / etc / hadoop /", escriba el nombre del host, el contenido es centos1 (el nombre del host definido en el archivo hosts): No importa

 

Crear nombre de carpeta, datos

cd / usr / local / hadoop

mkdir dfs dfs / nombre dfs / data

 

Porque en este momento, todas las rutas de almacenamiento de namenode y datanode se establecen en el directorio hadoop, si desea estar seguro, puede crear el suyo propio;

Nota: Si hay un problema con su hadoop y está reconfigurado, asegúrese de eliminar estas dos carpetas por completo

Formato

cd / usr / local / hadoop / bin

hdfs intentode -format

El sistema de archivos formateado "INFO util.ExitUtil: Saliendo con el estado 0" se realizó correctamente

Iniciar / verificar / acceder / detener

1. Comience

cd / usr / local / hadoop / bin

start-all.sh #start hadoop

2. Verificación

jps #Compruebe el proceso de Java, si hay 6 como a continuación

2536 DataNode

2408 NameNode

3034 NodeManager

2907 ResourceManager

3339 Jps

2748 SecondaryNameNode

Nota: Si se trata de una implementación de clúster, solo hay 4, y los otros dos NodeManager y DataNode están en la máquina esclava

3. Visita

http://192.168.190.130:50070

Si también desea usar el nombre de centos1 externamente (windows), debe modificar el archivo de hosts y agregar la configuración de mapeo:

C: \ Windows \ System32 \ drivers \ etc \ hosts aumento: 192.168.190.130 centos1

 

http://192.168.190.130:8088/cluster

4. Parar

stop-all.sh

Probar inicio de sesión sin contraseña

ssh centos2

acceso al sistema de archivos hdfs

http://192.168.190.130:50070/explorer.html#/

 

Si se requiere acceso al nombre del host, la asignación del nombre del host debe realizarse en C: \ Windows \ System32 \ drivers \ etc \ hosts.

Tai Hang

1. El nombre secundario del nodo no se inicia

Hadoop debe eliminarse después de cambiar la versión: / home / root / hadoop_tmp este directorio,

No se confunda con el directorio / root / hadoop_tmp

 

Otro archivo de registro es este:

/usr/local/hadoop/logs/hadoop-root-secondarynamenode-centos1.log

No esto: /usr/local/hadoop/logs/hadoop-root-secondarynamenode-centos1.out

2. configuración de hdfs-site.xml

dfs.namenode.datanode. 192.168.190.138) "tm lee ipv6, en realidad debería ser ipv4 ip.

Operaciones comunes de Hadoop

hadoop fs y hdfs dfs son lo mismo

 

Operaciones de directorio

hadoop dfsadmin -safemode dejar # modo seguro Salir

hadoop fs -mkdir -p / test / test1 #Cascade para crear un directorio

hadoop fs -ls / #View directorio raíz

hadoop fs -ls #View / user / root /

hadoop fs -rm -r -f / test #Cascade eliminar directorio

Operaciones de archivo

hadoop fs -put / usr / local / hadoop / output / part-r-00000 / test / #upload archivos locales al directorio hdfs / test

hadoop fs -put / usr / local / hadoop / output / part-r-00000 hdfs: // centos1: 9000 / test #o escríbalo así

hadoop fs -rm / test / part-r-00000 # Eliminar archivos

hadoop fs -get / test / part-r-00000 # Descarga el archivo en hdfs al directorio actual

 

Supongo que te gusta

Origin www.cnblogs.com/yingjie926/p/12689151.html
Recomendado
Clasificación