zoukankan      html  css  js  c++  java
  • 初学者值得拥有【Hadoop伪分布式模式安装部署】

    目录

     

    1.了解单机模式与伪分布模式有何区别

    2.安装好单机模式的Hadoop

    3.修改Hadoop配置文件---五个核心配置文件

    (1)hadoop-env.sh

    1.到hadoop目录中

    2.修改hadoop-env.sh配置文件

    (2)core-site.xml

    1.修改core-site.xml配置文件

    (3)hdfs-site.xml

    1.修改hdfs-site.xml配置文件

    (4)mapred-site.xml

    (5)yarn-site.xml

    1.修改yarn-site.xml配置文件

    4.启动与关闭分布式Hadoop

    (1)格式化DFS(Distributed File System)

    (2)启动DFS及Yarn

    (3)关闭DFS及Yarn

    5.配置SSH免密登入

    (1)什么是SSH?

    (2)为什么Hadoop集群需要配置SSH免密登录

    (3)SSH免密登录原理

    (4)配置SSH免密登录

    1.建立密钥对

    6.示例程序

    1.在伪分布模式下使用wordcount示例程序完成单词统计

    (1)准备数据

    (2)运行wordcount程序完成单词统计

    (3)查看结果


    1.了解单机模式与伪分布模式有何区别

    单机模式与伪分布模式区别
     单机模式伪分布模式
    (1)文件系统不同直接读写本地操作系统的文件系统读写HDFS文件系统
    (2)启动进程不同不会启动NameNode,DataNode,ResourceManager,NodeManager等守护进程,Map()和Reduce()任务作为同一个进程的不同部分来执行的启动NameNode,DataNode,ResourceManager,NodeManager等守护进程,都在同一台机器上运行,是相互独立的java进程。
    (3)安装部署不同解压后即可使用,实际是默认最小配置,运行在本地需要配置五个文件,使Hadoop运行在单节点集群上

    2.安装好单机模式的Hadoop

    安装单机模式Hadoop简单教程:搭建单机模式Hadoop环境

    克隆一台安装好单机模式Hadoop的虚拟机(伪分布式模式在克隆机上完成后续的操作)

    3.修改Hadoop配置文件---五个核心配置文件

    五个核心配置文件
    hadoop-env.shcore-site.xml
    hdfs-site.xmlmapred-site.xml
    yarn-site.xml位置:安装目录下的etc/hadoop下/export/server/hadoop-2.7.2/etc/hadoop

    (1)hadoop-env.sh

    该文件为Hadoop的运行环境配置文件,Hadoop的运行需要依赖JDK,将其中的export JAVA_HOME的值改为我们安装JDK的路径

    1.到hadoop目录中

    cd /export/srever //到hadoop环境安装目录中
    cd hadoop-2.7.2/  //到hadoop安装目录中
    cd etc/hadoop/    //到hadoop文件配置目录中

    2.修改hadoop-env.sh配置文件

    which java  //获取java安装路径
    vi hadoop-env.sh  //进入配置文件

    (2)core-site.xml

    该文件用于定义系统级别的参数

    1.修改core-site.xml配置文件

    vi core-site.xml

    //不想自己写的同学可以直接复制此代码到<configuration></configuration>中,但请注意填入自己的主机名
    <property>
            <name>fs.defaultFS</name>
            <value>hdfs://主机名:9000</value>
    </property>
    
    
    <property>
            <name>hadoop.tmp.dir</name>
            <value>/export/server/hadoop-2.7.2/tmp</value>
    </property>

    (3)hdfs-site.xml

    该文件为HDFS核心配置文件,如:文件副本的个数,块大小及是否使用强制权限等

    1.修改hdfs-site.xml配置文件

    vi hdfs-site.xml

    //不想自己写的同学可以直接复制此代码到<configuration></configuration>中,但请注意填入自己的主机名
    <property>
            <name>dfs.replication</name>
            <value>1</value>
    </property>
    
    <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>主机名:50090</value>
    </property>

    (4)mapred-site.xml

    这个文件本不存在,但有一个模板文件mapred-site.xml.template,

    我们将模板文件改名为mapred-site.xml,然后进行编辑

    mv mapred-site.xml.template mapred-site.xml //将mapred-site.xml.template改名为mapred-site.xml
    vi mapred-site.xml

    //不想自己写的同学可以直接复制此代码到<configuration></configuration>中
    <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
    </property>

    (5)yarn-site.xml

    该文件为YARN框架配置文件,配置ResourceManager,nodeManager的通信端口,web监控端口等

    1.修改yarn-site.xml配置文件

    vi yarn-site.xml

    //不想自己写的同学可以直接复制此代码到<configuration></configuration>中
    <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>ky002</value>
    </property>
    
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>

    4.启动与关闭分布式Hadoop

    (1)格式化DFS(Distributed File System)

    hdfs namenode -format

    如果在格式化的日志中看到succefully format字样,就证明格式化成功。反之,失败。

    (2)启动DFS及Yarn

    start-dfs.sh
    start-yarn.sh

    在启动过程中,需要输入几次root账号的密码

    (3)关闭DFS及Yarn

    stop-dfs.sh
    stop-yarn.sh

    5.配置SSH免密登入

    (1)什么是SSH?

    SSH是Secure Shell的缩写,由IETF的网络工作小组所制定。

    SSH是建立在应用层和传输基础上的安全协议,专为远程登录会话和其他网络服务提供安全的协议,即

    利用SSH协议可以有效防止远程管理过程中的信息泄露问题,目前SSH较可靠。

    (2)为什么Hadoop集群需要配置SSH免密登录

    1.Hadoop集群之间的交互是不用密码的,如果每次通信都必须输入密码会非常麻烦。

    2.Hadoop运行过程中需要管理远程Hadoop守护进程,在Hadoop启动后,

    NameNode是通过SSH来无密码登录,启动和停止各个DataNode上的各个守护进程的。

    同理,DataNode也能使用SSH无密码登录到NameNode。

    3.SSH免密登录是让几台主机(或虚拟机)之间能够相互免密访问,虽然伪分布式模式Hadoop只安装在一台主机上,但

    伪分布模拟了多个节点进程运行在这台主机上,所以进程间的访问需要配置SSH免密登录

    (3)SSH免密登录原理

    (4)配置SSH免密登录

    1.建立密钥对

    ssh-keygen -t rsa  //获取密钥对
    cd /root/.ssh  //进入密钥对目录
    ll  //浏览密钥对文件
    ssh-copy-id 主机名  //将本机的公钥复制到远程机器的authorized_keys文件中
    more authorized_keys  //记录多台机器的公钥,让机器之间使用ssh不需要用户名和密码

    6.示例程序

    以上已完成Hadoop伪分布式安装部署,后面是示例程序验证是否安装成功

    1.在伪分布模式下使用wordcount示例程序完成单词统计

    (1)准备数据

    使用hdfs shell命令将本地文件系统中的数据上传到HDFS

    cd export/server/hadoop-2.7.2/wcinput  //进入存放若干单词的文本文件的目录中,此目录可以自己创建
    hadoop fs -put word.txt /  //将存放若干单词的文本文件上传到HDFS中
    hadoop fs -ls /  //查看是否上传成功
    hadoop fs -cat /word.txt  //查看文本内容

    (2)运行wordcount程序完成单词统计

    使用hadoop jar 命令运行自带示例程序完成单词统计

    cd ../share/hadoop/mapreduce/
    hadoop jar hadoop-mapreduce-examples-2.7.2.jar wordcount /word.txt /out

    (3)查看结果

    1.在命令行

    hadoop fs -ls /out
    hadoop fs -cat /out/part-r-00000  

    2.在web界面

    在浏览器中输入虚拟机ip地址:50070或主机名:50070(需要到windows中映射主机名与IP地址文件位置:C:WindowsSystem32driversetchosts)

  • 相关阅读:
    javaweb基础笔记(2)
    javaweb基础笔记(1)
    java基础笔记(11)
    java基础笔记(10)
    java基础笔记(9)
    洛谷 P2648 赚钱
    AcWing 走廊泼水节 题解
    对于有向图多个点到一个点的求法
    分层图的四倍经验
    洛谷 P4822 [BJWC2012]冻结
  • 原文地址:https://www.cnblogs.com/zhushen/p/14039563.html
Copyright © 2011-2022 走看看