1.首先下载hadoop(版本1.2.1)
下载地址:
http://hadoop.apache.org/releases.html
2. 配置hadoop的配置文件
对于hadoop到三种运行模式都需要配置jdk路径,所以首先介绍这个到配置
进入conf文件夹下,在hadoop-env.sh文件中做修改,在第九行左右到位置中有#exportJAVA_HOME=*******这样到字样,首先将#(这里#为注释到作用)去掉,修改JAVA_HOME的值为你机器中jdk到文件路径即可,这里到值和/etc/profile是相同的。
刚才我们配置的jdk路径:/home/hadoop/programfiles/jdk1.7.0_55
将该hadoop-env.sh文件中JAVA_HOME改为本机的java路径
双击打开hadoop-env.sh
修改后:
保存后退出
3.伪分布式需要配置以下文件
需要修改conf文件夹中到三个文件。分别是core-site.xml、mapred-site.xml、hdfs-site.xml三个文件,分别在三个文件中添加下面的内容即可。
具体修改内容如下:
conf/core-site.xml:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/logs</value>
</property>
</configuration>
conf/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
conf/mapred-site.xml:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
这样hadoop伪分布式就配置完成了
4. 为了使hadoop和java一样可以在任何地方使用,下面我们将hadoop配置成全局的
在终端中输入:hadoop@master:~$gedit .profile 回车
在文件的最后将hadoop的路径引入即可
在文件的最后添加下面的内容(其中红色字体为本机的hadopp路径):
exportPATH=/home/hadoop/hadoop/bin:$PATH
保存后退出即可.
5.在终端中输入:hadoop
这样hadoop就配置完成了
6.为了防止通信的时候出错,要关闭防火墙
打开终端:
输入:sudo ufw disable
7.由于haoop不同结点间到通信是用的ssh,所以我们还需要安装ssh
在控制台中输入命令:sudo apt-get install openssh-server 回车安装ssh
(另外:如果提示找不到源,更新ubuntu到软件中心即可
输入命令:sudoapt-get update )
这样就安装完成了ssh,下面需要设置免密钥登录ssh了。
输入下面两行代码即可:
1、生成密钥
ssh-keygen-t dsa -P '' -f ~/.ssh/id_dsa 回车:
然后输入命令:
cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 回车:
这样就可以面密码登录了:
测试:
输入命令:ssh localhost 回车
2.ssh免密码登录也设置好了,现在可以测试hadoop
运行wordcont.jar 测试
启动hadoop
每次启动hadoop时都要先格式化hdfs文件系统
为了防止出错,最好在每次启动前先删一下日志文件
打开/home/hadoop/hadoop/logs删除所有文件
下面开始格式化文件系统
输入命令:hadoopnamenode –format 回车
可以看到红的框内显示格式化成功。
下面启动hadoop守护进程:
输入命令: start-all.sh
然后输入命令:jps 查看开启的进程:
4626SecondaryNameNode
4724JobTracker
4309NameNode
4999Jps
4890TaskTracker
4459DataNode
如果看到这几个进程就说明启动成功了:
其中hadoop 的5个进程为:
4309NameNode
4626SecondaryNameNode
4724JobTracker
4459DataNode
4890TaskTracker
一般会产生六个进程,如果少于六个,检查一下前面是否有配置错误的步骤,确保成功后进行下一步。
3.到此hadoop伪分布式就完全配置成功了