Hadoop学习之Ubuntu12.04 Hadoop 环境搭建笔记

  • SSH无密码配置
  • Hadoop在Ubuntu12.04上搭建环境
  • 报错及问题

SSH无密码配置

参考:Linux(Centos)配置OpenSSH无密码登陆


注意问题:

Hadoop集成环境三台机器都要配置无密码环境,互相要可以ssh通。如果你想用主机名称来连接ssh的话要注意:

在每台机器(共三台)的 /etc/hosts 这个文件中的IP和主机各要对应,如下:
主机IP        主机名
192.168.139.134 master
192.168.139.136 slaver
192.168.139.135 slaner


Hadoop在Ubuntu12.04上搭建环境

参考:Hadoop集群(第5期)_Hadoop安装配置


按照参考认真配置完成后,注意如下问题:

每次修改任何一个文件都要记得执行如下命令:

/etc/profile

Hadoop conf/目录下的slaves文件要配置你的所有非Master机器的IP或者主机名,前提是你已经在/etc/hosts文件中配置好了IP对应主机名

主机名在:/etc/hostname 中修改

有时候你配置完成了,但是启动遇到很多问题,你可以执行下面语句:

rm -rf /usr/local/hadoop/tmp
mkdir /usr/local/hadoop/tmp
rm -rf /tmp/hadoop*
source /etc/profile
hadoop namenode -format


配置好Eclipse环境后,你会遇到这个界面:

这里写图片描述


如果在DFS locations 中的文件夹中提示 ”拒绝连接“ 那就是你没有把Hadoop配置好,重新配置。切记,所有的机器都要配置好。

Cannot connect to the Map/Reduce location: Hadoop1.0.3 Call to ubuntu/192.168.139.128:9000 failed on connection exception: java.net.ConnectException: 拒绝连接

如果你已经连接上了,但是,System中的目录下是空的,那也只能说明你没有配置好,有一种情况是我遇到的:我的非Master机器上的Hadoop配置文件写的Ip不是Master的IP,而是各机器自己的IP,这样是错误的。如下 图:

这里写图片描述


报错及问题

参考:eclipse 向hdfs 上传文件为空怎么解决
参考:Hadoop分布配置手册
参考: Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序


在Eclipse中运行你的小程序的时候,你可能会遇到 如下问题 :

org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to /192.168.139.135:9000 failed on local exception: java.io.IOException: 连接被对端重置

出现这种情况的原因 有一种情况就是你在Eclipse配置死了,如下:

右键配置Run Config


当你在上传文件到DFS中的时候,有时候会上传空文件,或者会报如下错误:

WARN hdfs.DFSClient: DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /tmp/wordcount/word5.txt could only be replicated to 0 nodes, instead of 1

出现这种情况的一种原因是你没有关闭防火墙

sudo ufw disable #关闭防火墙

Code is read far more than it's written
原文地址:https://www.cnblogs.com/ChickenTang/p/5655413.html