El roc de alas doradas supera a Shiying, y el roc de alas doradas supera a Shixiong.
La golondrina que atraviesa las nubes es la paloma de hojalata, y la flor Yunping que pisa la nieve no tiene rastro.
---------------- Clave de este artículo: 338 -----------------
Este artículo describe el proceso de instalación de hadoop3 en macos de macbook pro y también se puede usar como referencia para instalar hadoop3 en cualquier plataforma similar a Linux.
1. Preparación
Asegúrese de que jdk esté instalado y que jdk1.8.0_221 esté instalado localmente.
exportar JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/
Descargar Hadoop-3.0.0:
https://archive.apache.org/dist/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz
Póngalo en el directorio de instalación, yo uso: /usuario/local/
Descompresión: tar zxf hadoop-3.0.0.tar.gz
Para facilitar el mantenimiento posterior, cree un enlace simbólico: ln -s hadoop-3.0.0 hadoop
2. Configure HADOOP_HOME en el archivo ~/.bashrc
export HADOOP_HOME=/user/local/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
3. Configure el inicio de sesión sin contraseña ssh local
ssh localhost # 若成功,则已配置,跳过
cd ~/.ssh
# 生成秘钥文件
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# 将公钥文件加入授权文件中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
#测试一下
ssh localhost
4. Modificar core-site.xml
<confiquration>
<property>
<name>hadoop.tmp.dir</name>
<value>/user/local/hadoop/tmp</value>
<description>A base for other temporary directories<description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
5. Modificar mapred-site.xml
<configuration>
<property>
<name>mapredjob.tracker</name>
<value>localhost:9010</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
6. Modificar hdfs-sitio.xml
<configuration>
<!--伪分布式配置-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
7. Modificar hilo-sitio.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>
8. Modificar hadoop-env.sh
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
export HADOOP_OS_TYPE=${HADOOP_OS_TYPE:-$(uname -s)}
# Under certain conditions, Java on OS X will throw SCDynamicStore errors
# in the system logs.
# See HADOOP-8719 for moreinformation. If one needs Kerberos
# support on 0S Xone will want to change/remove this extra bit
case ${HADOOP_OS_TYPE} in
Darwin*)
export HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.realm= "
export HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.kdc= "
export HADOOP_OPTS="${HADOOP_OPTS} -Djava.security.krb5.conf= "
;;
esac
9. Inicio
cd $HADOOP_HOME
# 格式化namenode
./bin/hdfs namenode -format
./sbin/start-all.sh
éxito:
Compruebe jps:
Revisa la página de administración:
Página de administración de Hadoop: http://localhost:8088/cluster
Nodo de nombre: http://localhost:9870/
Nodo de datos:http://localhost:9864/
Directorio HDFS: http://localhost:9870/explorer.html#/
Preguntas relacionadas
Problema 1: error en start-all.sh al inicio
错误:ADVERTENCIA util.NativeCodeLoader: No se puede cargar la biblioteca nativa de hadoop para su plataforma... usando clases java integradas cuando corresponda
Solución:
Necesita descargar el paquete fuente de hadoop: hadoop-3.0.0-src.tar.gz, después de volver a compilar, copie la biblioteca de seguridad en el directorio de hadoop:
tar zxf hadoop-3.0.0-src.tar.gz
cd hadoop-3.0.0-src
mvn package -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true
# 成功后
cp ./hadoop-common-project/hadoop-common/target/native/target/usr/local/lib/libhadoop.* ../hadoop-3.0.0/lib/native/
cd ../hadoop-3.0.0
Problema 2: error de Namenode al inicio
WARN org.apache.hadoop.hdfs.server.namenode.FSNamesystem: se encontró una excepción al cargar fsimage
org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: el directorio /user/local/hadoop/tmp/dfs/name está en un estado incoherente: el directorio de almacenamiento no existe o no es accesible
Solución:
Ejecute el comando format namenode:
Formato de nodo de nombre ./bin/hdfs
Para otros errores, como permisos de directorio, etc., analice la situación específica en detalle.