所需设备:一台配置好网络的虚拟机(我用的系统是centos7),jdk压缩包,hadoop压缩包
将jdk压缩包和hadoop压缩包导入虚拟机中,导入的办法可以看下面这位创作者的链接,链接: 解决办法,
执行命令:
vim /etc/profile
export JAVA_HOME=你自己解压的java在哪里就填写哪里
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
生效JDK
source /etc/profile
ssh-keygen -t rsa
ssh-copy-id gadoop100(你自己的虚拟机名字,在etc/hostname查看)
配置HADOOP环境变量
执行命令
vim /etc/profile
在文件末尾插入如下代码
export HADOOP_HOME=你自己解压hadoop在哪里就填写哪里
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
生效环境变量
source /etc/profile
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_JOURNALNODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
export JAVA_HOME=你自己java的路径
HADOOP_SHELL_EXECNAME=root
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://您的虚拟机名称:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>自行设置即可,是文件的存储路径</value>
</property>
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
</configuration>
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>自行设置,如/usr/hadoop3/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>自行设置,如/usr/hadoop3/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>你的主机名称</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
执行命令
vim workers
把里面的localhost删掉,写上你的虚拟机名称
启动节点时出现permission denied?
答:ssh免密登录出现了问题,删掉.ssh文件重新配置
运行 java 找不到命令?
答:仔细检查javahome的路径是不是你解压的位置
运行java -version 后是openjdk?
答:centos7自带openjdk,网上有教程可以卸载掉他
运行 hadoop 出现java命令 找不到?
答:去看 env.sh文件里java是不是你解压的位置