我的搭建环境: ubuntu12.04
hadoop-0.20.203
jdk-6u30-linux-i586.bin ----> http://labs.mop.com/apache-mirror/hadoop/common/hadoop-1.0.1/
hadoop-0.20.203的 eclipse插件 ---->http://download.csdn.net/detail/god793614256/5781659
1.配置hosts与hostname
Ctrl+Alt+T->进入终端
sudo gedit /etc/hostname ->用文本编辑器打开hostname配置文件,为避免各种以后会出现的奇葩问题,建议hostname直接用localhost
sudo gedit /etc/hosts ->看看里面的机器名是否也是localhost,其它不改动
2.安装jdk
cd /usr/local ->进入该文件夹下
sudo mkdir java ->创建java文件夹
cd ..
cd 桌面 ->进入桌面
sudo cp jdk-6u30-linux-i586.bin /usr/local/java ->将java软件包拷贝到刚建立的文件夹下
sudo chmod u+x jdk-6u30-linux-i586.bin->给jdk文件赋予权限
sudo ./jdk-6u30-linux-i586.bin-> 解压jdk压缩包进行安装
sudo gedit /etc/profile ->打开配置文件,配置java环境变量,在末尾添加(注意/etc/environment是设置整个系统的环境,而/etc/profile是设置所有用户的环境)
#set java environmentexport JAVA_HOME=/usr/local/java/jdk1.6.0_30
export JRE_HOME=/usr/local/java/jdk1.6.0_30/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
source /etc/profile ->使配置生效
java -version ->查看是否配置成功
3.安装hadoop
cd
cd 桌面-》进入桌面
sudo cp hadoop-0.20.203.tar.gz /usr/local->将hadoop安装包复制到该文件夹下
sudo tar zxf hadoop-0.20.203.tar.gz->解压
sudo mv hadoop-0.20.203.0 hadoop ->重命名为hadoop
4.创建新用户hadooop
cd .. ->返回
sudo addgroup hadoop ->添加组
sudo adduser -ingroup hadoop hadoop->添加新用户(一路确定即可)
sudo gedit /etc/sudoers->打开权限配置文件,修改hadoop用户权限
# User privilege specification
root ALL=(ALL:ALL) ALL
hadoop ALL=(ALL:ALL) ALL
sudo chown -R hadoop /usr/local/hadoop->将hadoop文件夹权限赋予hadoop用户
5.安装ssh,并实现无密码登陆
sudo apt-get install openssh-server->安装ssh
su hadoop ->登陆hadoop用户
ssh-keygen -t rsa -P " "->创建ssh-key
/home/hadoop/.ssh/id_rsa ->选择密钥生成位置
cd /home/hadoop/.ssh ->进入密钥生成所在的文件夹
cat id_rsa.pub >> authorized_keys->添加ssh到信任列表
sudo /etc/init.d/ssh reload -->重启ssh(用restart代替reload也可以)
验证ssh是否成功: ssh localhost --->直接登录,无需输密码,则成功
6.配置hadoop
cd /usr/local/hadoop/conf->进入hadoop配置文件夹中
sudo gedit hadoop-env.sh ->配置该文件
# The java implementation to use. Required.
export JAVA_HOME=/usr/local/java/jdk1.6.0_30
sudo gedit core-site.xml ->配置该文件
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
</configuration>
sudo gedit hdfs-site.xml->配置该文件
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> #设置备份数量,默认为3
</property>
<property>
<name>dfs.permissions</name>
<value>false</value> #这个permissions预先设置好,已避免连接时可能碰到的权限问题
</property>
</configuration>
sudo gedit mapred-site.xml-> 配置该文件
<configuration><property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
</configuration>
7.启动hadoop,运行自带的wordcount
su hadoop -> 登录hadoop用户
cd /usr/local/hadoop ->进入hadoop文件夹下
source /etc/profile ->使配置生效
bin/hadoop namenode -format -> 格式化namenode
bin/start-all.sh ->启动hadoop
sudo gedit /tmp/test.txt ->新建准备需要运行wordcount的文件
bin/hadoop dfs -copyFromLocal /tmp/test.txt firstTest->将上一步中的测试文件上传到dfs文件系统中的firstTest目录中
bin/hadoop jar hadoop-examples-0.20.203.jar wordcount firstTest result->执行wordcount
bin/hadoop dfs -cat result/part-r-00000->查看结果
(若hadoop启动不了,可以用命令行删除tmp文件:sudo rm -r /home/hadoop/tmp,然后重新格式化namenode,重新启动)
hadoop上常用命令:
bin/hadoop dfs -ls ->查看当前用户路径下的文件
bin/hadoop dfs -rmr xxx ->删除目录
kill -9 xxx --->杀死进程
eclipse配置过程在配置集群时有详细解答:http://blog.csdn.net/god793614256/article/details/9378867