title: Hadoop伪分布式模式搭建

Quitters never win and winners never quit.

运行环境:

  1. Ubuntu18.10-server版镜像:ubuntu-18.10-live-server-amd64.iso

  2. Oracle VM VirtualBox

  3. Hdoop最新版

  4. jdk1.8.0_191

开始操作:

  1. 新建虚拟机(当然是用最新版的Ubuntu了,为了提高实用性,建议使用服务器版)

  2. 设置虚拟机的网络为默认模式(网络地址转换)或者桥接模式,建议不要使用NAT模式

  3. 设置虚拟机端口转发:(主机端口可自己设置,只要不与其他进程冲突即可)

    a. 主机9000 虚拟机22 (ssh链接专用端口,建议牢记)

    b. 主机9001 虚拟机8088 (hadoop检测端口)

  4. 启动虚拟机用SSH连接并配置好:

    启动虚拟机(建议无界面启动),打开本地终端,输入命令:

    $ ssh -p 9000 username@127.0.0.1  # username是安装镜像是设置的用户名

    按提示选择yes,输入密码。

    选择本地终端的理由:我的本地终端经过美化和自定义,比界面启动的黑框体验好,还有就是为了贴近实际操作环境

    # hostname 配置
    $ hostname bigdata-senior01.chybinmy.com  # 临时修改,省去重启虚拟机
    $ vim /etc/hostname  # 永久修改,为以后着想
    $ bigdata-senior01.chybinmy.com  # 将里面的主机名改为bigdata-senior01.chybinmy.com
    
    # host 配置
    $ ifconfig  # 得到当前虚拟机网络地址(inet后面的第一个地址,假设为10.42.0.32)
    # 配置Host
    $ vim /etc/hosts
    $ 10.42.0.32 bigdata-senior01.chybinmy.com  # 在文件尾部添加
  5. 新建hadoop用户:

    $ sudo adduser hadoop  # 新建hadoop用户,根据提示输入密码
  6. 切换hadoop用户:

    $ su hadoop
  7. 新建文件夹并将文件夹拥有者改为hadoop:

    $ sudo mkdir /opt/modules
    
    $ sudo chown -R hadoop:hadoop /opt/modules
  8. 下载hadoop和JDK并将它们拷贝到/opt/modules/目录下:

    $ scp -P 9990 hadoop-2.9.2.tar.gz fofade@127.0.0.1:/opt/modules  # jdk类似

    提示:这里可以用sftp来传文件,我使用的是ubuntu18.04文件管理器自带的sftp传输。

  9. 解压文件(hadoop和jdk):

    $ tar -zxvf hadoop-2.9.2.tar.gz  # jdk解压方法类似
    # jdk 解压后如果虚拟机没有java环境的话,
    # 需要配置java环境,请自行配置!!!
  10. 配置hadoop:

    a. 环境变量:

    $ vim /etc/profile
    
    $ export HADOOP_HOME="/opt/modules/hadoop-2.9.2"
    
    $ export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    
    执行:source /etc/profile 使得配置生效

    b. 验证参数:

    $ echo $HADOOP_HOME  # 值为:/opt/modules/hadoop-2.5.0

    c. 配置 hadoop-env.sh、mapred-env.sh、yarn-env.sh文件的JAVA_HOME参数:

    $ sudo vim  ${HADOOP_HOME}/etc/hadoop/hadoop-env.sh
    
    修改JAVA_HOME参数为:
    
    $ export JAVA_HOME="/opt/modules/jdk1.8.0_181"

    d. 配置core-site.xml:

    $ sudo vim ${HADOOP_HOME}/etc/hadoop/core-site.xml  # 输入该命令
    # 在<configuration></cinfiguration>中添加以下内容
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://bigdata-senior01.chybinmy.com:8020</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/data/tmp</value>
    </property>

    e. 创建临时目录:

    $ sudo mkdir -p /opt/data/tmp  # 创建目录
    
    $ sudo chown -R hadoop:hadoop /opt/data/tmp  # 改目录拥有者
  11. 配置HDFS:

    a. 配置hdfs-site.xml:

    $ sudo vim ${HADOOP_HOME}/etc/hadoop/hdfs-site.xml
    # 在<configuration></cinfiguration>中添加以下内容
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>

    b. 格式化HDFS:

    $ hdfs namenode -format
    # 格式化后,查看/opt/data/tmp目录下是否有dfs目录
    # 如果有,说明格式化成功

    c. 检测结果:

    # 启动NameNode
    $ ${HADOOP_HOME}/sbin/hadoop-daemon.sh start namenode
    # 启动DataNode
    $ ${HADOOP_HOME}/sbin/hadoop-daemon.sh start datanode
    # 启动SecondaryNameNode
    $ ${HADOOP_HOME}/sbin/hadoop-daemon.sh start secondarynamenode
    # 再运行:
    $ jps
    # 如果有类似下面四条结果就是成功了:
    3034 NameNode
    
    3233 Jps
    
    3193 SecondaryNameNode
    
    3110 DataNode
    
  12. 配置YARN:

    a. 配置mapred-site.xml:

    $ cp ${HADOOP_HOME}/etc/hadoop/mapred-site.xml.template ${HADOOP_HOME}/etc/hadoop/mapred-site.xml
    $ sudo vim ${HADOOP_HOME}/etc/hadoop/mapred-site.xml
    # 在<configuration></cinfiguration>中添加以下内容
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

    b. 配置yarn-site.xml:

    $ sudo vim ${HADOOP_HOME}/etc/hadoop/yarn-site.xml
    # 在<configuration></cinfiguration>中添加以下内容
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>bigdata-senior01.chybinmy.com</value>
    </property>

    c. 启动Resourcemanager:

    $ ${HADOOP_HOME}/sbin/yarn-daemon.sh start resourcemanager

    d. 启动nodemanager:

    $ ${HADOOP_HOME}/sbin/yarn-daemon.sh start nodemanager

    e. 检测:

    # 再运行:
    $ jps
    # 如果有类似下面六条结果就是成功了:
    3034 NameNode
    
    4439 NodeManager
    
    4197 ResourceManager
    
    4543 Jps
    
    3193 SecondaryNameNode
    
    3110 DataNode
  13. 检查是否成功搭建伪分布式hadoop:

    # YARN的Web客户端端口号是8088,
    # 因为我们设置了虚拟机的端口转发,
    # 所以只需要主机访问127.0.0.1:9001就可以查看
    # 只要成功访问网站则说明搭建成功

