第二次课:hadoop集群概述以及搭建


(1)znode操作总结

首先 先在node01 node02 node03上分别重新启动 切换到hadoop用户

第二步;在hadoop用户下 ,启动zookeeper的服务器端 三台电脑都需要这么做

第三步,在node01上,/usr/local/zookeeper/bin/zkCli.sh start

再./zkCli.sh start

在node02和node03上均需要这么做

ls / 查看目录结构

演示 Zookeeper的一些命令

#创建 永久节点zktest,并给一个值123

create /zktest 123

#查看永久节点的值

get /zktest

#修改永久节点的值

set /zktest 345

#演示监听

在第二台机器上

在/usr/bin/zookeeper/bin/zkCli.sh

ls /

此时切换到第一台机器,给第一台机器一个监听事件

get /zktest watch

再切换到第二台电脑,改一下第二台电脑上的zktest的值

set /zktest 678

查看第一台电脑,上面回应有提示:watchedEvent state:SyncConnected type:NodeDataChanged path:/zktest

注意:这是一个临时监听,如果此时在第二台电脑上再改变zktest的值,第一台电脑上不会再显示节点的数据改变。

#创建持久节点的子节点

在第一台电脑上

create /zktest/s1 111

ls /zktest

get /zktest/s1

#创建持久节点的顺序节点

create -s /zktest/ss1 111 #创建第一个持久顺序节点

create -s /zktest/ss2 222 #创建第二个持久顺序节点(注意创建的持久顺序节点,每次创建会在数据节点后给一个随机数字,再创建就依次递增1)

ls /zktest

#创建临时节点

create -e /zktest/e1 e1111

quit(在会话结束后,会自动删除临时节点)

在第二台机器的客户端

#自动监听临时节点

ls /zktest

create -e /zktest/eee1 eee1

在第二台机器上监听

ls /zktest watch

接着在第一台电脑退出

quit

在第二台电脑上查看,会提示目录结构的变化:WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/zktest

#测试delete命令

在第一台电脑上先连上

delete命令不能删除数据节点的子节点,如果想删除子节点,用rmr

ls /zktest

delete /zktest 提示不能删除

rmr /zktest

ls /

#更新数据的版本号

create /zktest2 test2

get /zktest2

set /zktest2 test33

会显示数据的版本号从0增加到了1

dataVersion = 1

set /zktest2 4444 0  #0是版本号

会提示版本号错误,因此需要更新的值的数据版本号要和当前的版本号匹配,变成

set /zktest2 4444 1

get /zktest2

quit

telnet node01 2181

conf #查看数据节点的配置信息

cons #输出服务器上所有客户端所有的连接信息

#测试cons

在第一台电脑上

telnet node02 2181

cons

#在node03上看node02的连接信息是什么样的

跳到node03这台电脑上

/usr/local/zookeeper/bin/zkCli.sh -server node02:2181

然后返回第一台电脑上看连接信息

telnet node02 2181

cons

此时会发现,有两台电脑连接了node02,分别是第一台和第三台机器:

/192.168.183.152:36108[0]...

/192.168.183.154:46281[1]..

#stat命令的测试 输出zookeeper的运行状态 版本,运行角色

telnet node02 2181

stat

在另外两台电脑上退出

(2)hadoop集群总结(上课随堂总结)

第二部分 Hadoop概述

1.优点:自动复制副本的内容

不拷贝数据 而是直接在数据节点上直接计算;

存储数据量巨大

流式文件访问:一次写入,多次读取,保证数据一致性。

不适合多线程写入同一个文件,只支持在文件的末尾追加,

2.HDFS架构

超大文件(PB级),流式数据写入;能够在低廉的商用机器上使用;在多线程上不能造成数据的混乱;并行处理数据,易扩展,高容错。

切分文件,存储在不同机器上

读取时,先读取文件快,文件块与节点的映射关系,通过节点读取文件

用master来管理这些存储的信息

存储的这些信息的节点是slave

