hadoop安装

环境说明:

系统都为CentOS 6.0

192.168.255.128 server01
192.168.255.130 server02
192.168.255.131 server03

1. server01设置hosts文件

  1. vi /etc/hosts  
  2. # 添加以下主机和IP的对应关系  
  3. # hadoop  
  4. 192.168.255.128 server01  
  5. 192.168.255.130 server02  
  6. 192.168.255.131 server03 

2. server01安装java

  1. yum groupinstall "Additional Development"  
  2. # 或者  
  3. yum install java-1.6.0-openjdk-devel 

在"Additional Development"组总包含了openjdk的环境。

3. server01设置java环境

  1. vi /etc/profile.d/java.sh  
  2. # hadoop  
  3. export JAVA_HOME="/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64" 
  4. export PATH=$PATH:$JAVA_HOME/bin  
  5. export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 

4. server01验证JDK是否成功

  1. java -version  
  2. java version "1.6.0_22"  
  3. OpenJDK Runtime Environment (IcedTea6 1.10.4) (rhel-1.42.1.10.4.el6_2-x86_64)  
  4. OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode) 

5. server01添加hadoop用户,并设置密码

  1. useradd hadoop 
  2. passwd hadoop

6. 创建目录

  1. mkdir -p /data/hadoop/{tmp,hdfs/{name,data}}  
  2. chown -R hadoop:hadoop /data/hadoo 

目录的所有这为hadoop。

7. server01创建.ssh目录和密钥并添加环境变量

  1. su - hadoop  
  2. ssh-keygen -t rsa 

hadoop用户添加环境变量

  1. vi .bashrc  
  2. # hadoop  
  3. export HADOOP_HOME=/usr/local/hadoop  
  4. export PATH=$PATH:$HADOOP_HOME/bin 

8. 在server02和server03上重复此操作

可以使用Xshell的"to all sessions"的功能同时执行以上命令。

9. 配置server01密钥访问server01,server02和server03

a. 配置server01访问server01

  1. su - hadoop
  2. cd .ssh  
  3. # 复制server01公钥的内容  
  4. vi id_rsa.pub  
  5. ...  
  6. # 创建authorized_keys2  
  7. vi authorized_keys2  
  8. # 粘贴server01的id_rsa.pub文件的内容  
  9. chmod 0400 authorized_keys2 

登录测试

  1. whoami
  2. hadoop
  3. ssh hadoop@server01 

b. 配置server01访问server02

  1. su - hadoop  
  2. cd .ssh  
  3. vi authorized_keys2    
  4. # 粘贴server01的id_rsa.pub文件的内容    
  5. chmod 0400 authorized_keys2   

测试从server01访问server02

  1. whoami  
  2. hadoop  
  3. ssh hadoo@server02 

c. 配置server01访问server03

重复b步骤

10. server01下载hadoop包(注意,这些步骤只要在server01上执行,之后通过scp复制到server02和server03上即可)

  1. wget http://mirror.bjtu.edu.cn/apache/hadoop/common/hadoop-0.20.205.0/hadoop-0.20.205.0.tar.gz -P /usr/local/src   

解压,安装

  1. cd /usr/local/src  
  2. tar zxvf hadoop-0.20.205.0.tar.gz  
  3. mv hadoop-0.20.205.0 /usr/local/hadoop  
  4. chown -R hadoop:hadoop /usr/local/hadoop 

11. server01配置hadoop配置文件

  1. su - hadoop  
  2. whoami  
  3. # 确认是hadoop用户  
  4. hadoop 

a. 设置hadoop环境变量

  1. vi conf/hadoop-env.sh  
  2. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64 

配置文件分为core-site.xml,hdfs-site.xml和mapred-site.xml

b. 配置core-site.xml

  1. <configuration> 
  2.   <property> 
  3.     <name>fs.default.name</name> 
  4.     <value>hdfs://server01:9000</value> 
  5.   </property> 
  6.   <property> 
  7.     <name>hadoop.tmp.dir</name> 
  8.     <value>/data/hadoop/tmp</value> 
  9.   </property> 
  10. </configuration> 

c. 配置hdfs-site.xml

  1. vi conf/hdfs-site.xml  
  2. <configuration> 
  3.   <property> 
  4.     <name>dfs.replication</name> 
  5.     <value>3</value> 
  6.   </property> 
  7.   <property> 
  8.     <name>dfs.name.dir</name> 
  9.     <value>/data/hadoop/hdfs/name</value> 
  10.   </property> 
  11.   <property> 
  12.     <name>dfs.data.dir</name> 
  13.     <value>/data/hadoop/hdfs/data</value> 
  14.   </property> 
  15. </configuration> 

d. 设置mapred-site.xml

  1. vi conf/mapred-site.xml  
  2. <configuration> 
  3.   <property> 
  4.     <name>mapred.job.tracker</name> 
  5.     <value>server01:9001</value> 
  6.   </property> 
  7. </configuration> 

e. 设置master和slave文件

  1. vi conf/master  
  2. server01  
  3.  
  4. vi conf/slave  
  5. server02  
  6. server03 

注意以上步骤只要在server01上执行即可。

11. server02和server03安装hadoop包

  1. cd /usr/local/  
  2. tar czvf ~/hadoop.tar.gz hadoop/  
  3. # 复制包到server02和server03的主目录  
  4. scp ~/hadoop.tar.gz hadoop@server02:~/  
  5. scp ~/hadoop.tar.gz hadoop@server03:~/ 

解压安装

  1. ssh hadoop@server02(or server03)  
  2. tar zxvf hadoop.tar.gz  
  3. su -   
  4. mv /home/hadoop/hadoop /usr/local  
  5. chown -R hadoop:hadoop /usr/local/hadoop 

12. server02上在hadoop用户下启动hadoop

  1. start-all.sh 

会显示信息。

namenode初始化

  1. hadoop namenode -format 

重新启动hadoop

  1. stop-all.sh  
  2. start-all.sh 

13. 测试

  1. hadoop dfs -mkdir test  
  2. hadoop dfs -copyFromLocal $HADOOP_HOME/conf test 

14. Web访问

设置端口隧道

访问

http://localhost:50030

Hadoop Map/Reduce Administration

http://localhost:50070

http://localhost:50090

在浏览集群文件系统的时候报错,请在自己的windows的hosts文件添加

  1. 192.168.255.128 server01  
  2. 192.168.255.130 server02  
  3. 192.168.255.131 server03 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章