hadoop开发环境配置(伪分布)

 

Hadoop开发环境

安装插件

0.20.0下原始的eclispe插件无法使用,需要下载网上改造过的:

hadoop-eclipse-plugin-0.20.3-SNAPSHOT.jar

 

copyeclispe插件目录,然后重启eclispe

PS:这里出现一个问题,发现在eclispe3.7下插件不会加载,最终删除旧的eclispe,使用新解压的文件解决,可以将旧eclispe插件目录下的文件COPY到新目录。同样可以使用之前的插件。

 

 

配置插件环境

hadoop开发环境配置(伪分布)

 

 

Hadoop配置更改

之前配置的伪分布模式上,采用的localhost的配置,为使eclispe可以访问,需要更改为IP的配置方式,这里需要注意的是:

需要更改以下的内容:

<!--[if !supportLists]-->1、  <!--[endif]-->修改 /etc/hosts ,删除 127.0.0.1 ,添加本机ip的解析。

 

[root@localhost ~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

#127.0.0.1              localhost.localdomain localhost

::1             localhost6.localdomain6 localhost6

192.168.128.133 localhost.localdomain localhost

 

<!--[if !supportLists]-->2、  <!--[endif]-->修改相关配置文件

 

[hadoop@localhost conf]$ cat core-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

 

<!-- Put site-specific property overrides in this file. -->

 

<configuration>

     <property>

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

         <value>hdfs://192.168.128.133:9000/</value>

     </property>

</configuration>

 

 

 

[hadoop@localhost conf]$ cat mapred-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

 

<!-- Put site-specific property overrides in this file. -->

 

<configuration>

     <property>

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

         <value>192.168.128.133:8021</value>

     </property>

</configuration>

 

<!--[if !supportLists]-->3、  <!--[endif]-->另外SSH也需要查看Knowshosts里面是否有IP,否则会出现错误二,可以执行如下,则自动添加

 

ssh 192.168.128.133

 

<!--[if !supportLists]-->4、  <!--[endif]-->删除原临时目录,重新格式化

 

hadoop namenode –format

 

 

如果不按如上操作,可能会出现下面的错误:

 

错误一:

2011-08-14 09:44:28,206 INFO org.apache.hadoop.ipc.Server: IPC Server handler 7 on 9000, call addBlock(/user/hadoop/test.txt, DFSClient_1170937058) from 192.168.128.133:37785: error: java.io.IOException: File /user/hadoop/test.txt could only be replicated to 0 nodes, instead of 1

java.io.IOException: File /user/hadoop/test.txt could only be replicated to 0 nodes, instead of 1

        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1271)

        at org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:422)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:508)

        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:959)

        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:955)

        at java.security.AccessController.doPrivileged(Native Method)

        at javax.security.auth.Subject.doAs(Subject.java:396)

        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:953)

 

 

错误二:

 

This does not map back to the address - POSSIBLE BREAK-IN ATTEMPT

 

 

Eclispe调试Hadoop配置过程中问题

遇到如下问题:

Cannot run program "chmod": CreateProcess error=2

 

 

 注意:需要安装Cygwin,并设置环境变量。就算不用本地的环境也必须。

 

 

安装Cygwin,并设置Cygwin_HOME/binwindows Path变量

Cygwin下安装SSH

复制Hadoop文件

拷贝Hadoop项目中的eclipse plugin jar文件到eclipse plugin

eclipse 在选项设置hadoop home路径,添加hadoop location(主要设置namenode 机器名端口和jobtracker端口即可)

新建map reduce project

hadoop项目拷贝WordCount.java文件到新的项目

右键WordCount.java,设置运行参数

右键WordCount.java=> run on hadoop

 

 

注意:

 

windows下跑Hadoop Eclipse plugin,无论是连接本地还是远程,Cygwin是必须的安装的,调试远程不需要配置ssh

每个hadoop版本必须和Hadoop Eclipse plugin一直否则无法进行连接和执行程序

 

 -------------------------------------------------------------------------------------------------------------------

 

作者:CNZQS|JesseZhang  个人博客:CNZQS(http://www.cnzqs.com)

版权声明:除非注明,文章均为原创,可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明 

--------------------------------------------------------------------------------------------------------------------

你可能感兴趣的:(hadoop)