zoukankan      html  css  js  c++  java
  • windows下搭建hadoopproject(一)

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

    一、安装文件准备
    1:下载好hadoop-1.0.0.tar.gz,
    下载地址是https://archive.apache.org/dist/hadoop/core/hadoop-1.0.0/
    2:解压到D:hadoopcygwinzhangmanyi文件夹下。

    二、启动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:hadoopcygwinzhangmanyihadoop-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%srccontrib文件夹下
    编辑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: mphadoop-zhangmanyimapredstagingzhangmanyi-1980807403.staging to 0700
    须要改动srccoreorgapachehadoopfsFileUitl.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:hadoopeclipse -Dversion=1.0.0

    运行成功后会在%Hadoop_HOME%uildcontribeclipse-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插件成功安装。

    这里写图片描写叙述

  • 相关阅读:
    四则运算
    实验四 决策树算法及应用
    实验三 朴素贝叶斯算法及应用
    实验二 K-近邻算法及应用
    实验三 面向对象分析与设计
    实验二 结构化分析与设计
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    流程图与活动图的区别与联系
    四则运算自动生成程序
  • 原文地址:https://www.cnblogs.com/yangykaifa/p/7212543.html
Copyright © 2011-2022 走看看