Hadoop安装步骤
1.采用3台机器进行测试,这3台机器的IP分别为:
【1】192.168.1.137
【2】192.168.30.251
【3】192.168.30.46
其中192.168.1.137作为namenode,192.168.30.251与192.168.30.46作为datanode。
2.为这3台机器都添加用户:
【1】useradd hadoop
【2】passwd hadoop 输入密码hadoop
3.在每台机器上都执行以下3条语句:
【1】su - hadoop
【2】mkdir .ssh
【3】chmod 755 .ssh
4.在192.168.1.137上面执行:
【1】ssh-keygen -t rsa 接下来的3个选项都直接回车!
【2】cp /home/hadoop/.ssh/id_rsa.pub /home/hadoop/.ssh/authorized_keys
【3】scp authorized_keys hadoop@192.168.30.251:/home/hadoop/.ssh/
scp authorized_keys hadoop@192.168.30.46:/home/hadoop/.ssh/
5.在每台机器上都执行以下2条语句:
【1】cd /home/hadoop/.ssh
【2】chmod 644 authorized_keys
6.在192.168.1.137上测试:
【1】ssh 192.168.30.251
【2】ssh 192.168.1.137
【3】ssh 192.168.30.46
如果以上3种ssh都不需要输入密码就说明配置成功。
7.在每台机器上用root用户安装JDK:
【1】chmod +x jdk-6u16-linux-i586.bin
【2】./jdk-6u16-linux-i586.bin
注意:jdk的默认安装目录是/root/jdk1.6.0_16,但/root目录下的文件hadoop无法访问,因此必须将文件拷贝到/usr下:
【3】mv /root/jdk1.6.0_16 /usr/
【4】ln -s jdk1.6.0_16 java
【5】设置环境变量
vi /etc/profile,添加如下内容:【写在前一个export指令后面】
JAVA_HOME=/usr/java
CLASSPATH=.:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
【6】让环境变量生效:source /etc/profile
8.用hadoop用户登录192.168.1.137,并创建目录:mkdir HadoopInstall
这样就会新建一个目录/home/hadoop/HadoopInstall。
在/home/hadoop/HadoopInstall下解压缩hadoop-0.20.0.tar.gz:
【tar zxvf hadoop-0.20.0.tar.gz】
9.设置环境变量:
vi /home/hadoop/HadoopInstall/hadoop-0.20.0/conf/hadoop-env.sh
添加内容:
export JAVA_HOME=/usr/java
export HADOOP_HOME=/home/hadoop/HadoopInstall/hadoop-0.20.0
10.添加datanode:
vi /home/hadoop/HadoopInstall/hadoop-0.20.0/conf/slaves
内容如下:
192.168.1.137
192.168.30.251
192.168.30.46
11.添加namenode:
vi /home/hadoop/HadoopInstall/hadoop-0.20.0/conf/masters
添加内容:192.168.1.137
12.修改/home/hadoop/HadoopInstall/hadoop-0.20.0/conf下的文件:
【1】vi core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
【2】vi hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
【3】vi mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
8、9、10、11、12都是在192.168.1.137做的。
13.将namenode上的文件发送到其他datanode中:
【1】scp -r /home/hadoop/HadoopInstall hadoop@192.168.30.251:/home/hadoop/
【2】scp -r /home/hadoop/HadoopInstall hadoop@192.168.30.46:/home/hadoop/
14.用hadoop用户登录192.168.1.137来进行namenode的初始化:
【1】cd /home/hadoop/HadoopInstall/hadoop-0.20.0/bin
【2】./hadoop namenode -format
执行这一步时需要在第9步正确配置JAVA_HOME。
15.在/home/hadoop/HadoopInstall/hadoop-0.20.0/bin下有很多脚本:
* start-all.sh 启动所有的Hadoop守护,包括namenode, datanode,jobtracker,tasktrack,secondarynamenode。
* stop-all.sh 停止所有的Hadoop。
* start-mapred.sh 启动Map/Reduce守护,包括Jobtracker和Tasktrack。
* stop-mapred.sh 停止Map/Reduce守护
* start-dfs.sh 启动Hadoop DFS守护,Namenode和Datanode。
* stop-dfs.sh 停止DFS守护
本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/xxffnn2002/archive/2009/09/02/4513290.aspx