Hadoop集群搭建管理(四节点集成)

网友投稿 307 2022-11-19

Hadoop集群搭建管理(四节点集成)

文章目录

​​Hadoop的安装与配置​​

​​1、创建hadoop用户。​​​​2、设置Master节点机ssh无密码登录Slave节点机​​​​3、使用WinSCP上传hadoop-2.7.2.tar.gz软件包到node1节点机的root目录下。​​​​4、解压文件,安装文件。​​​​5、修改hadoop配置文件(共6个)​​​​6、修改“/home/hadoop/”文件用户主/组属性。​​​​7、将配置好的hadoop系统复制到其他节点机上。​​​​8、分别root用户登录node2,node3,node4节点机,修改 “/home/hadoop/”文件用户主/组属性。​​

​​Hadoop的管理​​

​​1、格式化NameNode。​​​​2、启动、停止hadoop服务。​​​​3、查看集群状态。​​​​4、查看文件块组成。​​​​5、使用浏览器浏览Master节点机 Shell命令​​

​​1、在hdfs创建gdu目录​​​​2、在hdfs查看当前目录。​​​​3、在本地系统编辑文件jie.txt。​​​​4、从hdfs中下载文件。​​​​5、查看hdfs中/swvtc/jie.txt的内容。​​​​6、Hadoop常用的一些命令​​​​7、Hadoop其他一些命令​​

四台机分别为node1:192.168.23.111;node2:192.168.23.112;node3:192.168.23.113;node4:192.168.23.114

Hadoop的安装与配置

配置好网络、yum源及关闭防火墙和做好主机映射,并ssh免密互通

1、创建hadoop用户。

分别在四台节点机上创建用户hadoop,uid=660,密码都设置为123456

2、设置Master节点机ssh无密码登录Slave节点机

详细参考同专栏里的《密码学基础及ssh实现多节点间无密码访问》

3、使用WinSCP上传hadoop-2.7.2.tar.gz软件包到node1节点机的root目录下。

如果hadoop软件包在node1节点机上编译,则把编译好的包拷贝到root目录下即可。

4、解压文件,安装文件。

[root@node1 ~]# tar xvzf hadoop-2.7.2.tar.gz [root@node1 ~]# cd hadoop-2.7.2/[root@node1 hadoop-2.7.2]# mv * /home/hadoop

5、修改hadoop配置文件(共6个)

Hadoop配置文件主要有:hadoop-env.sh、yarn-env.sh、slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml。配置文件在/home/hadoop/etc/hadoop/目录下,进入该目录进行配置。

[root@node1 hadoop-2.7.2]# cd /home/hadoop/etc/hadoop/

1)修改hadoop-env.sh,将文件中的export JAVA_HOME=${JAVA_HOME}

修改为export JAVA_HOME=/usr/lib/jvm/java-1.8.0 。(可以利用java - version查看版本,若没有安装要先安装)

yum -y install java-1.8.0-openjdk*#node1、node2、node3、node4都需要安装

2)修改slaves,该文件登记DataNode节点主机名,本处添加node2,node3,node4三台节点主机名。

3)修改core-site.xml,将文件中的 ​​​​修改为如下内容。

fs.defaultFS hdfs://node1:9000 #其中node1为集群的NameNode(Master)节点机,node1可以使用IP地址表示。 io.file.buffer.size 131072 hadoop.tmp.dir file:/home/hadoop/tmp Abase for other temporary directories. hadoop.proxyuser.hadoop.hosts * hadoop.proxyuser.hadoop.groups *

4)修改hdfs-site.xml,将文件中的​​​​修改为如下内容。

dfs.namenode.secondary. node1:9001 dfs.namenode.name.dir file:/home/hadoop/dfs/name dfs.datanode.data.dir file:/home/hadoop/dfs/data dfs.replication 3 dfs.webhdfs.enabled true

第二个NameNode也使用node1节点机,NameNode产生的数据存放在/home/hadoop/dfs/name目录下,DataNode产生的数据存在/home/hadoop/dfs/data目录下,设置备份数量3份。

5)将文件mapred-site.xml.template改名为mapred-site.xml。

[root@node1 hadoop]# mv mapred-site.xml.template mapred-site.xml

将文件中的​​​​修改为如下内容。

mapreduce.framework.name yarn mapreduce.jobhistory.address node1:10020 mapreduce.jobhistory.webapp.address node1:19888

6)修改yarn-site.xml,将文件中的​​​​修改为如下内容。

yarn.resourcemanager.hostname 192.168.23.111 yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.aux-services.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler yarn.resourcemanager.address node1:8032 yarn.resourcemanager.scheduler.address node1:8030 yarn.resourcemanager.resource-tracker.address node1:8031 yarn.resourcemanager.admin.address node1:8033 yarn.resourcemanager.webapp.address node1:8088

