详细版hadoop平台搭建常见问题总结(三)——hadoop的安装

三.关于安装hadoop时候的一些问题

  这个就有的说了,很多人安装过程中只是按照教程来安装,不知道其中的一些步骤是什么意思,甚至很多都是照搬,连主机名都没有改。安装hadoop大概分为这么几步:

1.解压hadoop安装包

2.配置conf文件夹的配置文件(这个仅在hadoop0.20.2版本下讨论,之后版本文件的安装目录有修改)

3.格式化HDFS

4.启动脚本

5.用jps指令和浏览器查看进程是否运行。

     这里出问题的一般是在第二步和第五步,第二步很多人没弄懂每个配置文件配置的东西,只是复制,很容易出错,第五步经常会少了几个进程。

   (1)配置文件的问题:这个问题比较多很多人没弄懂这些配置文件具体是干嘛的,内容比较多就不在这里详细叙述,我们会另外弄一篇博客来介绍。

   (2)安装hadoop的时候先是解压安装包,这里我们以hadoop0.20.2.tar.gz版本为例,解压之后会出现一个hadoop0.20.2的文件夹,我们为了方便以后终端打开,把这个文件夹改名下,就改成hadoop,指令是 sudo mv hadoop0.20.2 hadoop 

   (3)很多人在后面的安装和运行中都会出现权限问题,就像运行脚本start-all.sh的时候总会出现权限不够的问题,必须要切换到root用户才能运行,这里我们可以用这个指令

 sudo chown -R 用户名:用户组名 文件夹名 

这个指令的意思是把一个文件夹的所有者换成指定的用户,这样我们就可以用当前用户来对hadoop文件夹进行操作了。

   (4)之后就是进入conf文件夹来配置hadoop的配置文件了,这里问题比较多,我们另出一篇博客来叙述。

   (5)配置完配置文件之后就可以启动进程看看hadoop环境搭建好了没有了。首先就是要先格式化,这个格式化的问题也让我们团队出了许多问题:

       1.格式化的指令是  bin/hadoop namenode -format  这个指令是bin目录下hadoop脚本中设置的。

       2.格式化是格式hdfs,所以最重要的是格式conf/hdfs-site.xml 配置文件中的

 <name>dfs.name.dir</name>  

<name>dfs.data.dir</name>  

这两个配置文件中设置的文件夹,每格式化一次,都会生成一个namenodeID,存 <name>dfs.data.dir</name> 中设置的文件夹中的current文件夹中的VERSION文件中。

       3.有时候刚开机的时候格式化不成功,是因为那时候HDFS有个安全时间,这个是hdfs的安全机制决定的,这段时间是hdfs来验证备份blocks是否达到阀值的时间,只有过了这个时间才能进行格式化。

     (6)格式化之后就是启动进程了,直接进入bin目录,输入指令./start-all.sh启动脚本就行,之后用jps指令,一般会出现5或6个进程

 

 

这时候一般会出现这么几个问题

       1.输入jps指令的时候显示指令无效,这是因为jps指令不是linux下的指令,是jdk目录中的bin目录下的指令,用来查看java进程,无效的话可以去看看此目录下有没有jps指令脚本,没有的话就代表你当前安装的jdk没有这个指令,有时候有jdk指令但是依旧无效,这时候你可以编辑 /etc/profile文件,将jdk的bin目录加到PATH这个环境变量里,再source /etc/profile以后就能直接执行jps了。

       2.Namenode进程没启动,一般是因为你没有格式化,这时候一般再格式化一遍就可以了。

       3.Datenode没有启动,这第一可能是因为多次格式化的问题,这是因为每次格式化的时候会重新创建一个NamenodeID,而/tmp/dfs/data下包含了上次格式化的NamenodeID,hadoop namenode –format会清空namenode下的数据,但是不能同时清空datanode的数据,所以格式化前,先将所有的tmp清空。第二可能是没有网络的原因导致datanode没有连接上。

猜你喜欢

转载自linhaoxiang.iteye.com/blog/2056412