环境:ubuntu-16.04
hadoop-2.6.0
jdk1.8.0_161。这里的环境不一定需要和我一样,基本版本差不多都ok的,所需安装包和压缩包自行下载即可。
因为这里是配置Hadoop的教程,配置Java以及安装VMware Tools就自行百度解决哈,这里就不写了(因为教程有点长,可能有些地方有些错误,欢迎留言评论,我会在第一时间修改的)。
先判断是否安装ssh,输入命令:ssh localhost,若提示输入密码,即已经安装。如果没有安装,输入命令:sudo apt-get install openssh-server 安装
修改ssh配置文件:
输入命令:vim /etc/ssh/ssh_config 将其中的 Port 22 字段和 PermitLocalCommand no 字段前面的 '#’删除,并且,将 PermitLocalCommand 后面的 no 改为 yes
修改过后截图:
查看在根目录下是否存在.ssh文件夹:
输入命令:cd
ls -a
若没有则在根目录下创建.ssh文件夹,输入命令:mkdir .ssh
产生密钥,输入命令:cd /root/.ssh
ssh-keygen -t rsa
将生成的公钥追加到授权的key中去
输入命令:cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
验证安装是否成功,输入命令:ssh –version
ssh localhost 提示不需要输入密码则安装成功。
将下载好的Hadoop压缩包文件拖进Linux下,为了后续的学习的过程,最好单独创建一个文件夹存放这些文件。我这里使用命令:mkdir /home/xiaow/hadoop2.0创建了一个名为hadoop2.0的文件夹,再将hadoop2.6.0压缩包拖进里面并解压。
配置环境变量,输入命令:cd /etc
vim profile
在末尾追加:export HADOOP_HOME=/home/xiaow/hadoop2.0/hadoop-2.6.0
export PATH=$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$PATH
注意:这里的路径为自己解压后的路径,每个人的路径不相同。
配置完环境变量后,需要系统配置一下环境变量,以便生效。
输入命令:source /etc/profile
需要修改的 hadoop 的配置文件有 5 个,即 core-site.xml、hdfs-site.xml、yarn-site.xml、 slaves、hadoop-env.sh 五个文件。这5个文件的位置为:
hadoop.tmp.dir /home/tmp 设置临时文件夹,只要在 home 下即可 fs.defaultFS hdfs: //localhost:9000 也可以改为本机 IP 地址
dfs.replication 1 备份数目,单节点上是 1,多节点一般为 3 dfs.namenode.name.dir /home/xiaow/hadoop/dfs/name NameNode 所在路径 dfs.datanode.data.dir /home/xiaow/hadoop/dfs/data dataNode 所在路径 dfs.permissions false HDFS 的权限,默认就行
mapreduce.framework.name yarn yarn.nodemanager.aux-services mapreduce_shuffle
默认就好,不用修改
将里面的 JAVA_HOME=${JAVA_HOME}修改为自己安装的jdk地址
至此hadoop配置文件的修改,已经全部完成。
输入命令:
cd /home/xiaow/hadoop2.0/hadoop-2.6.0 bin/hadoop namenode –format sbin/start-all.sh jps
出现如下图所示6个Java进程,则Hadoop伪分布式成功搭建。
输入命令:source /etc/profile 即可解决
应先输入 sbin/stop-all.sh 停止 hadoop所有进程
解决办法可能有以下两种:
1. 再仔细检查刚才配置文件是否出现错误。一般自己检查不出错误,可叫同学帮忙检查一下,必须仔细比对。 再依次使用这三个命令启动Hadoop:
2.可能是临时文件夹没删掉。
找到上图箭头所指示的文件夹并删掉,在重新启动hadoop,如此问题解决。