设为首页 收藏本站
查看: 1104|回复: 0

Virtualbox安装Ubuntu13.04并搭建Hadoop环境(单机模式+伪分布模式)

[复制链接]

尚未签到

发表于 2015-11-11 15:00:30 | 显示全部楼层 |阅读模式


一、virtualbox安装Ubuntu
  这个网上教程太多了,略去

二、搭建Hadoop环境

2.1  安装jdk
  第一步:
  oracle官网上下载jdk-7u21-linux-i586.tar.gz
  


  第二步:
  将jdk-7u21-linux-i586.tar.gz拷贝到/usr/lib/jvm/目录下面,这里如果没有jvm文件夹,则创建该文件夹,命令:
  
  sudo mkdir /usr/lib/jvm  //创建文件夹jvm
  
  sudo cp –r /home/damao/jdk-7u21-linux-i586.tar.gz/usr/lib/jvm          //把下载的文件拷贝到新创建的目录下面
  
  sudo tar -zxvg jdk-7u21-linux-i586.tar.gz    //解压缩文件
  
  第三步:
  设置环境变量,用gedit打开/etc/profile文件
  
  sudo gedit /etc/profile
  
  在最后面添加:
  PATH=$PATH:$HOME/bin
  export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_21
  export PATH=$PATH:$JAVA_HOME/bin:
  export CLASSPATH=$JAVA_HOME/lib:.
  
  保存退出,输入以下命令使之立即生效。
  source ~/.bashrc
  
  第四步:
  配置默认JDK 版本
  由于ubuntu 中可能会有默认的JDK,如 openjdk,所以,为了将我们安装的 JDK 设置为默认 JDK 版本,还要进行如下工作。
  
  执行代码:
  sudo update-alternatives --install /usr/bin/java java/usr/lib/jvm/jdk1.7.0_21/bin/java 300
  sudo update-alternatives --install /usr/bin/javac javac/usr/lib/jvm/jdk1.7.0_21/bin/javac 300
  
  执行代码:
  sudo update-alternatives --config java
  系统会列出各种JDK 版本,如下所示:(也有可能不出现)
  
  有3 个候选项可用于替换 java (提供/usr/bin/java)。
  ------------------------------------------------------------
  * 0 /usr/lib/jvm/java-6-openjdk/jre/bin /java 1061 自动模 式
  1 /usr/lib/jvm/java-7-sun/jre/bin /java 63  手动模式
  2 /usr /lib/jvm/ jdk1.7.0_21/bin /java 300  手动模式
  
  要维持当前值
  • 请按回车键,或者键入选择的编号:2
      update- alternatives:使用 /usr/lib/jvm/ jdk1.7.0_21/bin/java 来提供/usr/bin/java (java),于 手动模式 中。
      
      第五步:测试
      $ java -version
      java version"1.7.0_21"
      Java(TM) SERuntime Environment (build 1.7.0_21-b11)
      Java HotSpot(TM)Server VM (build 21.0-b11, mixed mode)
      

    2.2 配置 SSH
      第一步:先添加hadoop用户到系统用户
      $ sudo addgroup hadoop
      $ sudo adduser --ingroup hadoop hadoop
      
      现在只是添加了一个用户hadoop,它并不具备管理员权限,我们给hadoop用户添加权限,打开/etc/sudoers文件
      $ sudo gedit /etc/sudoers
      root  ALL=(ALL:ALL)  ALL下添加hadoop  ALL=(ALL:ALL) ALL
      
      第二步:安装ssh
      1)   由于Hadoop用ssh通信,先安装ssh.注意,我先从damao用户转到了hadoop.
      $ su hadoop
      密码:
      然后运行
      sudo apt-get install openssh-server
      
      2) 假设ssh安装完成,先启动服务。启动后,可以通过命令查看服务是否正确启动:
      
      $ sudo /etc/init.d/ssh start
      $ ps -e |grep ssh
      3) 作为一个安全通信协议(ssh生成密钥有rsa和dsa两种生成方式,默认情况下采用rsa方式),使用时需要密码,因此我们要设置成免密码登录,生成私钥和公钥:
      $ ssh-keygen -t rsa -P ""
      $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
      
      现在可以登入ssh确认以后登录时不用输入密码:
      
      $ ssh localhost
      
      1.  Welcome to Ubuntu 13.04 LTS (GNU/Linux 3.2.0-27-generic-pae i686)
      3.   * Documentation:  https://help.ubuntu.com/  
      5.  512 packages can be updated.  
      6.  151 updates are security updates.
      8.  Last login: Mon Mar 11 15:56:15 2014from localhost
      
      登出:$exit

    2.3 安装Hadoop
      第一步:
      $ sudo tar xzf hadoop-1.1.2.tar.gz (注意,我已将hadoop-1.1.2.tar.gz拷贝到usr/local/hadoop,然后转到hadoop用户上)
      
      $ sudo mv hadoop-1.1.2/usr/local/hadoop
      
      要确保所有的操作都是在用户hadoop下完成的,所以将该hadoop文件夹的属主用户设为hadoop
      
      $ sudo chown -R hadoop:hadoop hadoop
      
      第二步:
      配置hadoop-env.sh(Java安装路径)
      
      1、先在/usr/local下创建hadoop目录
      $ mkdir/usr/local/hadoop
      
      2、将下载好的hadoop压缩包移到刚刚创建的目录下
      $ sudocp /home/damao/hadoop-1.2.1.tar.gz /usr/local/hadoop
      
      3、解压
      $ cd/usr/local/hadoop
      $ sudotar -zxfhadoop-1.2.1.tar.gz
      默认情况下,会解压至hadoop\hadoop-1.2.1目录
      
      4、首先是配置 /usr/local/hadoop/hadoop-1.2.1/conf/hadoop-env.sh
      
      $ cdhadoop-1.2.1
      $ sudo gedit conf/hadoop-env.sh
      
      找到#exportJAVA_HOME这一行,去掉注释,变设置成正确的路径,即:
      # Thejava implementation to use. Required.
      exportJAVA_HOME=/usr/lib/jvm/jdk1.7.0_21
      
      5、验证hadoop是否正常运行
      $ bin/hadoopversion
      正常情况下,会显示hadoop的版本号之类
      至此hadoop的单机模式已经安装成功
      
      6、运行wordcount 示例程序
      $ mkdirinput (先创建input目录)






      $ cpconf/* input (将conf下的所有文件,复制到input目录下)






      $ bin/hadoopjar hadoop-examples-1.2.1.jar wordcount input output (运行wordcount程序,并将结果写入output目录下)

    注:文件夹里必须有hadoop-examples-1.2.1.jar

      $ catoutput/* (查看输出结果)
      

    第三步:伪分布模式的一些配置
      
      这里需要设定3个文件:core-site.xml  hdfs-site.xml  mapred-site.xml,都在/usr/local/hadoop/hadoop-1.2.1/conf目录下



    core-site.xml:Hadoop Core的配置项,例如HDFS和MapReduce常用的I/O设置等。



    hdfs-site.xml:Hadoop 守护进程的配置项,包括namenode,辅助namenode和datanode等。



    mapred-site.xml:MapReduce 守护进程的配置项,包括jobtracker和tasktracker。


    1配置 conf/core-site.xml
      $ sudogedit conf/core-site.xml
       <configuration>
    </configuration>
    之间添加

      


    <property>  
    <name>fs.default.name</name>  
    <value>hdfs://localhost:9000</value>  
    </property>  
    <property>  
    <name>hadoop.tmp.dir</name>  
    <value>/usr/local/hadoop/hadoop_1.2.1/tmp</value>  
    </property>   



      解释:上面的含义
      
      
      注意:由于第一次没有添加
      <property>  
               <name>hadoop.tmp.dir</name>  
               <value>/usr/local/hadoop/hadoop_1.2.1/tmp</value>  
      </property>  
      到后面出现了运行命令jps 没有Task Tracker
      

    2配置 conf/mapred-site.xml
      $ sudogedit  conf/mapred-site.xml


    <property>
    <name>mapred.job.tracker</name>  
    <value>localhost:9001</value>  
    </property>


    3配置 conf/hdfs-site.xml
      $ sudogedit  confhdfs-site.xml
      


    <property>  
    <name>dfs.replication</name>  
    <value>1</value>  
    </property>  
      



    4、运行hadoop

    首先是进行namenode的初始化工作:
      $bin/hadoop namenode -format
      

    之后是运行hadoop
      $bin/start-all.sh
      $ jps  
      注意只有下面的六个进程均运行才表示运行成功  
      4490 DataNode  
      4858 TaskTracker  
      4345 NameNode  
      4634 SecondaryNameNode  
      4923 Jps  
      4716 JobTracker
      
      安装时注意事项:
      1、确保后面Hadoop在Hadoop用户下进行配置
      2、配置core-site.xml时
      如果没有添加
      <property>  
               <name>hadoop.tmp.dir</name>  
               <value>/usr/local/hadoop/hadoop_1.2.1/tmp</value>  
      </property>  
      到后面运行命令jps 没有Task Tracker
      3、配置core-site.xml、hdfs-site.xml和mapred-site.xml时仔细一些
      由于粗细配置mapred-site.xml时忘了加<property> </property>,导致运行jps后没有Job
    Tracker

      4、若运行命令jps没有namenode,则重新&#26684;式化namenode试试
      bin/hadoop namenode –format
      5、若运行jps报:程序 'jps' 已包含在下列软件包中:
      * openjdk-6-jdk
      * openjdk-7-jdk
      请尝试:sudo apt-get install <选定的软件包>
      则先尝试用:sudo apt-get install openjdk-7-jdk安装
      然后再重新执行一遍安装jdk这一步骤
      


      


    参考文章:

    http://blog.iyunv.com/zhaoyl03/article/details/8657104

    http://www.cnblogs.com/yjmyzz/p/ubuntu-13_04-hadoop-1_2_1-standalone-setup.html

    http://blog.iyunv.com/michael_kong_nju/article/details/23294795

      




    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-138000-1-1.html 上篇帖子: Hadoop 之 Secondary Sort介绍 下篇帖子: Hadoop集群服务器以及相关硬件选择的一些认识
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表