Tabla de contenido
2. Actualice Apt, instale SSH y configure el inicio de sesión sin contraseña SSH.
3. Configurar el inicio de sesión SSH sin contraseña
5. Configuración independiente de Hadoop (no distribuida)
6. Configuración pseudodistribuida de Hadoop
7. Ejecute una instancia pseudodistribuida de Hadoop
1. Crear usuario de Hadoop
1. Crear usuario de Hadoop
Ingrese el siguiente comando para crear un nuevo usuario:
sudo useradd -m hadoop -s /bin/bash
Este comando crea un usuario de hadoop que puede iniciar sesión y usa /bin/bash como shell.
Luego use el siguiente comando para establecer la contraseña. Simplemente puede configurarlo en hadoop. Ingrese la contraseña dos veces cuando se le solicite:
sudo passwd hadoop
Se pueden agregar permisos de administrador a los usuarios de hadoop para facilitar la implementación y evitar algunos problemas de permisos que son más difíciles para los principiantes:
sudo adduser hadoop sudo
2.Cambiar usuario
Cierre la terminal, cierre la sesión del usuario actual y seleccione el usuario de Hadoop para iniciar sesión.
2. Actualice Apt, instale SSH y configure el inicio de sesión sin contraseña SSH.
1.Actualizar apto
Después de iniciar sesión como usuario de hadoop, primero actualizamos apt. Luego usamos apt para instalar el software. Si no se actualiza, es posible que parte del software no se instale. Presione Ctrl+Alt+T para abrir una ventana de terminal y ejecutar el siguiente comando:
sudo apt-get update
2. Instalar SSH
Instale el servidor SSH y ejecute el siguiente comando:
sudo apt-get install openssh-server
Ingrese "Y" y presione Enter para continuar con la instalación.
Después de la instalación, puede utilizar el siguiente comando para iniciar sesión en la máquina:
ssh localhost
Ingrese "sí", luego ingrese la contraseña y presione Enter.
3. Configurar el inicio de sesión SSH sin contraseña
Comience ingresando el siguiente código:
exit
Salga del ssh localhost ahora mismo
Ingrese el siguiente código:
cd ~/.ssh/
Ingrese al directorio ssh
Ingrese el siguiente código:
ssh-keygen -t rsa
Utilice ssh-keygen para generar claves
Cuando se le solicite, presione la tecla Enter
Ingrese el siguiente código:
cat ./id_rsa.pub >> ./authorized_keys
Agregar clave a la autorización
En este momento, utilice el comando ssh localhost para iniciar sesión directamente sin ingresar una contraseña.
ssh localhost
3. Instalar el entorno Java
Ingrese el siguiente código para instalar Openjdk-8-jdk
sudo apt-get install openjdk-8-jdk
Ingrese "Y" y presione Enter para continuar con la instalación.
Ingrese el siguiente código para ver la versión de Java instalada
java -version
Ingrese el siguiente código para configurar el archivo de entorno Java
gedit ~/.bashrc
Agregue la siguiente línea al frente del archivo (tenga en cuenta que no puede haber espacios antes y después del signo igual "="), luego guarde y salga:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
A continuación, para que las variables de entorno surtan efecto inmediatamente, ejecute el siguiente código:
source ~/.bashrc
Después de ejecutar el comando anterior, puede verificar si la configuración es correcta:
echo $JAVA_HOME
java -version
$JAVA_HOME/bin/java -version
4. Instale Hadoop
1. Descargar Hadoop
Descargue Hadoop-3.2.4 usando el navegador Firefix integrado en el sistema Ubuntu
Dirección de descarga de Hadoop: Índice de /apache/hadoop/common/hadoop-3.2.4
2. Instale Hadoop
Ingrese el siguiente código: (tenga en cuenta que C debe estar en mayúscula)
sudo tar -zxf ~/下载/hadoop-3.2.4.tar.gz -C /usr/local
Descomprima e instale Hadoop en la carpeta /usr/local
Ingrese el siguiente código:
cd /usr/local/
sudo mv ./hadoop-3.2.4/ ./hadoop # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop
Y cambie el nombre de la carpeta a hadoop y modifique los permisos del archivo.
Ingrese el siguiente comando para verificar si Hadoop está disponible. Si tiene éxito, se mostrará la información de la versión de Hadoop:
cd /usr/local/hadoop
./bin/hadoop version
5. Configuración independiente de Hadoop (no distribuida)
Ejemplo de grep
Tome todos los archivos en la carpeta de entrada como entrada, filtre las palabras que coincidan con la expresión regular dfs[az.]+ y cuente el número de apariciones, y finalmente envíe los resultados a la carpeta de salida.
cd /usr/local/hadoop
mkdir ./input
cp ./etc/hadoop/*.xml ./input
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
cat ./output/*
Hadoop no sobrescribe el archivo de resultados de forma predeterminada, por lo que ejecutar el ejemplo anterior nuevamente generará un error y deberá eliminarse ./output
primero.
rm -r ./output
6. Configuración pseudodistribuida de Hadoop
El archivo de configuración de Hadoop se encuentra en /usr/local/hadoop/etc/hadoop/. Para la pseudodistribución, es necesario modificar dos archivos de configuración, core-site.xml y hdfs-site.xml. El archivo de configuración de Hadoop está en formato xml y cada configuración se implementa declarando el nombre y el valor de la propiedad.
Modifique el archivo de configuración core-site.xml
cd /usr/local/hadoop
gedit ./etc/hadoop/core-site.xml
Modifique a la siguiente configuración, haga clic en Guardar y salir:
<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://localhost:9000</value>
</property>
</configuration>
Modifique el archivo de configuración hdfs-site.xml
gedit ./etc/hadoop/hdfs-site.xml
Modifique a la siguiente configuración, haga clic en Guardar y salir:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
Una vez completada la configuración, realice el formateo del NameNode:
./bin/hdfs namenode -format
Luego inicie los demonios NameNode y DataNode
./sbin/start-dfs.sh
Una vez completado el inicio, puede utilizar el comando jps para determinar si se inició correctamente.
jps
Después de un inicio exitoso, puede acceder a la interfaz web http://localhost:9870 para ver la información de NameNode y Datanode, y también puede ver archivos en HDFS en línea.
7. Ejecute una instancia pseudodistribuida de Hadoop
Para usar HDFS, primero debe crear un directorio de usuario en HDFS:
cd /usr/local/hadoop
./bin/hdfs dfs -mkdir -p /user/hadoop
Luego copie el archivo xml en ./etc/hadoop como un archivo de entrada al sistema de archivos distribuido, es decir, copie /usr/local/hadoop/etc/hadoop a /user/hadoop/input en el sistema de archivos distribuido
./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input
Una vez completada la copia, puede ver la lista de archivos mediante el siguiente comando:
./bin/hdfs dfs -ls input
Tome todos los archivos en la carpeta de entrada como entrada, filtre las palabras que coincidan con la expresión regular dfs[az.]+ y cuente el número de apariciones, y finalmente envíe los resultados a la carpeta de salida.
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'
Comando para ver los resultados de la ejecución (ver los resultados de salida ubicados en HDFS):
./bin/hdfs dfs -cat output/*
Obtenga los resultados de la ejecución en el local:
rm -r ./output
./bin/hdfs dfs -get output ./output
cat ./output/*
Cuando Hadoop ejecuta el programa, el directorio de salida no puede existir; de lo contrario, se generará un error.
Por lo tanto, si desea ejecutarlo nuevamente, debe ejecutar el siguiente comando para eliminar la carpeta de salida:
./bin/hdfs dfs -rm -r output
Para cerrar Hadoop, ejecute:
./sbin/stop-dfs.sh
Artículo de referencia: Tutorial de instalación de Hadoop_Configuración de máquina única/pseudodistribuida_Hadoop2.6.0(2.7.1)/Ubuntu14.04(16.04)_Blog del Laboratorio de bases de datos de la Universidad de Xiamen