Hadoop(二)搭建伪分布式集群

Hadoop(二)搭建伪分布式集群

2023年7月26日发(作者:)

Hadoop(⼆)搭建伪分布式集群前⾔  前⾯只是⼤概介绍了⼀下Hadoop,现在就开始搭建集群了。我们下尝试⼀下搭建⼀个最简单的集群。之后为什么要这样搭建会慢慢的分享,先要看⼀下效果吧!⼀、Hadoop的三种运⾏模式(启动模式)1.1、单机模式(独⽴模式)(Local或Standalone Mode)  -默认情况下,Hadoop即处于该模式,⽤于开发和调式。  -不对配置⽂件进⾏修改。  -使⽤本地⽂件系统,⽽不是分布式⽂件系统。  -Hadoop不会启动NameNode、DataNode、JobTracker、TaskTracker等守护进程,Map()和Reduce()任务作为同⼀个进程的不同部分来执⾏的。  -⽤于对MapReduce程序的逻辑进⾏调试,确保程序的正确。1.2、伪分布式模式(Pseudo-Distrubuted Mode)  -Hadoop的守护进程运⾏在本机机器,模拟⼀个⼩规模的集群   -在⼀台主机模拟多主机。  -Hadoop启动NameNode、DataNode、JobTracker、TaskTracker这些守护进程都在同⼀台机器上运⾏,是相互独⽴的Java进程。  -在这种模式下,Hadoop使⽤的是分布式⽂件系统,各个作业也是由JobTraker服务,来管理的独⽴进程。在单机模式之上增加了代码调试功能,允许检查内存使⽤情况,HDFS输⼊输出,    以及其他的守护进程交互。类似于完全分布式模式,因此,这种模式常⽤来开发测试Hadoop程序的执⾏是否正确。  -修改3个配置⽂件:(Hadoop集群的特性,作⽤于全部进程及客户端)、(配置HDFS集群的⼯作属性)、(配置MapReduce集群的属性)  -格式化⽂件系统1.3、全分布式集群模式(Full-Distributed Mode)  -Hadoop的守护进程运⾏在⼀个集群上   -Hadoop的守护进程运⾏在由多台主机搭建的集群上,是真正的⽣产环境。  -在所有的主机上安装JDK和Hadoop,组成相互连通的⽹络。  -在主机间设置SSH免密码登录,把各从节点⽣成的公钥添加到主节点的信任列表。  -修改3个配置⽂件:、、,指定NameNode和JobTraker的位置和端⼝,设置⽂件的副本等参数  -格式化⽂件系统⼆、搭建伪分布式集群的前提条件环境:在ubuntu17.04    jdk1.8.0_131    hadoop 2.8.12.1、能够正常运⾏的Ubuntu操作系统  在Ubuntu下,软件安装到/opt下,当前正在使⽤的⽤户,对于opt⽬录需要有读写权限:   1)将opt的权限给为777(漏洞⽂件),不推荐在⽣产环境中使⽤。但是可以在学习和调试环境中使⽤。       2)sudo    在启动Hadoop的各个守护进程的时候,需要使⽤sudo。    在管理Hadoop的时候,实际上由不同的⽤户启动不同集群的守护进程。    统⼀使⽤当前的⽤户管理所有集群。  3)该⽬录的所有者设置为当前⽤户2.2、安装JDK,并配置环境变量  1)将jdk安装包放在家⽬录下  2)解压到opt⽬录下    sudo tar zxvf -C /opt    此时在/opt⽬录下:会有⼀个jdk1.8.0_131  3)创建软链接    sudo ln -snf /opt/jdk1.8.0_131 /opt/jdk        注意:创建软连接的⽬的是为了,我们在做项⽬的时候,可能会⽤到不同的jdk版本,这是要换软件的话,只需要修改软链接就可以了。⽽不⽤修改配置⽂件。  4)配置环境变量       局部环境变量:~/.bashrc    全局环境变量:/etc/profile    export JAVA_HOME=/opt/jdk    export JRE_HOME=$JAVA_HOME/jre    export CLASSPATH=.:$JAVA_HOME/lib    export PATH=$PATH:$JAVA_HOME/bin    source 相关⽂件(更新配置⽂件)  5)查看是否安装成功   java、javac、java -version三、搭建伪分布式集群3.1、安装hadoop  1)解压hadoop安装包到opt⽬录下    sudo tar zxvf -C /opt  2)创建软链接    ln -snf /opt/hadoop-2.8.1 /opt/hadoop        3)配置环境变量      在/etc/profile⽂件中加⼊以下内容:    export HADOOP_HOME=/opt/hadoop    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin    source /etc/profile  4)使⽤hadoop version命令测试是否配置成功    3.2、配置hadoop  配置⽂件存放在/opt/hadoop/etc/hadoop中有n多个⽂件,暂时我们只需要修改的只有5个  1)    ⼤约在25⾏左右     export JAVA_HOME=${JAVA_HOME}改成export JAVA_HOME=/opt/jdk        注意:在配置⽂件中有提⽰我们怎么设置,我们⼀般不删除,⼆回选择注释它的提⽰。  2)        tFS hdfs://1.0.0.5:9000

      分析:1.0.0.5是你主节点所在主机的ip,⽽9000为端⼝  3)    rvices hadoop-cluster file:///data/hadoop/hdfs/nn file:///data/hadoop/hdfs/snn file:///data/hadoop/hdfs/snn file:///data/hadoop/hdfs/dn       4)    在hadoop的相关⽬录中没有此⽂件,但是有⼀个te⽂件,将该⽂件复制⼀份为    cp te yarn       5) me 1.0.0.5 -services mapreduce_shuffle -dirs file:///data/hadoop/yarn/nm       7)创建相关⽬录 sudo mkdir -p /data/hadoop/hdfs/nn sudo mkdir -p /data/hadoop/hdfs/dn sudo mkdir -p /data/hadoop/hdfs/snn sudo mkdir -p /data/hadoop/yarn/nm   注意:      如果使⽤sudo启动hadoop的相关进程,这⼏⽬录的权限可以不⽤管。    如果是使⽤当前的⽤户启动相关进程,对于opt⽬录,当前⽤户得有读写权限,对于/data⽬录也需要读写权限。   遇到问题:      笔者就是在这个⽬录权限的问题吃el很⼤得亏。⾸先为了不使⽤sudo我将/data⽬录的权限修改为777,然后进⾏      HDFS集群格式化的时候,出现:              这时我在想为什么呢?原来我只是给data⽬录设置了读写权限,但是没有给它的⼦⽬录设置读写权限。所以:            chmod -R 777 /data 递归设置权限  8)对HDFS集群进⾏格式化,HDFS集群是⽤来存储数据的。      hdfs namenode -format3.3、启动集群  1)启动HDFS集群           start namenode 启动主节点     start datanode 启动从节点      2)启动YARN集群     start resourcemanager     start nodemanager      3)启动作业历史服务器     start historyserver      4)jps命令查看是否启动成功      5)HDFS和YARN集群都有相对应的WEB监控页⾯    HDFS:ip:50070        YARN:ip:8088      6)HDFS集群的简单操作命令    hdfs dfs -ls /        hdfs dfs -mkdir -p /user/zyh      7) YARN集群的操作----提交任务/作业    计算PI值的作业:    yarn jar /opt/hadoop/share/hadoop/mapreduce/ pi 4 100    四、⼀个问题我之前没有注意发现我的yarn的从节点没有启动起来,在执⾏计算PI值的时候没有成功才看到:  查看⽇志发现是配置⽂件:  在中:      查看1.0.0.5:50070可以查看从节点是否启动:      在执⾏上⾯使⽤yarn集群来计算pi值得命令:      查看1.0.0.5:8088可以看出计算pi值得任务正在执⾏:      最后成功:     这⾥就截图了,电脑卡住了,上图中在web页⾯可以查看到任务执⾏成功,终端中会显⽰执⾏结果!     

喜欢就点“推荐”哦!

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1690379338a340666.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信