fedora20安装hadoop-2.5.1

(博客园-番茄酱原创)

首先感谢作者lxdhdgss,他的博文直接帮助了我如何安装hadoop,下面是他的博文修改版,用于安装在fedora20上面的,jdk1.8版本。

到hadoop官网去copy一下链接地址(hadoop2.5.1的地址http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.5.1/hadoop-2.5.1.tar.gz),在终端wget url(下载链接地址),会直接下载到当前目录下。然后解压,tar xvf apache-hadoop-2.5.1.tar.gz,解压下载的tar.gz。会看到一个名为hadoop-2.5.1的文件夹,把它拷贝到自己平时安装软件的地方,比如我是/opt/lib64/下面,命令是mv hadoop-2.5.1 /opt/lib64/。

 注意:下面修改的时候,大家不会用vi,就用gedit来代替吧,可视化操作,简洁明了。如vi xxx可以换成gedit xxx

 

下面就需要对Hadoop进行设置了。

 

首先vi /etc/profile,增加

 

bash代码 


1     #设置jdk的安装路径
2     export JAVA_HOME=/opt/lib64/jdk1.8.0_20
3     #指定CLASSPATH和PATH
4     export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
5     export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
6     #设置的hadoop的环境变量
7     export HADOOP_HOME=/opt/lib64/hadoop-2.5.1
8     export PATH=$HADOOP_HOME/bin:$PATH
9     export CLASSPATH=$HADOOP_HOME/lib:$CLASSPATH

保存退出(按下ESC,然后再按下这三个:wq)

 

哦,别忘了在终端执行命令下source /etc/profile,让修改过的profile马上生效。

 

然后进入hadoop下面的etc/hadoop/(不是系统的etc,是hadoop下面的etc,这是一个配置文件夹),用ls命令,可以看到有很多配置文件。

先vi hadoop-env.sh
bash代码

export JAVA_HOME=/opt/lib64/jdk1.8.0_20

 
vi yarn-env.sh

bash代码

export JAVA_HOME=/opt/lib64/jdk1.8.0_20

 

 vi 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/xxx/tmp </value>
</property>
 </configuration> 

 


保存退出(按下ESC,然后再按下这三个:wq)


vi hdfs-site.xml

 Xml代码 

 
 1 <configuration>  
 2     <property>  
 3         <name>dfs.namenode.name.dir</name>  
 4         <value>file:/home/hadoop/dfs/name</value>  
 5     </property>  
 6     <property>  
 7         <name>dfs.namenode.data.dir</name>  
 8         <value>file:/home/hadoop/dfs/data</value>  
 9     </property>  
10     <property>  
11         <name>dfs.replication</name>  
12         <value>1</value>  
13     </property>  
14 </configuration>

保存退出(按下ESC,然后再按下这三个:wq)

 

----------------------------按照hadoop官网上面的配置-----------------------

vi mapred-site.xml

Xml代码 

<configuration>
     <property>
          <name>mapreduce.jobtracker.address</name>
          <value>localhost:9001</value>
     </property>
     <property>
         <name>mapreduce.framework.name</name>
         <value>yarn</value>
     </property>
</configuration>

 

 

保存退出(按下ESC,然后再按下这三个:wq)

 

vi yarn-site.xml:

Xml代码 

1 <configuration>
2     <property>
3         <name>yarn.nodemanager.aux-services</name>
4         <value>mapreduce_shuffle</value>
5     </property>
6 </configuration>

保存退出(按下ESC,然后再按下这三个:wq)

 -------------------------------------------------------------------------------

 

-------------------------补充---------------ssh免登陆设置

还有就是:由于原文没有设置如何面验证登陆ssh,这边给与补充。

由于fedora已经默认安装了openssh,所以不用再此安装ssh了。直接直接配置以下就可以了

 配置 SSH 免密码登陆 ,下面是bash命令,直接在终端输入(最好是root身份,如何root?只要终端输入su,然后root的密码就可以登陆root账户了)

  1. ssh-keygen -t rsa -P ‘’ -f ~/.ssh/id_rsa    
  2. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys   
  3. chmod 600 ~/.ssh/authorized_keys    
  4. sudo service sshd restart

就可以了。到此就大功告成了

-----------------------------------------------------------------------------

好了,现在可以启动看看了

先格式化,这个很重要。

 

bash命令 
  1. hadoop namenode -format  

 这句话基本上就是把目前你的hadoop系统确定一下结构,我们的hadoop系统中,一般是一个namenode+多个datanode。

 

namenode相当于顾客房间表,datanode相当于具体的房间。

 

然后启动hadoop吧。

到hadoop的根目录,

bash命令 
  1. sbin/start-dfs.sh  

 然后再启动yarn,因为2.5.0的版本,早就已经是以yarn这种更好的架构来运行了。

终端显示 
Starting namenodes on [localhost]
root@localhost's password:
localhost: starting namenode, logging to /opt/lib64/hadoop-2.5.1/logs/hadoop-root-namenode-localhost.localdomain.out
root@localhost's password:
localhost: starting datanode, logging to /opt/lib64/hadoop-2.5.1/logs/hadoop-root-datanode-localhost.localdomain.out
Starting secondary namenodes [0.0.0.0]
root@0.0.0.0's password:
0.0.0.0: starting secondarynamenode, logging to /opt/lib64/hadoop-2.5.1/logs/hadoop-root-secondarynamenode-localhost.localdomain.out

 

 

终端显示 
  1. sbin/start-yarn.sh  

 然后查看一下开启的进程

 

 

bash命令 
  1. jps
终端显示 
[root@localhost hadoop-2.5.1]# jps
30305 DataNode
26243 org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar
26645 org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
30583 SecondaryNameNode
8216 ResourceManager
30092 NameNode
30831 Jps
8511 NodeManager

 说明hadoop已经启动成功。

 打开hdfs管理页面,查看hdfs系统:

    在浏览器打开http://localhost:50070,可看到hadoop的管理界面,导航栏的最后一项还可以查看hadoop里面的文件。

 

我们来试着传个文件,到/home下面,新建一个文件,vim test.txt,随便写些东西。保存。

然后把这个文件上传。

打开job管理页面,查看job的运行情况:

    由于这个是hadoop2.5.1版本,貌似以前的http://localhost:50030换成了现在的http://localhost:8088,所以需要查看jod的运行情况,需要在浏览器打开localhost:8088

现在的ResourceManager和NodeManager代替了原来的JobTracker和TaskTracker

 

bash命令 
  1. hadoop fs -put test.txt /test.first  (表示将本地的text放置在dfs根目录下,并且名为test.first可以随意命名)

 在浏览器的后台刷新看看有没有test.first(打开http://localhost:50070,选择utilties在点击browse the file system)。

 

你也可以先给hadoop建立目录

 

bash命令 
  1. hadoop fs -mkdir /xxx 

 上面的上传文件也可以变成这样:

 

bash命令 
  1. hadoop fs -put test.txt /xxx/test.txt  

 其他的操作,大家自己去试吧。

特别感谢lxdhdgss,他的博文地址是:http://www.iteye.com/topic/1135085

(官网有英文版的配置说明,大家可以参照http://hadoop.apache.org/docs/r2.5.1/hadoop-project-dist/hadoop-common/SingleCluster.html#Configuration)

 

posted @ 2014-09-15 21:30  番茄酱  阅读(2094)  评论(1编辑  收藏  举报