**
Hadoop伪分布式搭建
**
首先要配置ssh
注:为什么要配置ssh,因为hadoop 启动时会ssh localhost,如果不配置免密登录,那么每次启动都会让输入密码,那会非常的烦,所以需要配置ssh.
ssh配置特别注意:.ssh文件夹权限必须为700, authorized_keys权限为600
在用户目录下输入以下指令
ssh-keygen -t rsa
连续回车三下,在用户家目录下就会生成.ssh文件夹其中有id_rsa 和id_rsa.pub
cd .ssh
然后将公钥给authorized_keys文件
cat id_rsa.pub >> authorized_keys
实现ssh内回环,
ssh loaclhost 或者 ssh master
**注意这里可能会让你输入密码,这就是没配置好,需要修改ssh配置文件,/etc/ssh/sshd_config**
vim /etc/ssh/sshd_config
PubkeyAuthentication yes
RSAAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
将这三句话的注释去掉,若找不到也可以直接加上
然后重启服务 systemctl restart sshd
重新 ssh localhost即可成功
–在${HADOOP_HOME}/etc/hadoop 下
hadoop-evn.sh --文件中有这俩个配置,需要找到并修改
export JAVA_HOME=/opt/soft/jdk1.8.0_181 //这里需要改为你自己的jdk目录
export HADOOP_CONF_DIR=/home/hadoop/hadoop-2.7.7/etc/hadoop //这里需要改成自己的目录
core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.7.7/tmp</value> //这个目录需要创建
</property>
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
配置好后返回hadoop目录,执行格式化hdfs
`bin/hdfs namenode -format`
启动所有节点
`sbin/start-all.sh`
使用jps查看节点启动情况
[hadoop@master hadoop]$ jps
6784 NameNode
7254 ResourceManager
7064 SecondaryNameNode
8441 Jps
7357 NodeManager
6894 DataNode
出现这样就表示成功。
如有问题,可以留言。