搭建心得:

  1. 搭建当中最好不要重启虚拟机,如果重启了建议删除hadoop用户重新搭建

  2. 如果虚拟机没有配置java环境的话,会提示没有jps这条命令,所以你应当提前自己配置好虚拟机java环境

  3. 每次对环境进行修改后,最好使用source /etc/profile更新下配置

  4. 可以直接使用${HADOOP_HOME}/sbin/ 下的start_all.sh来快捷开始和stop_all.sh来快捷关闭hadoop服务

Hadoop伪分布式模式搭建的更多相关文章

  1. Hadoop伪分布式模式部署

    Hadoop的安装有三种执行模式: 单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置.Hadoop执行在一个Java进程中.使用本地文件系统.不使用HDFS, ...

  2. 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建

    CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...

  3. CentOS7下Hadoop伪分布式环境搭建

    CentOS7下Hadoop伪分布式环境搭建 前期准备 1.配置hostname(可选,了解) 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(p ...

  4. hadoop伪分布式平台搭建(centos 6.3)

    最近要写一个数据量较大的程序,所以想搭建一个hbase平台试试.搭建hbase伪分布式平台,需要先搭建hadoop平台.本文主要介绍伪分布式平台搭建过程. 目录: 一.前言 二.环境搭建 三.命令测试 ...

  5. 初学者值得拥有【Hadoop伪分布式模式安装部署】

    目录 1.了解单机模式与伪分布模式有何区别 2.安装好单机模式的Hadoop 3.修改Hadoop配置文件---五个核心配置文件 (1)hadoop-env.sh 1.到hadoop目录中 ​ 2.修 ...

  6. Hadoop伪分布式环境搭建+Ubuntu:16.04+hadoop-2.6.0

    Hello,大家好 !下面就让我带大家一起来搭建hadoop伪分布式的环境吧!不足的地方请大家多交流.谢谢大家的支持 准备环境: 1, ubuntu系统,(我在16.04测试通过.其他版本请自行测试, ...

  7. Hadoop伪分布式的搭建

    主要分为三个步骤:1.安装vmware虚拟机运行软件  2.在vmware虚拟机中安装linux操作系统   3.配置hadoop伪分布式环境 Hadoop环境部署-JDK部分------------ ...

  8. VM上Hadoop3.1伪分布式模式搭建

    https://www.cnblogs.com/asker009/p/9126354.html 最近要搭建一个Hadoop做实验,因为版本的问题遇到不少的坑,本文记录VM上搭建的CentOS7.0+H ...

  9. 《OD大数据实战》Hadoop伪分布式环境搭建

    一.安装并配置Linux 8. 使用当前root用户创建文件夹,并给/opt/下的所有文件夹及文件赋予775权限,修改用户组为当前用户 mkdir -p /opt/modules mkdir -p / ...

随机推荐

  1. 九度oj 题目1055:数组逆置

    题目1055:数组逆置 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8225 解决:3932 题目描述: 输入一个字符串,长度小于等于200,然后将数组逆置输出. 输入: 测试数据有多组 ...

  2. [luoguP1013] 进制位(搜索)

    传送门 纯搜索,无优化! #include <cstdio> #include <cstring> #include <iostream> #include < ...

  3. [luoguP1037] 产生数(floyd + 高精度)

    传送门 先用 floyd 求出每一个数可以变成那些数. 然后利用乘法原理求解,需要高精度. 代码 #include <cstdio> #include <cstring> #i ...

  4. Eclipse4.5在线安装Aptana插件及配置代码提示教程

    一.Aptana插件官网地址         我在网上试过登陆到aptana官网后点击下载,选择下载eclipse插件版,然后页面给出一串地址:http://download.aptana.com/s ...

  5. Android 4.4.2上与BLE 蓝牙锁设备的通讯

    Android从4.3(Api level 18)开始支持BLE的开发,本文记录了Android 4.4.2设备与BLE设备通讯的流程. 权限需求: <uses-permission andro ...

  6. 【CV论文阅读】+【搬运工】LocNet: Improving Localization Accuracy for Object Detection + A Theoretical analysis of feature pooling in Visual Recognition

    论文的关注点在于如何提高bounding box的定位,使用的是概率的预测形式,模型的基础是region proposal.论文提出一个locNet的深度网络,不在依赖于回归方程.论文中提到locne ...

  7. hdu1025 Constructing Roads In JGShining&#39;s Kingdom(二分+dp)

    转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1025 Problem ...

  8. Windows网络编程:winsock文件传输范例

    基于TCP流协议的winsock网络文件传输Demo: 实现:C语言 功能:文件传输(可以传任何格式的文件) /******************************************** ...

  9. Mariadb galera 集群

    部署galera 多主架构 (galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性.) 环境准备:三台服务器 ...

  10. Ubuntu18.04系统中vi键盘输入字符不匹配

    起因 今天重装了我的雷神笔记本的ubuntu18.04,不要问我为什么,我就是想复习下重装系统而已.好吧,我承认我改错文件启动不起来了. 于是我要重装jdk.maven and so on,但是当我用 ...