首页 > 代码库 > Hadoop2.4.1完全分布式安装

Hadoop2.4.1完全分布式安装

在虚拟机利用两台centos(64位),由于使用的机器是64位,所以要自己编译好安装包
1、建Hadoop运行组和用户
root下运行命令,创建组和用户
groupadd hadoop
useradd -g hadoop hadoop
passwd hadoop
 
2、修改/etc/hosts
192.168.137.129 master#作为主节点
192.168.137.128 slave1#作为从节点
 
3、设置ssh免密码连接
hadoo用户下运行命令,生成公钥和私钥
ssh-keygen -t rsa #一路回车,生成的的公私钥在~/ssh目录下。id_rsa为私钥,id_rsa.pub为公钥
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #单机回环免密码连接
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
 
ssh localhost #测试
在master中,加入slave1的公钥,在slave1就可以免密码连接master
scp hadoop@slave1:~/.ssh/id_rsa.pub ~/slave1_rsa.pub
cat ~/slave1_rsa.pub >> ~/.ssh/authorized_keys
 
在slave1中,加入master的公钥,在slave1就可以免密码连接slave1
scp hadoop@master:~/.ssh/id_rsa.pub ~/master_rsa.pub
cat ~/master_rsa.pub >> ~/.ssh/authorized_keys
 
测试
在master
ssh slave1
在slave1
ssh master
 
4、安装hadoop
tar -zxf hadoop-2.4.1.tar.gz
 
6、进入/home/hadoop/hadoop-2.4.0/etc/hadoop目录中,编辑hadoop-env.sh文件,使用vim  hadoop-env.sh,修改内容如下:
     export JAVA_HOME=/usr/java/jdk1.6.0_31

7、编辑yarn-env.sh        vim  yarn-env.sh,修改内容如下:
     JAVA_HOME=/usr/java/jdk1.6.0_31

8、编辑core-site.xml,修改内容如下:
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.4.0/tmp</value>
</property>

9、编辑hdfs-site.xml,编辑内容如下:
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/hadoop-2.4.0/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/hadoop/hadoop-2.4.0/dfs/data</value>
</property>

10、编辑mapred-site.xml(需要复制mapred-site.xml.template,并命名为mapred-site.xml),编辑内容如下:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>

11、编辑yarn-site.xml文件,修改内容如下:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>

12、编辑slaves文件,修改内容如下:
slave1
slave2

13、复制hadoop2.4到另外两个节点,使用的命令是:
      scp -r ./hadoop-2.4.0 hadoop@slave:/home/hadoop

14、在master节点格式化hdfs文件
     ./bin/hdfs namenode -format
     

15、启动hadoop
  ./sbin/start-all.sh
      使用jps查看运行的进程