Win7下快速搭建hadoopEclipse运行环境--方案

来源:互联网 发布:淘宝拍卖茅台是真的吗 编辑:程序博客网 时间:2024/05/18 00:42
apache提供了 Linux下开发hadoop教程,不多说
网上有很多参考资料,说法不一
自己总结下思路,希望能对喜欢hadoop的兄弟姐妹有所帮助:
硬件:win7

step 1、 安装1.6以上版本 jdk

step 2、 安装Cygwin,下载安装cygwin  (因为运行hadoop需要linux环境)
              从网上下载setup程序后运行:
              a、选择从网上下载并安装模式(适合网速OK者)
              b、选择一个离自己较近的镜像网点下载cygwin安装包,由于所有镜像点都是义务服务的,所 以如果镜像点中途网络中断,只能重新选择下载
              c、不需要下载全部的包(文件较大)、建议勾选 Base下的sed,net 下的openssh,devel下 的subversion,Editor下的vim,
其他 默认就好,下一步
              d、创建快捷方式

step 3   配置环境变量(我自己为例):
            配置jdk,
            环境变量:
            JAVAHOME=D:\Java\jdk1.7.0
            CLASS_PATH=D:\Java\jdk1.7.0\lib                                     path=D:\Java\jdk1.7.0\bin;C:\cygwin\bin;C:\cygwin\usr\sbin;C:\cygwin\hom     
e\Administrator\hadoop-0.20.2\bin   
            CYGWIN=ntsec tty
            HADOOP_HOME=C:\cygwin\home\Administrator\hadoop-0.20.2


step 4  启动cygwin,安装ssh服务
            启动cygwin,
            step1、输入ssh-host-config命令
                
            step2、
Query: Should privilege separation be used? (yes/no) yes(问你是否要特权分离)
            step3、要求输入yes/no时(问你是否安装sshd服务)----如果初次安装输入
yes
            step4、Query: Enter the value of CYGWIN for the daemon: 
          [ntsec] ntsec  #输入ntsec
            step5、Query: Do you want to use a different name? (yes/no) no 不指定用户
           step6 
Query: Create new privileged user account 'cyg_server'? (yes/no)                         yes创建
           step7、接下来设置密码,安装成功
step 5:启动SSH服务 
       打开终端:输入cmd,控制台输入services.msc 在弹出窗口中选择CYGWIN sshd服务        ,并开启,启动成功
step 6:配置ssh无密码登陆服务
       step1:输入ssh-keygen命令生成密钥文件
       step2:按回车,按回车,按回车 ,接下来生成authorized_keys文件
       step3:输入cd ~/.ssh/  
       step4:输入ls查看
             显示id_rsa id_rsa.pub
       step5:输入cp id_rsa.pub authorized_keys 
             显示 authorized_keys id_rsa id_rsa.pub后配置成功    
        step6:输入exit退出 
step 7:输入 ssh localhost登陆ssh服务  
       询问您是否继续连接:输入yes
step 8: 下载hadoop安装包
step 9:在cygwin中输入
explorer .弹出文件夹,将hadoop安装包解压到此文件夹
step 10:修改hadoop基本配置
        step1:修改hadoop文件夹下conf下的
hadoop-env.sh文件中下面代码  
              
 export JAVA_HOME='/cygdrive/d/Java/jdk1.7.0'/ (你自己JDK LINUX路径
               
export HADOOP_CLASSPATH=build/classes 
        step2:复制core-default.xml文件并粘贴到 conf 文件夹下 更名为core-site.xml并修改下面代      码,8018可以任意指定一个未占用端口
              <property>                 <name>fs.default.name</name>                 <value>hdfs://localhost:8018</value>              </property>              <property>                   <name>hadoop.tmp.dir</name>                   <value>/var/log/hadoop/tmp</value>              </property>


 配置上面代码可免除后续每次启动都要格式化namenode的问题   
        
step3:复制hdfs-default.xml文件并粘贴到 conf 文件夹下 更名为hdfs-site.xml并修改下面代      码,注意:很多教程中此操作只拷贝不做任何修改,经本人操作,eclipse会遇到访问权限的               问题,必要时修改
    <property>    <name>dfs.permissions</name>        <value>false</value>    </property>    <property>        <name>dfs.replication</name>        <value>1</value>    </property>


 代码为配置副本数量:默认为3,建议伪分布环境下设置为1       
        
step4:复制mapred-default.xml文件并粘贴到 conf 文件夹下 更名为mapred-site.xml并修改,      8028也可自由自定一个未占用端口号
 <property> <name>mapred.job.tracker</name>        <value>localhost:8028</value> </property>


step 11 :将hadoop插件 拷贝到eclipse中的插件包中(注意版本问题)
step 12 : 将hadoop文件夹路径拷贝到图中


step 13:选择 图中的大象图标   


step 14: 右键单击图标新建 Hadoop location

step15完成图中设置 8018和8028和要之前的对应起来
lastly:have fun!
 ps:搭建环境也是调试程序,遇到问题不要盲目百度关键字,多看log,根据log去百度,注意警告和提示