Windows下基于Eclipse的Hadoop开发环境完全配置[转]

网上搜了一些中文的,总是只有一小部分,对于我们这些菜鸟来说,根本没发用,更可恶的是,搜到的内容都是一样的,哎,抄来抄去,估计都没试过到底能不能用就贴上去了。

后来找了一个英文的:http://ebiquity.umbc.edu/Tutorials/Hadoop/00%20-%20Intro.html 非常的全面,一步一步的教,我这翻译一下大致的步骤。

一,准备

Java 1.6
Eclipse Europa 3.3.2
hadoop-0.19.2

Java一定要1.6,Eclipse好像不能用3.4以上,hadoop用0.19.2,原文用0.19.1,现在没的下了。0.20.0不能用,我试过了,没法启动Job Tracker,不知道原因,可能是bug也不定。

二,安装Cygwin

先去下载一个安装文件 ,完后运行,这只是一个引导的程序,真正的程序要通过它下载才能安装,当要选择下载站点时,输入:http://www.cygwin.cn 然后就可以选择要安装的程序,默认的时候没有安装OpenSSH,所以要手动选择,在Net类别下,选上OpenSSH和OpenSSL两项。

之后,设置环境变量,把

     c:/cygwin/bin;c:/cygwin/usr/bin

加入到系统环境变量的Path中。

三,配置SSH

1.打开一个cygwin,输入

     ssh-host-config

当询问if privilege separation should be used 时输入 no .
当询问if sshd should be installed as a service 时输入yes .
当询问about the value of CYGWIN environment variable enter 时输入 ntsec .

 

2.打开 控制面板-》管理-》服务 启动名为 CYGWIN sshd 的那项。

3.打开cygwin,输入

      ssh-keygen

当询问要filenames 和 pass phrases 的时候都自己点回车,接受默认的值.命令结束后输入 cd ~/.ssh转到.ssh目录,输入 ls -l应该包含两个文件:id_rsa.pub id_rsa

4.在第三步的窗口(当前目录在.ssh)中输入

      cat id_rsa.pub >> authorized_keys

完成后输入

      ssh localhost

检查ssh是否配置成功,当提示whether you really want to connect时,输入yes。 这样以后再输入ssh localhost的时候都不会再有提示了。

接下来开始配置Hadoop了,

一,解压文件

打开一个cygwin,输入以下命令

      cd .

      explorer .

会弹出一个新窗口,把原来下载的hadoop压缩文件放到里面,并解压。个人认为,其实不一定要放到cygwin的用户根目录下,没试过。

二,配置Hadoop

打开解压出来的文件夹,在 hadoop-0.19.2/conf 目录下有一个 hadoop-site.xml 文件,打开,在原有的

<configuration>

</configuration>间插入

<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9100</value>
</property>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9101</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>

保存。

三,格式化Name Node

打开一个cygwin,转到hadoop目录下,如果按照前面的解压,直接用cd hadoop-0.19.2就可以了,接着输入以下命令:
      mkdir logs
      bin/hadoop namenode -format

四,安装Eclipse插件

打开解压后的文件夹,把hadoop-0.19.2/contrib/eclipse-plugin下的hadoop-0.19.2-eclipse- plugin.jar文件拷到eclipse 的plugins目录下,重启eclipse,在Window-》Open Perspective-》other,弹出的窗口中应该有一项Map/Reduce项,代表安装成功了。如果没有的话,把eclipse下的 configuration/org.eclipse.update文件夹删了,再重启eclipse。


五,启动Hudoop集群

启动五个cygwin。

在第一中启动NameNode,执行:
cd hadoop-0.19.2
bin/hadoop namenode

在第二个中启动Secondary NameNode,执行:
cd hadoop-0.19.2
bin/hadoop secondarynamenode

第三个中启动job tracker 执行:
cd hadoop-0.19.2
bin/hadoop jobtracker

第四个中启动data node ,执行
cd hadoop-0.19.2
bin/hadoop datanode

最后一个启动 task tracker, 执行:
cd hadoop-0.19.2
bin/hadoop tasktracker

六,在Eclipse中配置环境

启动eclipse,转到Map/Reduce Perspective,在上图的Map/Reduce Locations里,新建一个Location,填入以下值

    * Location Name -- localhost
    * Map/Reduce Master
          o Host -- localhost
          o Port -- 9101
    * DFS Master
          o Check "Use M/R Master Host"
          o Port -- 9100
    * User name -- 默认


七,上传文件到HDFS

打开一个cygwin,执行

      cd hadoop-0.19.1
      bin/hadoop fs -mkdir In
      bin/hadoop fs -put *.txt In

这时,在eclipse的Project explorer的DFS location中,应该能反应变化,没有的话,reconnect一下

好了,东西都准备好了,下篇就可以开始创建工程了。

启动Eclipse,

  • 右键点击  Project Explorer 窗口,选择 New -> Project.. 找到 Map/Reduce Project,Next ,输入名字。
  • 点击下面的Config Hadoop Install Directiory,输入Hadoop的目录,如:C:/cygwin/home/User/hadoop-0.19.2

  • 右键点击新创建的 Hadoop 工程,选择  New -> Other 转到 Map/Reduce 文件夹, 选择 MapReduceDriver 然后点击 Next ,输入名字,点击Finish。
  • 新创建了一个文件,但是有错误,把

conf.setInputPath(new Path("src"));
conf.setOutputPath(new Path("out"));

换为

conf.setInputFormat(TextInputFormat.class);
conf.setOutputFormat(TextOutputFormat.class);

FileInputFormat.setInputPaths(conf, new Path("In"));
FileOutputFormat.setOutputPath(conf, new Path("Out"));
右键点击文件,选择 Run As --> Run on Hadoop. 弹出以下窗口:

 选择 "Choose existing hadoop location" , 然后选择刚才创建的localhost ,点Finish 就开始运行了.

结束了^_^

转载于:https://www.cnblogs.com/daniel-deng/archive/2012/03/09/2386134.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值