hadoop在windows下的配置与运行(运行环境和开发环境配置)

第一天我先在window环境里搭建的这个本人当时什么都不懂 就感受方便就在这里搞了 不过通过这个我也知道了什么是hadoop 环境了 受益不浅 。 java

在Windows下部署hadoop前,都须要安装cygwin软件,如何安装和配置cygwin node

1、cygwin的安装与配置 linux

  一、什么是cygwin
 cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了不少好东西,著名的还有eCos,不过现已被Redhat收购)。它对于学习unix/linux操做环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工做,尤为是使用gnu工具集在windows上进行嵌入式系统开发,很是有用。随着嵌入式系统开发在国内日渐流行,愈来愈多的开发者对cygwin产生了兴趣。 
二、cygwin的安装
  (1)下载安装程序,下载地址为: http://www.cygwin.com/setup.exe
   (2)选择必须安装的包,根据实践有以下包必须选择安 装,不然极可能cygwin安装失败!
   Net Category下的OpenSSL,OpenSSH;
   Base Category下的sed;
   Editors Category下的vim,Emacs;
   Devel Category下的subversion,binutils,gcc,gcc-mingw,gdb vim

(3)点击下一步。一直到完成
   说明:虽然cygwin提供在线安装,我的建议先  彻底下载到本地,再进行安装,由于在线安装会出现许多莫名奇妙的问题。 windows

二、cygwin的配置
 (1)配置环境变量
 CLASSPATH= .;C:\Java\jdk1.6.0_11\lib\dt.jar;C:\Java\jdk1.6.0_11\lib\tools.jar
  CYGWIN=ntsec;
JAVA_HOME=C:\Java\JDK1.6.0_11;C:\Java\jre6;
 在PATH环境变量中加入以下路径C:\cygwin\bin;C:\cygwin\usr\i686-pc-cygwin\bin;C:\Java\jdk1.6.0_11\bin; 服务器

(2)安装sshd服务
    启动cygwin输入命令:ssh-host-config;
    根据提示进行相应的操做直至安装完成,安装成功后当即启动名称为“CYGWIN sshd”的服务。 eclipse

(3)配置ssh登陆
      执行ssh-keygen命令,而后根据提示按三次回车键,最后输入以下命令:
   cd ~/.ssh/;
   cp id_rsa.pub authorized_keys ssh

至此,cygwin的安装与配置成功,你能够享受cygwin带来的乐趣。 分布式

 

2、hadoop多节点的安装与部署 工具


一、下载hadoop;
       本实验用的版本是:hadoop-0.20.1;
二、外部配置
   选中一台机子作为jobTracker,namenode, datanode这个机子为master,这个机器的ip设置为192.168.1.102。另外两台作datanode,TaskTracker为slave,这个机器的ip为192.168.1.101,192.168.1.103

三、为了实现无密码登陆ssh服务器,在master机器cygwin的控制台中输入以下命令: 
  cd ~/.ssh;
   chmod 600 authorized_keys;
  scp authorized_keys  Administrator@192.168.1.102:~/.ssh/ authorized_keys;
scp authorized_keys  Administrator@192.168.1.103:~/.ssh/ authorized_keys;

假如是所用的客户端计算机是第一次登录SSH服务器,命令行中会提示“Are you sure you want to continue connecting (yes/no) ?”,只要输入yes便可,SSH服务器会自动将此次的登录信息存储在/.ssh/known_host文件中。当显示“Fanfare!!! You are successfully logged in to this server!!!”时,说明已经成功登录到ssh服务器计算机内了,须要注重的是,此时在当前控制台内输入的命令都将在ssh服务器计算机里运行。

四、master机器Hadoop机器环境部署:
  (1)将安装包解压到F:\hadoop\run中;
  (2)修改conf目录下的hadoop-env.sh
     export JAVA_HOME="/cygdrive/c/Java/jdk1.6.0_11" 
   (3)修改conf目录下的core-site.xml;

           <property>

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

                   <value>hdfs://192.168.1.101:9000<value>

                    ......................................

  (4)修改conf目录下的hdfs-site.xml;

         <property>

                   <name>dfs.datanode.handler.count</name>

                   <value>1<value>

                    ......................................

          <property>

                   <name>dfs.replication</name>

                   <value>1<value>

                    ......................................

 (5)修改conf目录下的mapred-site.xml

             <property>

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

                   <value>192.168.1.101:9001<value>

                    ......................................

 (6)修改conf目录下的masters文件
         输入192.168.1.101
 (7)修改conf目录下的slaves文件
       输入:192.168.1.101
                 192.168.1.102
                 192.168.1.103

(7)配置hadoop在cygwin中的环境
      用vi打开/etc/profile文件,在文件的末尾追加以下代码:
       export HADOOP_HOME=/cygdrive/f/hadoop/run
       export PATH=$PATH:$HADOOP_HOME/bin


(8)格式化一个新的分布式文件系统 
    cd $HADOOP_HOME
    bin/hadoop namenode -format
五、slave机器Hadoop机器环境部署
     把master机器上的F:\hadoop拷贝到slave机器上的F盘的根目录下便可。
六、关闭master,slave机器上的Cygwin,而后重启Cygwin。

七、启动master上的hadoop,执行以下命令:
     ssh localhost 
     cd $HADOOP_HOME
     bin/start-dfs.sh
     bin/start-mapred.sh
     jps
八、运行wordcount程序
   $ bin/hadoop dfs -put ./test-in input  
  $ bin/hadoop jar hadoop-0.16.0-examples.jar wordcount input output
   $ bin/hadoop dfs -cat output/*
九、中止hadoop进行
    $ bin/stop-all.sh
十、配置hadoop的开发环境
   (1)下载hadoop-0.20.1-eclipse-plugin.jar
   (2)将其复制到Eclipse安装目录下的   plugins子目录下。
   (3)删除org.eclipse.update目录,重启   Eclipse.
  (4) 配置一个Map/Reduce对象,即DFS location ,将Map/Reduce   Master一栏中的host设置为192.168.101,port设置为9001;将DFS Master 一栏中的host设置为192.168.101,port设置为9000;
 (5)运行wordcout程序
     建立一个Map/Reduce  Project,将wordcount.java拷贝到该工程的src目录下,运行程序。 

至此,若是以上没有问题的话,hadoop多节点的运行环境与开发环境配置完毕了,你能够开发Map/Reduce程序了。

相关文章
相关标签/搜索