这里是接着之前的一篇 《hadoop在windows下的环境搭建 》来的~~~

一、安装文件准备

1:下载好hadoop-1.0.0.tar.gz,

下载地址是https://archive.apache.org/dist/hadoop/core/hadoop-1.0.0/

2:解压到D:\hadoop\cygwin\zhangmanyi\文件夹下。

二、启动hadoop

1、改动hadoop配置文件,在conf文件夹下。改动mapred-site.xml、core-site.xml和hdfs-site.xml三个文件。

mapred-site.xml

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

core-site.xml:

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>

hdfs-site.xml:

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

在Windows环境下,还须要在hadoop-env.xml中增加

export JAVA_HOME=D:/hadoop/Java/jdk1.6.0_45

2、设置免password登录

因为在使用启动hadoop和停止hadoop脚本过程中须要通过ssh发送命令。因此每次发送命令都须要输入password进行验证。

打开cygwin,进入D:\hadoop\cygwin\zhangmanyi\hadoop-1.0.0\文件夹下

ssh –keygen –t rsa

过程中须要输入存储id_rsa的文件,当中须要输入文件的位置,假设仅仅输入文件名称,那么不会存储到.ssh文件夹下。

后面须要输入使用密钥的password,设置为空。



进入~/.ssh文件夹

cat id_rsa.pub >> authorized_keys



3、启动hadoop

进入hadoop安装文件夹

首先格式化HDFS:

bin/hadoop namenode –format

启动hadoop

bin/start-all.sh

通过http://localhost:50030/查看MapReduce是否启动成功

通过http://localhost:50070/查看HDFS是否启动成功

发现仅仅有HDFS启动成功,于是运行一次停止脚本再又一次启动。

停止脚本:

bin/stop-all.sh

前面MapReduce没有启动成功是因为datanode没有启动起来。

启动成功。可是这里点击Browse the filesystem会出现故障:



因为网页转向的地址用的是hadoop集群的某一个datanode的主机名,客户端的浏览器无法解析这个主机名,因此该页无法显示。

因此须要在客户端的hosts文件中增加hadoop集群的ip地址与相应的主机名,这样就能解决这个问题了。

(待解决)

三、hadoop eclipse插件制作

问题1。



进入%Hadoop_HOME%\src\contrib\文件夹下

编辑build-contrib.xml

增加

<property name="version" value="1.0.0"/>
<property name="eclipse.home" location="D:/hadoop/eclipse"/>

问题2。针对直接编译代码后生成的jar包缺少依赖的lib文件



须要对配置文件进行改动。包括src/contrib/eclipse-plugin/文件夹下的build.xml和META-INF/MANIFEST.MF。

build.xml:

在后面增加:

<copy file="${hadoop.root}/lib/commons-configuration-1.6.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/jackson-core-asl-1.0.1.jar" todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/jackson-mapper-asl-1.0.1.jar" todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/>

MANIFEST.MF:

Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar,lib/commons-httpclient-3.0.1.jar,lib/jackson-core-asl-1.0.1.jar,lib/jackson-mapper-asl-1.0.1.jar,lib/commons-configuration-1.6.jar,lib/commons-lang-2.4.jar

问题3。针对hadoop中文件权限的问题 Failed to set permissions of path: \tmp\hadoop-zhangmanyi\mapred\staging\zhangmanyi-1980807403.staging to 0700

须要改动src\core\org\apache\hadoop\fs\FileUitl.java

凝视掉三行代码:

private static void checkReturnValue(boolean rv, File p,
FsPermission permission
) throws IOException {
if (!rv) {
// throw new IOException("Failed to set permissions of path: " + p +
// " to " +
// String.format("%04o", permission.toShort()));
}
}

上面问题都是在实践中遇到了的,可是问题2在改正并又一次编译后还是不对,因此选择又一次来,将全部文件改动好后再进行编译。

1、 编译生成eclipse插件

先在hadoop安装文件夹下,运行命令

ant eclipse

然后在hadoop-1.0.0/src/contrib/eclipse-plugin/文件夹下运行命令

ant -Dversion.home=D:\hadoop\eclipse -Dversion=1.0.0

运行成功后会在%Hadoop_HOME%\build\contrib\eclipse-plugin\文件夹下生成hadoop-eclipse-plugin-1.0.0.jar文件。

2、 安装eclipse插件

将生成的hadoop-eclipse-plugin-1.0.0.jar拷贝到eclipse文件夹中的plugin文件夹中。

