搭建伪分布式的Hadoop

一、Hadoop部署模式

(一)独立模式

  • 在独立模式下,所有程序都在单个JVM上执行,调试Hadoop集群的MapReduce程序也非常方便。一般情况下,该模式常用于学习或开发阶段进行调试程序。

(二)伪分布式模式

  • 在伪分布式模式下, Hadoop程序的守护进程都运行在一台节点上,该模式主要用于调试Hadoop分布式程序的代码,以及程序执行是否正确。伪分布式模式是完全分布式模式的一个特例。

(三)完全分布式模式

  • 在完全分布式模式下,Hadoop的守护进程分别运行在由多个主机搭建的集群上,不同节点担任不同的角色,在实际工作应用开发中,通常使用该模式构建企业级Hadoop系统。

二、搭建伪分布式Hadoop

(一)登录虚拟机

1.需要使用FinalShell连接虚拟机

  • 登录ied虚拟机
    在这里插入图片描述

(二)上传安装包

  • 上传jdk和hadoop安装包。
    在这里插入图片描述
  • 查看上传的安装包
    在这里插入图片描述

(三)配置免密登录

1、生成密钥对

  • 执行命令:ssh-keygen
    在这里插入图片描述
  • 执行命令后,连续敲回车,生成节点的公钥和私钥,生成的密钥文件会自动放在/root/.ssh目录下。
    在这里插入图片描述

2、将生成的公钥发送到本机

  • 执行命令:ssh-copy-id root@ied
    在这里插入图片描述

3、验证虚拟机是否能免密登录自己

  • 执行命令:ssh ied
    在这里插入图片描述

(四)配置JDK

1、解压到指定目录

(1)解压到指定目录
  • 执行命令:tar -zxvf jdk-8u231-linux-x64.tar.gz -C /usr/local
    在这里插入图片描述
(2)查看java解压目录
  • 执行命令:ll /usr/local/jdk1.8.0_231
    在这里插入图片描述

2、配置JDK环境变量

  • 执行命令:vim /etc/profile
    在这里插入图片描述
export JAVA_HOME=/usr/local/jdk1.8.0_231
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

  • 存盘退出
    在这里插入图片描述

3、让环境变量配置生效

  • 执行命令:source /etc/profile
    在这里插入图片描述

4、查看JDK版本

  • 执行命令:java -version
    在这里插入图片描述

(五)配置Hadoop

1、解压hadoop安装包

(1)解压到指定目录
  • 执行命令:tar -zxvf hadoop-3.3.4.tar.gz -C /usr/local
    在这里插入图片描述
(2)查看hadoop解压目录
  • 执行命令:ll /usr/local/hadoop-3.3.4
    在这里插入图片描述
(3)常用目录和文件
  • bin目录 - 存放命令脚本
    在这里插入图片描述

  • etc/hadoop目录 - 存放hadoop的配置文件
    在这里插入图片描述

  • ib目录 - 存放hadoop运行的依赖jar包
    在这里插入图片描述

  • sbin目录 - 存放启动和关闭Hadoop等命令
    在这里插入图片描述

2、配置hadoop环境变量

  • 执行命令:vim /etc/profile
    在这里插入图片描述
  • 说明:hadoop 2.x用不着配置用户,只需要前两行即可

3、让环境变量配置生效

  • 执行命令:source /etc/profile
    在这里插入图片描述

4、查看hadoop版本

  • 执行命令:hadoop version
    在这里插入图片描述

5、编辑Hadoop环境配置文件 - hadoop-env.sh

  • 执行命令:cd etc/hadoop,进入hadoop配置目录
    在这里插入图片描述
  • 执行命令:vim hadoop-env.sh,添加三条环境变量配置
    在这里插入图片描述
  • 存盘退出后,执行命令source hadoop-env.sh,让配置生效
    在这里插入图片描述

6、编辑Hadoop核心配置文件 - core-site.xml

  • 执行命令:vim core-site.xml
    在这里插入图片描述
<configuration>
   <!--用来指定hdfs的老大-->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://ied:9000</value>
    </property>
    <!--用来指定hadoop运行时产生文件的存放目录-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop-3.3.4/tmp</value>
    </property>
</configuration>

  • 由于配置了IP地址主机名映射,因此配置HDFS老大节点可用hdfs://ied:9000,否则必须用IP地址hdfs://192.168.1.100:9000
    在这里插入图片描述

7、编辑HDFS配置文件 - hdfs-site.xml

  • 执行命令:vim hdfs-site.xml
    在这里插入图片描述
<configuration>
    <!--设置名称节点的目录-->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop-3.3.4/tmp/namenode</value>
    </property>
    <!--设置数据节点的目录-->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop-3.3.4/tmp/datanode</value>
    </property>
    <!--设置辅助名称节点-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>ied:50090</value>
    </property>
    <!--hdfs web的地址,默认为9870,可不配置-->
    <!--注意如果使用hadoop2,默认为50070-->
    <property>
        <name>dfs.namenode.http-address</name>
        <value>0.0.0.0:9870</value>
    </property>
    <!--副本数,默认为3-->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <!--是否启用hdfs权限,当值为false时,代表关闭-->
    <property>
        <name>dfs.permissions.enabled</name>
        <value>false</value>
    </property>
</configuration>

8、编辑MapReduce配置文件 - mapred-site.xml

  • 执行命令:vim mapred-site.xml
    在这里插入图片描述
<configuration>
    <!--配置MR资源调度框架YARN-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
    <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
    <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>
    </property>
</configuration>

9、编辑YARN配置文件 - yarn-site.xml

  • 执行命令:vim yarn-site.xml
    在这里插入图片描述
<configuration>
    <!--配置资源管理器:ied-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>ied</value>
    </property>
    <!--配置节点管理器上运行的附加服务-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!--关闭虚拟内存检测,在虚拟机环境中不做配置会报错-->
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

10、编辑workers文件确定数据节点

  • 说明:hadoop-2.x里配置slaves文件,hadoop-3.x里配置workers文件
  • 执行命令:vim workers
    在这里插入图片描述
  • 只有1个数据节点,正好跟副本数配置的1一致

(六)格式化名称节点

  • 执行命令:hdfs namenode -format
    在这里插入图片描述
  • Storage directory /usr/local/hadoop-3.3.4/tmp/namenode has been successfully formatted. 表明名称节点格式化成功。
    在这里插入图片描述

(七)启动Hadoop服务

1、启动hdfs服务
  • 执行命令:start-dfs.sh
    在这里插入图片描述
2、启动yarn服务
  • 执行命令:start-yarn.sh
    在这里插入图片描述
3、查看Hadoop进程
  • 执行命令:jps
    在这里插入图片描述
  • 说明:start-dfs.shstart-yarn.sh可以用一条命令start-all.sh来替换
    在这里插入图片描述
  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值