Experiencia de creación de clústeres de big data
Preparación básica del entorno
- 1 Apague el firewall de cada servidor
systemctl status firewalld.service #Ver el estado del firewall
systemctl stop firewalld.service
#Apagar el firewall systemctl disable firewalld.service #Prohibir que el firewall se inicie
- 2 Configure el archivo de hosts
Edite el contenido de la configuración del archivo de hosts
vi / etc / hosts en el nodo maestro de la
siguiente manera:
172.19.241. * Maestro
172.19.241. * Esclavo2
172.19.241. * Esclavo3
172.19.241. * Esclavo1
- 3 Configurar inicio de sesión sin contraseña
Elija un servidor como nodo maestro y luego genere la clave pública
ssh-keygen -t rsa en el nodo, y
luego envíe la clave pública a cada nodo esclavo
ssh-copy-id slave1
. Se requiere una contraseña por primera vez. Una vez completada la configuración, el nodo maestro visita. Cada nodo esclavo ya no necesita ingresar una contraseña.
Instalación del nodo maestro
Las siguientes operaciones se realizan todas en el nodo maestro
Instalar JDK
- 1 descarga de JDK
https://www.oracle.com/technetwork/java/javase/downloads - 2 Cargue el JDK descargado al nodo maestro
- 3 Descomprimir
Cree una carpeta java
mkdir / usr / local / java en / usr / local
y luego extraiga jdk a esta carpeta
tar -zxvf jdk-8u231-linux-x64.tar.gz -C / usr / local / java
- 4 Ubicación JAVA_HOME
vi / etc / bashrc
agregue lo siguiente al final del archivo:
export JAVA_HOME=/usr/local/java/jdk1.8.0_231
export JRE_HOME=${
JAVA_HOME}/jre
export PATH=${
JAVA_HOME}/bin:$PATH
- 5 Verifique la
fuente / etc / bashrc
e ingrese java -version
Instalar Hadoop
- 1 Descarga
https://hadoop.apache.org/releases.html - 2 Cargar y descomprimir
mkdir / usr / local / hadoop
tar -zxvf hadoop-2.10.1.tar.gz -C / usr / local / hadoop
- 3 Configurar variables de entorno
cat >> / etc / profile << EOF
#Hadoop
export HADOOP_HOME = / usr / local / hadoop / hadoop-2.10.0
export PATH = $ PATH: $ HADOOP_HOME / bin
EOF
- 4 Inspección
fuente / etc / profile
hadoop versión
Archivo de configuración de Hadoop
Los principales archivos de configuración necesarios son core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml, masters, slaves
- 1 configuración de núcleo
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/core-site.xml
Modifique su contenido como:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
- Configuración de 2 hdfs
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/hdfs/data</value>
</property>
</configuration>
- 3 configuración mapeada
Copie
cp /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml
y luego Editar
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>http://master:9001</value>
</property>
</configuration>
- Configuración de 4 hilos
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
</configuration>
- 5 configuración maestra
Crear un nuevo archivo maestro
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/masters
master
- Configuración de 6 esclavos
vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/slaves
slave1
slave2
slave3
Configuración del nodo esclavo
- 1 Distribuya jdk a cada nodo esclavo
scp jdk-8u231-linux-x64.tar.gz esclavo1: / usr / local
Luego descomprímelo en / usr / local / java
- 2 Distribuya Hadoop a cada nodo esclavo.
Primero, empaquete el Hadoop configurado en un paquete
tar -zcvf hadoop.tar.gz / usr / local / hadoop
Luego divida el paquete empaquetado en cada nodo esclavo
scp hadoop.tar.gz esclavo1: / usr / local
Descomprime el paquete
tar -zxcf hadoop.tar.gz -C / usr / local
- 3 Distribuya varios archivos de configuración a cada nodo esclavo
Distribuir archivo de hosts
scp / etc / hosts slave1: / etc /
distribuir archivo de perfil
scp / etc / profile slave1: / etc /
distribuir archivo bashrc
scp / etc / bashrc slave1: / etc /
Luego verifique si la configuración surte efecto
fuente / etc / profile
source / etc / bashrc
java -version
versión hadoop
Si no hay problema, significa que la configuración se ha completado, y lo siguiente es el inicio
Inicio de Hadoop
Inicio del clúster, Opere en el nodo maestro:
- 1 Formatee el nodo de nombre
antes de iniciar el servicio por primera vez, necesita realizar operaciones de palabras y no necesita realizarlas más tarde.
formato de propósito de hadoop
- 2 Inicio
cd /usr/local/hadoop/hadoop-2.10.0
sbin / start-all.sh
-
3 Marque
Usar el comando jps para verificar si el inicio es exitoso. El
nodo maestro tiene los procesos Namenode y ResourceManager. El
nodo esclavo tiene los procesos Datanode y NodeManager. -
4 Ver
hdfs visualmente visite http: // master: 50070 /
yarn visite http: // master: 8088 /