zoukankan      html  css  js  c++  java
  • hadoop1.2.1安装配置

    原文地址

    环境:ubuntu13

    使用的用户为普通用户。如:用户ru

    jdk安装略

    1、安装ssh

    (1)

    Java代码  收藏代码
    1. sudo apt-get install openssh-server  

     (2)配置ssh面密码登录

    Xml代码  收藏代码
    1. $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa   
    2. $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  

    注释:如果当前用户下没有.ssh目录,则手动创建.ssh目录。

     2、下载安装hadoop

    (1)下载hadoop-1.2.1-bin.tar.gz

    (2)修改权限

    如果拥有者不是ru:ru,使用

    Xml代码  收藏代码
    1. chown ru:ru hadoop-1.2.1-bin.tar.gz  

    (3)解压

    ru用户下

    Java代码  收藏代码
    1. tar -zxvf hadoop-1.2.1-bin.tar.gz  

     (4)将解压后的hadoop拷贝到安装目录

    3、配置hadoop

    配置文件在$HADOOP_HOME/conf下

     (1)配置hadoop-env.sh,指定jdk的安装路径

    Xml代码  收藏代码
    1. 添加jdk路径  
    2. # The java implementation to use.  Required.  
    3.  export JAVA_HOME=/home/ruge/soft/jdk1.7.0_45  

     (2)修改hadoop的核心配置文件core-site.xml,配置namenode的地址和端口

    Xml代码  收藏代码
    1. <configuration>  
    2.      <property>  
    3.          <name>fs.default.name</name>  
    4.          <value>hdfs://localhost:9000</value>  
    5.      </property>  
    6. </configuration>  

     

    Java代码  收藏代码
    1. 这个还是很必要的,如果不配置临时目录,格式化hdfs是会在/tem目录下创建临时目录但是tmp目录重启系统会清楚下面文件。这样namenode就启动不起来了  
    2.  <property>  
    3.          <name>hadoop.tmp.dir</name>  
    4.          <value>/home/ruge/hadoop/hadooptmpdir</value>  
    5.          <description>A base for other temporary directories.</description>  
    6.      </property>  

      

    (3)修改hadoop的hdfs-site.xml,配置replication,即数据保存份数

    Java代码  收藏代码
    1. <property>  
    2.          <name>dfs.replication</name>  
    3.          <value>1</value>  
    4. </property>  

     

     (4)修改hadoop的mapred-site.xml,配置jobtracker的地址和端口

     

    Java代码  收藏代码
    1. <property>  
    2.          <name>mapred.job.tracker</name>  
    3.          <value>localhost:9001</value>  
    4. </property>  

     注:涉及到IP的地方如果是完全分布式集群,需要改成具体的IP

    4、格式化hadoop的文件系统HDFS

     

    Java代码  收藏代码
    1. bin/hadoop namenode -format  

    5、启动hadoop

     

    Java代码  收藏代码
    1. bin/start-all.sh  

    6、验证hadoop是否启动成功

     

    7、使用wordcount计算单词数

    Java代码  收藏代码
    1. (1)新建hdfs目录,不是实际的系统文件目录,只能使用hadoop dfs -ls /XXX查看  
    2. hadoop dfs -mkdir /input  
    3.   
    4. (2)将文件复制到新建的hdfs目录  
    5. hadoop dfs -put ./*.sh /input/  
    6.   
    7. 3)使用hadoop的wordcount计算单词数  
    8. hadoop jar hadoop-examples-1.2.1.jar wordcount /input /output  
    9.   
    10. 注:input 和 output都是hdfs文件目录。不同的是input是需要分析的目录,outpu是存放结果的目录,且自动生成,不能手动创建  

     

     

    第二部分,安装hadoop集群:

    1,准备2个服务器,分别为

    机器名IP地址作用

    hadoop.main192.168.1.102NameNode,JobTracker,DataNode,TaskTracker

    hadoop.slave192.168.1.107DataNode,TaskTracker

     

    注:2台主机必须使用相同的用户名运行hadoop

     

    2,分别在这两个主机上,按照单机版的安装方法,安装hadoop

     

    3,在/etc/hostname中修改主机名

       在/etc/hosts中配置主机名和IP地址度对应关系

     

       分别在2台主机中,运行以下命令:

       ping hadoop.main

       ping hadoop.slave

       修改/etc/hosts添加master和slave的ip和主机名

     

    4,将hadoop.main节点中的~/.ssh/id_rsa.pub文件拷贝到hadoop.slave节点的~/.ssh目录下,然后在hadoop.slave的~/.ssh/目录下运行:

       cat ./id_rsa.pub >> authorized_keys

     

       在hadoop.main节点中运行命令: ssh hadoop.slave

     

    5, 修改2台主机的core-site.xml,配置HDFS的地址和端口号

       vi conf/core-site.xml

     

       <configuration>

       <property>

           <name>fs.default.name</name>

           <value>hdfs://hadoop.main:9000</value>   

       </property> 

       </configuration>

     

    6,修改2台主机的MapReduce的配置文件,配置的是JobTracker的地址和端口 

       vi conf/mapred-site.xml

     

       <configuration>

       <property>

           <name>mapred.job.tracker</name>

           <value>hadoop.main:9001</value>

       </property>

       </configuration>

     

    7,修改2台主机中的hadoop配置文件masters

       hadoop.main

     

    8,修改2台主机中的hadoop配置文件slaves

       hadoop.main

       hadoop.slave

     

    9,在haddop.main节点运行

       bin/hadoop namenode -format

     

    10,启动hadoop

       bin/start-all.sh

     

     

     

    ps: datanode time configuration

    <property>

     <name>heartbeat.recheck.interval</name>

     <value>15</value>

    </property>

  • 相关阅读:
    正则匹配 去掉 多余的js和html标签
    把url后面的.html去掉
    lnmp下配置虚拟主机
    lnmp 下安装yaf
    yaf运行错误:Class 'Yaf_Application' not found
    项目中表中每条数据的序号显示自增的方法
    tp中让头疼似懂非懂的create
    2015.1写留言板的时用的 知识点和函数 --->总结
    环境搭建
    ercharts api
  • 原文地址:https://www.cnblogs.com/yan456jie/p/5369356.html
Copyright © 2011-2022 走看看