一 、准备工作
1.准备2台装有linux的机器,具有相同的用户名(我设置为hadoop)
两台机器的ip与主机名
202.194.124.40 master
202.194.124.39 node1
2.确保所有机器在一个局域网内,并且能够相互ping通(如果不通把防火墙关闭)
3.配置ssh免密码登录
在master主机上输入
ssh-keygen -t rsa
之后一直按回车键即可。然后,在集群内分配密钥:
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@202.194.124.39
使用ssh-copy-id不仅可以将公钥添加到authorized_keys中去,而且也设置了正确的权限(文件夹.ssh为700,authorized_keys为600)
这样在master主机上ssh 202.194.124.39(执行命令)主机时应该就不要密码了
如果出现Agent admitted failure to sign using the key这个问题
解决方法使用 ssh-add 指令将私钥 加进来 :
ssh-add ~/.ssh/id_rsa
4.配置hosts文件
hosts文件修改配置内容如下( 命令:sudo gedit /etc/hosts ):
127.0.0.1 localhost
202.194.124.40 master
202.194.124.39 node1
二、修改hadoop的配置文件
1.这里需要修改5个文件:
conf/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/logs</value>
</property>
</configuration>
conf/hdfs-site.xml(与伪分布式相同)
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
</configuration>
masters
master
salves(如果有多台电脑ip地址累加就行啦,此外如果master节点也进行job工作, 就把master写在下面即可)
node1
配置到这里,hadoop到全分布式就配置完成了,运行方法与伪分布式相同,这里不再多说了。
为方便查看hadoop系统的运行状态,hadoop提供了基于网页的查看方式,非常方便。
1.查看Map/Reduce的运行状态:http://localhost:50030
2.查看HDFS的运行状态:http://localhost:50070