新建java project项目。hadoop-1.0.0。使用jdk为1.6的版本号

并在Project——Properties——Java Build Path(右边选择Libraries)——Add External JARs

选择导入hadoop-eclipse-plugin-1.0.0.jar

工程建立完毕

3、 測试安装

在菜单条中依次单击windows——show view——other…——MapReduce Tools——Map/Reduce Locations。

设置完毕后能够显示hdfs的文件夹内容,说明eclipse插件成功安装。

windows下搭建hadoopproject(一)的更多相关文章

  1. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

  2. Android学习——windows下搭建Cygwin环境

    在上一篇博文<Android学习——windows下搭建NDK_r9环境>中,我们详细的讲解了在windows下进行Android NDK开发环境的配置,我们也讲到了在NDk r7以后,我 ...

  3. Android学习——windows下搭建NDK_r9环境

    1. NDK(Native Development Kit) 1.1 NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP功能开发的工具,通过这个 ...

  4. react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...

  5. Windows下搭建PHP环境:Apache+PHP+MySQL

    本文简单记录一下Windows下搭建PHP环境的过程,一些细节可以参照本文参考资料,此文不再赘述 准备工作: Windows下手工搭建PHP环境需要先下载相应的软件,需要注意的是Apache与PHP的 ...

  6. Windows下搭建Git开发环境

    Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...

  7. windows下搭建学习objective-c 的运行环境【转载】

    对于Iphone开发学习者而言,Object -c 是必修的语言.但是由于苹果的自我封闭的产业链发展模式(从芯片.机器.开发语言.终端产品.服务)的限制,要想开发针对苹果iPhone等产品的应用程序, ...

  8. Windows下搭建论坛

    Windows下搭建论坛 真正的O基础架构,一步一步走向成功 转载请注明原作者出处 环境准备篇 安装集成包软件 解压后如下 以管理员身份运行setup的批处理 选择推荐的apache版本 选择推荐的m ...

  9. Windows下搭建MySQL Master Slave[转]

    Windows下搭建MySQL Master Slave 一.背景 服务器上放了很多MySQL数据库,为了安全,现在需要做Master/Slave方案,因为操作系统是Window的,所以没有办法使用k ...

随机推荐

  1. fish shell安装和配置

    sudo apt-get install fish whereis fish chsh -s /usr/bin/fish 重启:

  2. no main manifest attribute, in demo-1.0.jar

    今天想打包一个jar到Linux上运行,发现使用java -jar demo-1.0.jar 运行报错: no main manifest attribute, in demo-1.0.jar 解决方 ...

  3. 我要好offer之 搜索算法大总结

    1. 二分搜索 详见笔者博文:二分搜索的那些事儿,非常全面 2. 矩阵二分搜索 (1) 矩阵每行递增,且下一行第一个元素大于上一个最后一个元素 (2) 矩阵每行递增,且每列也递增 3. DFS 深度优 ...

  4. Java--消除重复数字后的最大值

    描述: 一个长整型数字,消除重复的数字后,得到最大的一个数字. 如12341 ,消除重复的1,可得到1234或2341,取最大值2341. 42234,消除4 得到4223 或者 2234 ,再消除2 ...

  5. P1473 校门外的树3

    时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述  校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的……如今学校决定在某个时刻在某一段种上一 ...

  6. Session挂起

    异常信息: toString() unavailable - no suspended threads 使用Spring管理 ,在使用hibernate时使用如下语句Session session = ...

  7. 论epoll的实现

    论epoll的实现 上一篇博客 论select的实现 里面已经说了为什么 select 比较慢.poll 的实现和 select 类似,只是少了最大 fd 限制,如果有兴趣可以自己去看代码.我这里来简 ...

  8. Chrome 浏览器如何完美实现滚动截图技巧

    一.前言 我们平时在浏览网页时,想把碰到好的网页内容或者文章截屏保存,但是网页的长度常常会超出屏幕高度,一般的截屏功能只能截取显示在屏幕上的内容,那我们该如何方便快捷截取全部内容?今天就分享一个如何利 ...

  9. (4)ASP.NET HttpRequest 类

    HttpRequest 类的主要作用是读取客户端在 Web 请求期间发送的 HTTP 值. https://msdn.microsoft.com/zh-cn/library/system.web.ht ...

  10. (40)C#windows服务控制

    ServiceController类 可以使用 ServiceController 类连接到现有服务并控制其行为. 构造函数 1.ServiceController () ServiceControl ...