• 单机安装Hadoop


    单机安装hadoop


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

    操作系统:centos7 64 位


    hadoop :2.6.5

    jdk

    我们之前安装了 官方的jdk 1.8 不是centos自带的jdk


    ------查看环境变量配置文件是否包含jdk环境变量

    cat /etc/profile ---查看全局环境变量配置文件


    su hadoop
    cat ~/.bash_profile ---查看局部环境变量配置文件


    ---查看当前linux系统所安装的java 来源哪个版本

    rpm -qa | grep java

    ---卸载包命令

    rpm -e 包名


    ---安装原厂oracle jdk


    rpm -ivh jdk-7u80-linux-x64.rpm

    -----配置环境变量------------
    vi /etc/profile


    JAVA_HOME=/usr/java/jdk1.7.0_80
    CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    PATH=$JAVA_HOME/bin:$PATH
    export JAVA_HOME CLASS_PATH PATH


    ---- 是全局变量生效---


    source /etc/profile


    ---验证一下java 是否安装成功


    java -version

    如果正常显示是如下结果:

    java version "1.7.0_80"
    Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
    Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

    这样,Hadoop 所需的 Java 运行环境就好了。


    --------------------------------演示从哪儿下载hadoop 然后下载之后上传到centos服务器---------------


    然后解压缩hadoop

    tar -zxf hadoop-2.6.5.tar.gz

    我们选择将 Hadoop 安装至 /usr/local/ 中:

    tar -zxf /tmp/hadoop-2.6.5.tar.gz -C /usr/local # 解压到/usr/local中

    cd /usr/local/

    mv ./hadoop-2.6.5/ ./hadoop # 将文件夹名改为hadoop


    ----创建hadoop用户--------------

    useradd hadoop
    ----创建hadoop组 --------------

    groupadd hadoop


    chown -R hadoop:hadoop /usr/local/hadoop # 修改文件权限


    Hadoop 解压后就能使用了。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

    cd /usr/local/hadoop/bin

    ./hadoop version


    -----------如果显示下面的结果 证明安装成功

    Hadoop 2.7.1
    Subversion https://git-wip-us.apache.org/repos/asf/hadoop.git -r 15ecc87ccf4a0228f35af08fc56de536e6ce657a
    Compiled by jenkins on 2015-06-29T06:04Z
    Compiled with protoc 2.5.0
    From source with checksum fc0a1a23fc1868e4d5ee7fa2b28a58a
    This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.1.jar


    ------------修改centos7 主机名为n1----------


    hostnamectl set-hostname --static n1

    ----修改hosts表----


    vi /etc/hosts

    192.168.146.128 n1

    ---------------------------------------演示hadoop自带的mapredue例子中的grep或者wordcount--------------------

    Hadoop 默认模式为非分布式模式,无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。

    现在我们可以执行例子来感受下 Hadoop 的运行。Hadoop 附带了丰富的例子

    (运行 ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar 可以看到所有例子),

    包括 wordcount、terasort、join、grep 等。

    在此我们选择运行 grep 例子,我们将 input 文件夹中的所有文件作为输入,

    筛选当中符合正则表达式 dfs[a-z.]+ 的单词并统计出现的次数,最后输出结果到 output 文件夹中。


    cd /usr/local/hadoop

    mkdir ./input

    cp ./etc/hadoop/*.xml ./input # 将配置文件作为输入文件

    ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'

    cat ./output/* # 查看运行结果


    ---使用hadoop的例子hadoop-examples-2.6.5.jar里边的程序grep来执行查询dfs开头后面是包含从a到z的字符串的单词

    -----进入到bin文件夹下

    cd /usr/local/hadoop/bin

    ./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep /usr/local/hadoop/input /usr/local/hadoop/output 'dfs[a-z.]+'

    执行成功后如下所示,输出了作业的相关信息,输出的结果是符合正则的单词 dfsadmin 出现了1次

    ---查看执行结果
    cd /usr/local/hadoop/output

    cat *

    ---------查看执行结果

    cd /usr/local/hadoop

    cat ./output/* # 查看运行结果

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


    ./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar

    ./hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount ./input ./output333

    ./hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /usr/local/hadoop/input /usr/local/hadoop/output333


    1.


    cd /usr/local/hadoop

    mkdir input


    cd input

    vi test.txt

    hello world


    hello lisan


    hello sangyang


    hello wanghong


    hello meimei


    -


    cat ./output/* # 查看运行结果


    执行成功后如下所示,输出了作业的相关信息,输出的结果是符合正则的单词hello出现了5次

    ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar wordcount ./input ./output


    注意,Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 ./output 删除。



    rm -rf ./output


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


    单机模式
    (不需要做任何配置,但不启动任何dfs和mapreduce daemon进程)

    -----------讲解hadoop的常用配置文件core-site.xml,hdfs-site.xml,mapred-site.xml


    获取默认配置

    配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,默认下来,


    这些配置文件都是空的,所以很难知道这些配置文件有哪些配置可以生效,上网找的配置可能因为各个hadoop版本不同,
    导致无法生效。浏览更多的配置,有两个方法:

    1.选择相应版本的hadoop,下载解压后,搜索*.xml,找到core-default.xml,hdfs-default.xml,mapred-default.xml,

    这些就是默认配置,可以参考这些配置的说明和key,配置hadoop集群。

    2.浏览apache官网,三个配置文件链接如下:

    http://hadoop.apache.org/common/docs/current/core-default.html
    http://hadoop.apache.org/common/docs/current/hdfs-default.html
    http://hadoop.apache.org/common/docs/current/mapred-default.html


    这里是浏览hadoop当前版本号的默认配置文件,其他版本号,要另外去官网找。其中第一个方法找到默认的配置是最好的,

    因为每个属性都有说明,可以直接使用。另外,core-site.xml是全局配置,hdfs-site.xml和mapred-site.xml分别是hdfs和mapred的局部配置。




  • 相关阅读:
    java——异常(一)
    java —— 全面解析 Annotation
    多线程(一)——三种实现方式
    java ——static 关键词总结
    java —— equals 与 ==
    java——数组与内存控制
    java—— finall 关键词
    File类实现文件夹和文件复制
    java —— 内部类
    类成员——代码块
  • 原文地址:https://www.cnblogs.com/beiyi888/p/9505960.html
Copyright © 2020-2023  润新知