6、修改“/home/hadoop/”文件用户主/组属性。

[root@node1 hadoop]# chown -R hadoop:hadoop /home/hadoop

7、将配置好的hadoop系统复制到其他节点机上。

[root@node1 hadoop]# scp -r * hadoop@node4:/home/hadoop[root@node1 hadoop]# scp -r * hadoop@node3:/home/hadoop[root@node1 hadoop]# scp -r * hadoop@node2:/home/hadoop

8、分别root用户登录node2,node3,node4节点机,修改 “/home/hadoop/”文件用户主/组属性。

chown -R hadoop:hadoop /home/hadoop #node2、node3、node4执行命令

Hadoop的管理

Hadoop系统搭建完成后,需要对NameNode节点进行格式化,启动相关服务,检查运行状态。

1、格式化NameNode。

登录node1节点机,以用户hadoop登录或su – hadoop登录,格式化NameNode。

[hadoop@node1 ~]$ hadoop namenode -format #不要多次格式化,如果出现bug,请按照配置文件路径删除缓存

最后显示有“successfully formatted.”表示格式化成功。

2、启动、停止hadoop服务。

进入/home/hadoop/sbin/,可以看到目录的脚本程序。

1)运行start-dfs.sh脚本程序。

2)运行yarn脚本程序。

3)分别检查每台节点机运行情况。

4)停止hadoop服务,停止服务后,后面操作无法进行,这步暂时不操作

stop-yarn.shstop-dfs.sh

5)可以使用all来启动关闭所有节点

[hadoop@node1 ~]$ vim .bash_profile

[hadoop@node1 ~]$ source .bash_profile

3、查看集群状态。

[hadoop@node1 ~]$ hdfs dfsadmin -report #执行此条命令,显示内容如下,注意Live datanodes(3) 如果没有3则集成失败的 Configured Capacity: 54716792832 (50.96 GB) Present Capacity: 48293249024 (44.98 GB) DFS Remaining: 48293236736 (44.98 GB) DFS Used: 12288 (12 KB) DFS Used%: 0.00% Under replicated blocks: 0 Blocks with corrupt replicas: 0 Missing blocks: 0 Missing blocks (with replication factor 1): 0

Live datanodes (3): Name: 192.168.23.112:50010 (node2) Hostname: node2 Decommission Status Normal Configured Capacity: 18238930944 (16.99 GB) DFS Used: 4096 (4 KB) Non DFS Used: 2141077504 (1.99 GB) DFS Remaining: 16097849344 (14.99 GB) DFS Used%: 0.00% DFS Remaining%: 88.26% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Jul 29 18:09:15 CST 2021 Name: 192.168.23.113:50010 (node3) Hostname: node3 Decommission Status Normal Configured Capacity: 18238930944 (16.99 GB) DFS Used: 4096 (4 KB) Non DFS Used: 2141249536 (1.99 GB) DFS Remaining: 16097677312 (14.99 GB) DFS Used%: 0.00% DFS Remaining%: 88.26% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Jul 29 18:09:15 CST 2021 Name: 192.168.23.114:50010 (node4) Hostname: node4 Decommission Status Normal Configured Capacity: 18238930944 (16.99 GB) DFS Used: 4096 (4 KB) Non DFS Used: 2141216768 (1.99 GB) DFS Remaining: 16097710080 (14.99 GB) DFS Used%: 0.00% DFS Remaining%: 88.26% Configured Cache Capacity: 0 (0 B) Cache Used: 0 (0 B) Cache Remaining: 0 (0 B) Cache Used%: 100.00% Cache Remaining%: 0.00% Xceivers: 1 Last contact: Thu Jul 29 18:09:18 CST 2021

4、查看文件块组成。

5、使用浏览器浏览Master节点机 Shell命令

为方便对hdfs文件系统和作业提交的操作,hadoop提供了一些基本的shell操作,这些基本操作与linux下的操作有很多相似性。shell操作的基本命令格式为:hdfs dfs -cmd 其中,-cmd为为具体的操作命令如-cp(复制命令)。

1、在hdfs创建gdu目录

[hadoop@node1 ~]$ hdfs dfs -mkdir /gdu

2、在hdfs查看当前目录。

3、在本地系统编辑文件jie.txt。

[hadoop@node1 ~]$ vim jie.txt

[hadoop@node1 ~]$ hdfs dfs -put jie.txt /gdu

4、从hdfs中下载文件。

[hadoop@node1 ~]$ hdfs dfs -get /gdu/jie.txt

5、查看hdfs中/swvtc/jie.txt的内容。

