根据网上的文章搭建了Hadoop 2.2.0的环境,具体内容如下,备用后续自己做参考。
环境介绍:
我使用的是两台笔记本,都使用VMware安装了Fedora 10的系统。
虚拟机1: IP 192.168.1.105 hostname: cloud001 用户:root
虚拟机2: IP 192.168.1.106 hostname: cloud002 用户: root
准备工作:
1、配置/etc/hosts文件,增加如下两行
192.168.1.105 cloud001
192.168.1.106 cloud002
2、service iptables stop 关闭iptables服务
3、安装jdk jdk-6u45-linux-i586.bin,在/opt下运行解压
配置/etc/profile,增加
export JAVA_HOME=/opt/jdk1.6.0_45
export CLASSPATH=.:$JAVA_HOME/lib.tools.jar
export PATH=$JAVA_HOME/bin:$PATH
而后运行 source /etc/profile
可以使用env命令查看环境变量是否设置成功
4、配置SSH免密码登陆,这个比较重要
1)两台机器上运行ssh-keygen -t rsa 生成一对秘钥:私钥(id_rsa)和公钥(id_rsa.pub);
2)将192.168.1.105机器上的公钥复制到192.168.1.106机器上的相应/root/.ssh/目录下
scp ./id_rsa.pub root@192.168.1.106:/root/.ssh/authorized_keys
3)将192.168.1.106机器上的公钥复制到192.168.1.105机器上的相应/root/.ssh/目录下
scp ./id_rsa.pub root@192.168.1.105:/root/.ssh/authorized_keys
4)两台机器都进入到/root/.ssh目录下,都运行cat id_rsa.pub >> authorized_keys
5)配置好后,两台机子上ssh cloud001和ssh cloud002都应该是免密码登陆的
配置hadoop 2.2.0
1、下载hadoop-2.2.0.tar.gz,我这里使用的是32位的,解压到两个机器的/opt目录下;
2、进入/opt/hadoop-2.2.0/etc/hadoop目录,修改hadoop-env.sh
export JAVA_HOME=/opt/jdk1.6.0_45
3、192.168.1.105上修改yarn-env.sh
export JAVA_HOME=/opt/jdk1.6.0_45
4、192.168.1.105上修改core-site.xml,注意XML文件头都有<?xml version="1.0"?>,且XML中配置的目录都应该是真实存在的,如果不存在就自行先创建好。
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://cloud001:9000</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-2.2.0/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>hadoop.proxyuser.hduser.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hduser.groups</name>
<value>*</value>
</property>
</configuration>
5、192.168.1.105上修改mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>cloud001:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>cloud001:19888</value>
</property>
</configuration>
6、192.168.1.105上修改hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>cloud001:9001</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.2.0/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-2.2.0/tmp/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
7、192.168.1.105上修改yarn-site.xml文件