Hadoop学习之路Hadoop集群搭建和简单应用
目录 概念了解 集群服务器规划 软件安装步骤概述 Hadoop安装
1、规划
2、上传解压缩
3、修改配置文件
4、把安装包分别分发给其他的节点
5、配置Hadoop环境变量
6、查看hadoop版本
7、Hadoop初始化
8、启动
9、查看4台服务器的进程
10、启动HDFS和YARN的web管理界面 Hadoop的简单使用
创建文件夹
查看创建的文件夹
上传文件
下载文件
运行一个mapreduce的例子程序: wordcount 正文概念了解
主从结构:在一个集群中,会有部分节点充当主服务器的角色,其他服务器都是从服务器的角色,当前这种架构模式叫做主从结构。
主从结构分类:
1、一主多从
2、多主多从
Hadoop中的HDFS和YARN都是主从结构,主从结构中的主节点和从节点有多重概念方式:
1、主节点 从节点
2、master slave
3、管理者 工作者
4、leader follower
Hadoop集群中各个角色的名称:
服务
主节点
从节点
HDFS
NameNode
DataNode
YARN
ResourceManager
NodeManager
集群服务器规划
使用4台CentOS-6.7虚拟机进行集群搭建
软件安装步骤概述
1、获取安装包
2、解压缩和安装
3、修改配置文件
4、初始化,配置环境变量,启动,验证 Hadoop安装1、规划
规划安装用户:hadoop
规划安装目录:/home/hadoop/apps
规划数据目录:/home/hadoop/data
注:apps和data文件夹需要自己单独创建 2、上传解压缩
注:使用hadoop用户 [hadoop@hadoop1 apps]$ ls hadoop-2.7.5-centos-6.7.tar.gz [hadoop@hadoop1 apps]$ tar -zxvf hadoop-2.7.5-centos-6.7.tar.gz 3、修改配置文件
配置文件目录:/home/hadoop/apps/hadoop-2.7.5/etc/hadoop
A. hadoop-env.sh[hadoop@hadoop1 hadoop]$ vi hadoop-env.sh
修改JAVA_HOME export JAVA_HOME=/usr/local/jdk1.8.0_73
B. core-site.xml [hadoop@hadoop1 hadoop]$ vi core-site.xml
fs.defaultFS : 这个属性用来指定namenode的hdfs协议的文件系统通信地址,可以指定一个主机+端口,也可以指定为一个namenode服务(这个服务内部可以有多台namenode实现ha的namenode服务
hadoop.tmp.dir : hadoop集群在工作的时候存储的一些临时文件的目录 fs.defaultFS hdfs://hadoop1:9000 hadoop.tmp.dir /home/hadoop/data/hadoopdata
C. hdfs-site.xml [hadoop@hadoop1 hadoop]$ vi hdfs-site.xml
dfs.namenode.name.dir:namenode数据的存放地点。也就是namenode元数据存放的地方,记录了hdfs系统中文件的元数据。
dfs.datanode.data.dir: datanode数据的存放地点。也就是block块存放的目录了。
dfs.replication:hdfs的副本数设置。也就是上传一个文件,其分割为block块后,每个block的冗余副本个数,默认配置是3。
dfs.secondary.http.address:secondarynamenode 运行节点的信息,和 namenode 不同节点 dfs.namenode.name.dir /home/hadoop/data/hadoopdata/name 为了保证元数据的安全一般配置多个不同目录 dfs.datanode.data.dir /home/hadoop/data/hadoopdata/data datanode 的数据存储目录 dfs.replication 2 HDFS 的数据块的副本存储个数, 默认是3 dfs.secondary.http.address hadoop3:50090 secondarynamenode 运行节点的信息,和 namenode 不同节点
D. mapred-site.xml [hadoop@hadoop1 hadoop]$ cp mapred-site.xml.template mapred-site.xml [hadoop@hadoop1 hadoop]$ vi mapred-site.xml
mapreduce.framework.name:指定mr框架为yarn方式,Hadoop二代MP也基于资源管理系统Yarn来运行 。 mapreduce.framework.name yarn
E. yarn-site.xml [hadoop@hadoop1 hadoop]$ vi yarn-site.xml
yarn.resourcemanager.hostname:yarn总管理器的IPC通讯地址
yarn.nodemanager.aux-services: yarn.resourcemanager.hostname hadoop4 yarn.nodemanager.aux-services mapreduce_shuffle YARN 集群为 MapReduce 程序提供的 shuffle 服务
F. slaves [hadoop@hadoop1 hadoop]$ vi slaves hadoop1 hadoop2 hadoop3 hadoop4
4、把安装包分别分发给其他的节点
重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致
重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致
重点强调: 每台服务器中的hadoop安装包的目录必须一致, 安装包的配置信息还必须保持一致 [hadoop@hadoop1 hadoop]$ scp -r ~/apps/hadoop-2.7.5/ hadoop2:~/apps/ [hadoop@hadoop1 hadoop]$ scp -r ~/apps/hadoop-2.7.5/ hadoop3:~/apps/ [hadoop@hadoop1 hadoop]$ scp -r ~/apps/hadoop-2.7.5/ hadoop4:~/apps/
注意:上面的命令等同于下面的命令 [hadoop@hadoop1 hadoop]$ scp -r ~/apps/hadoop-2.7.5/ hadoop@hadoop2:~/apps/5、配置Hadoop环境变量
千万注意:
1、如果你使用root用户进行安装。 vi /etc/profile 即可 系统变量
2、如果你使用普通用户进行安装。 vi ~/.bashrc 用户变量 [hadoop@hadoop1 ~]$ vi .bashrcexport HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.5 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:
使环境变量生效 [hadoop@hadoop1 bin]$ source ~/.bashrc 6、查看hadoop版本[hadoop@hadoop1 bin]$ hadoop version Hadoop 2.7.5 Subversion Unknown -r Unknown Compiled by root on 2017-12-24T05:30Z Compiled with protoc 2.5.0 From source with checksum 9f118f95f47043332d51891e37f736e9 This command was run using /home/hadoop/apps/hadoop-2.7.5/share/hadoop/common/hadoop-common-2.7.5.jar [hadoop@hadoop1 bin]$
7、Hadoop初始化
注意:HDFS初始化只能在主节点上进行 [hadoop@hadoop1 ~]$ hadoop namenode -format
View Code
8、启动
A. 启动HDFS
注意:不管在集群中的那个节点都可以 [hadoop@hadoop1 ~]$ start-dfs.sh Starting namenodes on [hadoop1] hadoop1: starting namenode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-namenode-hadoop1.out hadoop3: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop3.out hadoop2: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop2.out hadoop4: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop4.out hadoop1: starting datanode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-datanode-hadoop1.out Starting secondary namenodes [hadoop3] hadoop3: starting secondarynamenode, logging to /home/hadoop/apps/hadoop-2.7.5/logs/hadoop-hadoop-secondarynamenode-hadoop3.out [hadoop@hadoop1 ~]$
B. 启动YARN
注意:只能在主节点中进行启动 [hadoop@hadoop4 ~]$ start-yarn.sh starting yarn daemons starting resourcemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-resourcemanager-hadoop4.out hadoop2: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop2.out hadoop3: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop3.out hadoop4: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop4.out hadoop1: starting nodemanager, logging to /home/hadoop/apps/hadoop-2.7.5/logs/yarn-hadoop-nodemanager-hadoop1.out [hadoop@hadoop4 ~]$
9、查看4台服务器的进程
hadoop1
hadoop2
hadoop3
hadoop4
10、启动HDFS和YARN的web管理界面
HDFS : http://192.168.123.102:50070
YARN : http://hadoop05:8088
疑惑: fs.defaultFS = hdfs://hadoop02:9000
解答:客户单访问HDFS集群所使用的URL地址
同时,HDFS提供了一个web管理界面 端口:50070 HDFS界面
点击Datanodes可以查看四个节点
YARN界面
点击Nodes可以查看节点
Hadoop的简单使用创建文件夹
在HDFS上创建一个文件夹/test/input [hadoop@hadoop1 ~]$ hadoop fs -mkdir -p /test/input查看创建的文件夹
[hadoop@hadoop1 ~]$ hadoop fs -ls / Found 1 items drwxr-xr-x - hadoop supergroup 0 2018-03-03 11:33 /test [hadoop@hadoop1 ~]$ hadoop fs -ls /test Found 1 items drwxr-xr-x - hadoop supergroup 0 2018-03-03 11:33 /test/input [hadoop@hadoop1 ~]$
上传文件
创建一个文件words.txt [hadoop@hadoop1 ~]$ vi words.txthello zhangsan hello lisi hello wangwu
上传到HDFS的/test/input文件夹中 [hadoop@hadoop1 ~]$ hadoop fs -put ~/words.txt /test/input
查看是否上传成功 [hadoop@hadoop1 ~]$ hadoop fs -ls /test/input Found 1 items -rw-r--r-- 2 hadoop supergroup 39 2018-03-03 11:37 /test/input/words.txt [hadoop@hadoop1 ~]$
下载文件
将刚刚上传的文件下载到~/data文件夹中 [hadoop@hadoop1 ~]$ hadoop fs -get /test/input/words.txt ~/data
查看是否下载成功 [hadoop@hadoop1 ~]$ ls data hadoopdata words.txt [hadoop@hadoop1 ~]$
运行一个mapreduce的例子程序: wordcount[hadoop@hadoop1 ~]$ hadoop jar ~/apps/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.5.jar wordcount /test/input /test/output
在YARN Web界面查看
查看结果 [hadoop@hadoop1 ~]$ hadoop fs -ls /test/output Found 2 items -rw-r--r-- 2 hadoop supergroup 0 2018-03-03 11:42 /test/output/_SUCCESS -rw-r--r-- 2 hadoop supergroup 35 2018-03-03 11:42 /test/output/part-r-00000 [hadoop@hadoop1 ~]$ hadoop fs -cat /test/output/part-r-00000 hello 3 lisi 1 wangwu 1 zhangsan 1 [hadoop@hadoop1 ~]$
如何解决文明霸业王者归来网络不稳定网络连接失败的情况从2022114开始,文明霸业与金刚骷髅岛正式联动开始!在游戏内不仅出现金刚角色,还有男主JamesConrad和女主MasonWeaver将会陆续在游戏内登场!另外还会开展更多联
关于游戏历史的有趣问题2最近想就游戏的历史问题做个持续的探讨。第一款真正意义上的网络游戏可追溯到1969年,当时瑞克布罗米为PLATO(ProgrammedLogicforAutomaticTeachin
歌唱家张也单身54岁无子女,与男闺蜜吕继宏的感情让人羡慕2022年1月31日,著名演唱家国家一级演员张也,第27次登上央视春晚的舞台。她和好友吕继宏演唱歌曲我们的时代,富有艺术性和穿透力的歌声,贯穿整个舞台,唱响了新的时代。张也拥有金嗓
杨丞琳被曝怀孕后近况曝光,与老公挽手秀恩爱,结婚3年感情稳定饿了吗?戳右边关注我们,每天给您送上最新出炉的娱乐硬核大餐!11月18日,有八卦媒体拍到一组李荣浩杨丞琳夫妇深夜前往井柏然家做客的视频,两人一直玩到凌晨才出来。出来以后杨丞琳挽着李
感情里开始对你腻了的表现,别傻傻不懂一段感情里,男生和女生的感情变化是相反的。刚在一起的时候,女生是没那么喜欢对方的,随着在一起的时间加长,她会越来越喜欢和依赖对方。男生则是正相反,他们的感情会逐渐减淡,会腻会厌倦。
有一种尴尬,叫关晓彤走红毯,壮汉出笼凹出赘肉,十次丑八次关晓彤的造型怎么又又又被吐槽了?金鸡奖的红毯上,关晓彤身穿分体式黑白礼服,这么素的搭配竟然穿得又丑又壮,肩臀同宽,没有曲线美,明明是个瘦腰,却凸了两坨肉,妆发过分妖艳,真的不贴关晓
未解之谜UFO外星人真的存在吗?一个世纪以来,在人类文明的发展进程中,有着许许多多未解之谜,或为世人所知,或为世界所传颂。而在众多未解之谜中,外星人无疑是最神秘的。这是个被西方科学界称为大科学时代最神秘和最有影响
百达翡丽Aquanaut计时码表5968A百达翡丽(PatekPhilippe)在2018年的Baselworld上继续给我们带来惊喜。在Nautilus上推出了一个相当出人意料的万年历之后,该品牌现在推出了Aquanau
C罗女友新形象翻车,身材发福严重,身体10处整形,骨盆畸形暴露C罗女友乔治娜参加2022年拉丁唱片学院年度人物晚会,盛装打扮,然而新形象却翻车了。乔治娜穿了一条浅蓝色,上面满布宝石,紧身的抹胸晚礼裙。很明显,乔治娜希望展示自己的身材,好成为晚
盘点百家姓之罗姓本期,小编给大家盘点一下目前百家姓排名第二十位的罗姓。罗姓,源自于史书称为祝融八姓的后裔。公元前690年,罗国(河南罗山)被楚国所灭,于原地另置鄢国(河南鄢陵)。罗氏的子孙逐渐南移
30岁的明武宗死于豹房,豹房到底是什么?为何让女子惧怕1505年,明朝的第十位皇帝登基,这时的明朝已经走过了138年的春秋。后世将这位皇帝称之为正德帝。这位仁兄是明朝皇帝中最能闹腾的一位,干出的荒唐事是一件接着一件。据说清朝皇子贝勒在