活动的NameNode  备用的NameNode 管理数据的元信息 元数据同步

slave角色 datanode 一台机器启动一个datanode进程

客户端先和namenode发生交互,从amenode获得数据的元信息,datanode从返回的元信息读取或写入文件。datanode通过心跳象namenode汇报情况

3 核心概念

3.1namenode管理HDFS文件系统的命名空间

3.2standby

namenode 元数据文件:编辑日志,负责记录客户端对目录和文件的写操作;文件系统元数据检查点镜像文件:保存了文件系统中所有的目录和文件信息(目录下有哪些子目录,子文件,文件名,文件信息,

,文件副本数,文件由哪些块组成)。

3.3datanode:Slave工作节点,对数据块进行校验;周期性向namenode报告块的列表信息,namenode通过心跳感知datanode的运行状态。如果发现datanode发生故障了,就不会将客户端的I/O转发给datanode。

3.4数据块 HDFS最小存储单元

3.5Client

3.6QJM共享存储系统(元数据共享和元数据同步) 实现HDFS高可用

JournalNode集群存储edit.log在每个机器上的JournalNode存储一份。

3.6主备切换控制器,DFSZKFailoverController(ZKFC)

同时构建 HealthMonitor(监控namenode的健康状况),和ActiveStandbyElector

防止假死的脑裂情况。当NN2想切换为Active,通过隔离fencing NN2会通过远程调用SSH 自身将standby转成Active的方法

如果不成功,就使用Q-9 强行把另一个Active namenode进程杀掉

第三种情况,通过namenode上的一个脚本,强制关机。

第三部分:Yarn产生背景

降低运行和维护成本,实现数据共享和计算资源共享

Yet another resource negotiator

也实现master/slave manager

Resource manger/NodeManager

Resource manger根据客户请求在nodemanager分配container,封装了CPU,MEM这些资源。Resource manger启动NodeManager 里面的Application Master。启动后的它与Resource manger通信,申请资源。 Resource manger申请了资源后,与nodemanger通信,让nodemanger启动任务(例如Mapreduce),同时container

也执行起来。任务启动后,会通过心跳告诉Application Master,任务的运行状态。Application master监控任务的执行,如果任务执行失败,就会让其他的nodemanger执行该任务。

此外,还有一个备份的Resource manger(standby Resource manager)

在Zookeeper创建临时节点,也通过选举机制变换状态。

Nodemanger

Applicationmaster

Container

(131:25注意听)

Zookeeper主要用于name node和resource manager选主过程。

name node1和namenode2都会向Zookeeper申请创建临时节点。如果namenode1创建成功,nn2就会创建失败。

另外,Yarn中的resource manager也会向Zookeeper申请创建临时节点。如果rm1创建成功,那么rm1就是active

rm2就是standby。如果rm1挂掉了,就会被删除。rm2重新创建临时节点,创建成功了,就会从standby切换为active;

Zookeeper充当了高可选举的功能。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351

推荐阅读更多精彩内容

  • 1. Zookeeper介绍: 1.基本介绍: Zookeeper: 为分布式应用提供分布式协作(协调)服务。使用...
    奉先阅读 4,555评论 0 10
  • 简述 hadoop 集群一共有4种部署模式,详见《hadoop 生态圈介绍》。HA模式的集群里面会部署两台NN(最...
    mtide阅读 6,983评论 0 10
  • 先思考问题 我们处在一个大数据的时代已经是不争的事实,这主要表现在数据源多且大,如互联网数据,人们也认识到数据里往...
    墙角儿的花阅读 7,355评论 0 9
  • 首先,我们在使用前先看看HDFS是什麽?这将有助于我们是以后的运维使用和故障排除思路的获得。 HDFS采用mast...
    W_Bousquet阅读 4,187评论 0 2
  • 如果你要问我:“为什么要读书?” 我会不假思索的告诉你:“为了摆脱平庸,为了治疗愚昧!” 听过这样一句话:“你现在...
    追梦CEO阅读 477评论 6 11