6、Hadoop常用的一些命令

命令介绍如下:

> hdfs dfs -ls #查看指定目录下文件hdfs dfs -cat #查看文件内容hdfs dfs -put #将本地文件或目录存储至hadoophdfs dfs -get #将hadoop文件下载至本地hdfs dfs -rm #删除hadoop文件hdfs dfs -rmr #删除hadoop上指定文件夹(包含子目录等)hdfs dfs -mkdir #在hadoop创建新目录hdfs dfs -touchz #在hadoop新建一个空文件hdfs dfs -mv #将hadoop文件重命名hdfs dfs -getmerge #将hadoop指定目录下所有内容 #保存为一个文件,同时下载至本地hadoop job -kill #将正在运行的hadoop作业杀掉hadoop jar #递归地拷贝文件或目录

7、Hadoop其他一些命令

命令介绍如下:

1)运行HDFS文件系统检查工具(fsck tools)

用法:

hadoop fsck [GENERIC_OPTIONS] [-move | -delete | -openforwrite] [-files [-blocks [-locations | -racks]]]选项: 检查的起始目录。-move 移动受损文件到/lost+found-delete 删除受损文件。-openforwrite 打印写打开的文件。-files 打印正被检查的文件。-blocks 打印块信息。-locations 打印出每个块的位置信息。-racks 打印出data-node的网络拓扑结构。

2)用于和Map Reduce作业交互的命令(jar)

用法:

hadoop job [GENERIC_OPTIONS] [-submit ] | [-status ] | [-counter ] | [-kill ] | [-events <#-of-events>] | [-history [all] ] | [-list [all]] | [-kill-task ] | [-fail-task ]选项:-submit 提交作业-status 打印map和reduce完成百分比和所有计数器。-counter 打印计数器的值。-kill 杀死指定作业。-events <#-of-events> 打印给定范围内jobtracker 接收到的事件细节。-history [all] -history 打印作业的细节、失败 及被杀死原因的细节。更多的关于一个作业的细节比如成功的 任务,做过的任务尝试等信息可以通过指定[all]选项查看。-list [all] -list all 显示所有作业。-list只显示将要完成的作业。-kill-task 杀死任务。被杀死的任务不会不利于失败尝试。-fail-task 使任务失败。被失败的任务会对失败尝试不利。

3)运行pipes作业

用法:

hadoop pipes [-conf] [-jobconf, , ...] [-input ] [-output ] [-jar ] [-inputformat] [-map ] [-partitioner] [-reduce ] [-writer ] [-program ] [-reduces ]选项:-conf 作业的配置-jobconf, , ... 增加/覆盖作业的配置项-input 输入目录-output 输出目录-jar Jar文件名-inputformat InputFormat类-map Java Map类-partitioner Java Partitioner-reduce Java Reduce类-writer Java RecordWriter-program 可执行程序的URI-reduces reduce个数

4)运行一个HDFS的dfsadmin客户端

用法:

hadoop dfsadmin [GENERIC_OPTIONS] [-report] [-safemode enter | leave | get | wait] [-refreshNodes] [-finalizeUpgrade] [-upgradeProgress status | details | force] [-metasave filename] [-setQuota...] [-clrQuota...] [-help [cmd]]选项:-report 报告文件系统的基本信息和统计信息。-safemode enter | leave | get | wait 安全模式维护命令。-refreshNodes 重新读取hosts和exclude文件,更新允许连到Namenode的 或那些需要退出或入编的Datanode的集合。-finalizeUpgrade 终结HDFS的升级操作。-upgradeProgress status | details | force 请求当前系统的升级状态, 状态的细节,或者强制升级操作进行。-metasave filename 保存Namenode的主要数据结构到hadoop.log.dir属性指定 的目录下的文件。-setQuota... 为每个目录 设定配额。 目录配额是一个长整型整数,强制限定了目录树下的名字个数。-clrQuota... 为每一个目录清除配额设定。-help [cmd] 显示给定命令的帮助信息。

5)运行namenode。

用法:

hadoop namenode [-format] | [-upgrade] | [-rollback] | [-finalize] | [-importCheckpoint]选项:-format 格式化namenode。-upgrade 分发新版本的hadoop后,namenode应以upgrade选项启动。-rollback 将namenode回滚到前一版本。-finalize finalize 会删除文件系统的前一状态。-importCheckpoint 从检查点目录装载镜像并保存到当前检查点目录, 检查点目录由fs.checkpoint.dir指定。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:全新CrossLinkPlus FPGA利用MIPI组件加快嵌入式视觉系统的设计
下一篇:Hadoop的编译打包
相关文章

 发表评论

暂时没有评论,来抢沙发吧~