hadoop安装及单词统计实验报告
- 格式:docx
- 大小:1.97 MB
- 文档页数:14
基于hadoop的单词统计的简单实验
1.1安装及其说明
总共有4台机器:namenode 、datanode1、datanode2 、datanode3
IP地址分别设置为:10.102.1.67、10.102.1.68、10.102.1.69、10.102.1.70
操作系统为:Centos6.2
Jdk版本为:jdk-7u45-linux-i586
Hadoop版本为:hadoop-0.20.2
10.102.1.69作为Namenode、JobTracker,其他三台作为Datenode、TaskTracker
1.2 用机器名Ping通机器
用root登录,修改NameNode和DataNode上的/etc/hosts文件,加入四台机器的IP地址和机器名,如下:
10.102.1.69 namenode
10.102.1.67 datenode1
10.102.1.68 datenode2
10.102.1.70 datenode3
设置好后验证下各机器间是否ping通,用机器名或是IP地址都可以,例如ping datanode1或ping 10.102.1.67
1.3 新建hadoop用户
我没有新建hadoop,而是直接用的root用户
1.4 ssh设置及关闭防火墙
1)centos装好后默认启动sshd服务,如果不确定的话可以查一下[root@namenode ~]# service sshd status
如没有启动的话,先启动[root@ namenode ~]# service sshd start
建立ssh无密码登录,在NameNode上[root@ namenode ~]$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
会在~/.ssh/生成两个文件:id_dsa和id_dsa.pub,这两是成对出现的,把id_dsa.pub文件追加到DataNode上的authorized_keys
[root@ namenode ~]$ scp id_dsa.pub datanode1:/home/hadoop/(注意其中目标机器后面的:与要传到的文件路径之间没有空格,即datanode1:与/home/hadoop/之间没有空格)
scp id_dsa.pub datanode2:/home/hadoop/
scp id_dsa.pub datanode3:/home/hadoop/
登录到DataNode上,[root@ datenode1 ~]$ cat id_dsa.pub >> ~/.ssh/authorized_keys ,其余两台一样,NameNode上也要追加。注意:追加完后必须修改NameNode和DataNode上的.ssh和authorized_keys的权限,chmod命令,参数755,完成后测试下,例如ssh datenode1时不需要密码就可以登录,就可以知道ssh设置成功。
2)关闭防火墙(NameNode和DataNode都必须关闭)
[root@namenode ~]# service iptables stop
注意:每次重新开机启动hadoop前都必须关闭
1.5 安装jdk1.6(几台机子都一样)
在官网下载jdk-6u19-linux-i586.bin,之后直接安装[root@namenode java]#chmod +x jdk-6u19-linux-i586.bin [root@ namenode java]# ./jdk-6u19-linux-i586.bin,我的安装路径为:/usr/java/jdk1.6.0_19,安装后添加如下语句到/etc/profile中:
export JA V A_HOME=/usr/java/jdk1.6.0_19
export JRE_HOME=/usr/java/jdk1.6.0_19/jre
export
CLASSPATH=.:$JA V A_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JA V A_HOME/bin:$JRE_HOME/bin:$PATH
1.6 安装hadoop
在官网//hadoop/core/下载hadoop-0.20.2.tar.gz [hadoop@sc706-26 ~]$ tar xzvf hadoop-0.20.2.tar.gz
将hadoop的安装路径添加到/etc/profile中:
export HADOOP_HOME=/home/hadoop/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH
为了让/etc/profile生效,source一下[root@namenode ~]$ source /etc/profile
1.7 配置hadoop
其配置文件在/conf目录下
1)配置JA V A环境
[root@namenode ~]$vim /home/hadoop/hadoop-0.20.2/conf/hadoop-env.sh
export JA V A_HOME=/usr/java/jdk1.6.0_19 //java版本可能会不一样,但是版本必须高于1.6
2)配置conf/core-site.xml、conf/hdfs-site.xml、conf/mapred-site.xml文件
3)将NameNode上完整的hadoop拷贝到DataNode上,可先将其进行压缩后直接scp过去或是用盘拷贝过去
4)配置NameNode上的conf/masters和conf/slaves
masters:10.102.1.69
slaves: 10.102.1.67
10.102.1.68
10.102.1.70
1.8 运行hadoop
1)格式化文件系统
[************************.2]$hadoopnamenode-format
注意:格式化时要防止NameNode的namespace ID与DataNode的namespace ID的不一致,因为每格式化一次会产生Name、Data、tmp 等临时文件记录信息,多次格式化会产生很多,会导致ID的不同,造成hadoop不能运行
2)启动hadoop
[************************.2]$bin/start-all.sh