一、分布式集群安装
1. Hadoop模式
本地模式、伪分布模式、集群模式
datanode 使用的机器上的磁盘,存储空间
nodemanager使用的机器上的内存和CPU(计算和分析数据)

2. 搭建环境准备工作
(1)克隆虚拟机,达到3台机器,分布式的架构即可
重新搭建一个hadoop环境
(2)克隆完成后,需要修改ip、主机名、映射、网络eth1-》eth0
(3)服务组件的规划
senior01: 4G内存,1核CPU,50G,namenode,datanode, nodemanager, historyserver

senior02: 4G内存,1核CPU,50G,datanode, resourcemanager,nodemanager

senior03: 4G内存,1核CPU,50G,datanode,secondarynamenode, nodemanager

(3)搭建环境
修改主机名: sudo vi /etc/sysconfig/network
修改网卡: sudo vi /etc/udev/rules.d/70*net.*
删掉eth0, eth1->eth0
sudo vi /etc/sysconfig/network-scipts/ifcfg-eth0
HDADDR=
修改ip:

(4)解压hadoop
配置JDK环境变量
hadoop-evn.sh,mapred-env.sh,yarn-even.sh
配置:
core-site.xml
hdfs-site.xml
slaves
yarn-site.xml
mapred-site.xml
mapreduce.jobhistory.address

(5)将配置文件分发到各个节点机器上去
scp -r hadoop-2.5.0/ beifeng-hadoop-03 /opt/modules
注意:拷贝之前需要在对应的机器上建好对应的目录

(6)格式化namenode
ip:50070

二、无密钥登陆ssh
ssh-keygen -t rsa
ssh-copy-id hostname02
ssh-copy-id hostname03
ssh-copy-id hostname04

三、时间同步
1. 集群机器之间时间必须要同步
2. 找一台机器作为"时间服务器"
3. 集群中的其他机器,以这台服务器为准
4. 选择beifeng-hadoop-02作为时间同步服务器
sudo rpm -qa | grep ntp
5.
6.
7.
查看ntp服务 sudo service ntpd status
启动ntp服务 sudo service ntpd start
设置开机启动 sudo chkconfig ntpd on
8. sudo vi /etc/ntp.conf
(1)修改网段
去掉#注释,并且修改为自己的网段
retrict
(2)修改时间服务器的地址
因为是企业内网,注释掉外网时间服务器的地址
(3)去掉注释
server
fudge

9. which ntpdate
配置完成后,需要重启服务
sudo service ntpd restart
重启后需要等待大约5分钟后才能使用其他命令

10. 制定一个定时任务,每十分钟执行一次
su - root
crontab -e
#sync time
0-59/10 * * * * /usr/sbin/ntpdate hostname02

11. 执行时间同步
sudo /usr/sbin/ntpdate hostanme

12. 设置机器的时间和BIOS系统时间同步
sudo vi /etc/sysconfig/ntpd
SYNC_HWCLOCK=yes

四、Zookeeper 分布式协作框架
1. Zookeeper是分布式的,所以由多台服务器组成,至少组成
2. 节点个数必须是奇数
3. 比如有三台机器,允许坏掉一台,如果是五台,允许坏两台
4. 2n+1,n表示允许集群中损坏的机器数目
5. 会在众多的server中,选举一位作为“领导者”,其他的作为“跟随者”
6. 选举领导者的目的,为了在分布式集群中保证数据的一致性
7. 与namenode类似,数据都存放在jvm内存中,本地也有备份

五、ZooKeeper要点
1. 机器数目必须奇数
2. 所在机器时间必须同步
3. ZooKeeper分为两个部分: 服务端和客户端
4. 容错性
5. 服务端可以对于多个客户端,多个zookeeper服务端可以对应多个客户端

六、ZooKeeper数据结构

七、ZooKeeper典型应用场景

八、Zookeeper环境部署搭建

zookeeper 集群安装(单点与分布式成功安装)摘录

zoo.cfg
dataDir=/otp/modules/zookeeper-3.4.5/data/zkData
启动服务
zkServer.sh start
zkServer.sh status
jps
服务进程: QuorumPeerMain
znode,代表的是zookeeper上的节点

九、HA
Client -> Proxy(自动故障转移(ZooKeeper))
-> NameNode(Active)
-> NameNode(Standby)
1. 单点故障,是不是可以有两个namenode
2. 正常情况下:一个是对外提供服务,一个备份状态 ——HDFS高可用性;
3. 考虑的几个重点把握:
(1)保证两个namenode内存中存储文件系统的元数据要同步;
namenode启动->读取fsimage和edits文件
->生成新的fsimage和edits文件
(2)编辑日志文件的安全性
【安全性方案】
a. 使用比较好的文件系统(外部存储)来解决,一读一写保持
数据的同步,缺陷:成本高,不适合Hadoop
b. 分布式的存储日志信息
写多份再读取,条件:奇数个
此方案是cloudera公司提出的
c. ZooKeeper可以存储数据
d. JournalNode:日志节点
e. namenode
datanode注册
datanode块报告
(3)如何协作
(4)客户端如何访问文件系统
保证任何时候只能有一个namenode对外提供服务;通过隔离机制保证;

十、 hadoop 2.x HDFS HA配置及测试配置
hadoop-daemon.sh start zkfs

《OD学hadoop》第三周0710的更多相关文章

  1. 《OD学hadoop》第二周0702

    大数据离线计算hadoop2.x 三周(6天) markdown文本剪辑器 罗振宇--跨年演讲,时间的朋友 http://tech.163.com/16/0101/11/BC87H8DF000915B ...

  2. 《OD学hadoop》第二周0703

    hdfs可视化界面: http://beifeng-hadoop-01:50070/dfshealth.html#tab-overview yarn可视化界面: http://beifeng-hado ...

  3. 《OD学hadoop》第一周0625

    一.实用网站 1. linux内核版本 www.kernel.org 2. 查看网站服务器使用的系统  www.netcraft.com 二.推荐书籍 1. <Hadoop权威指南> 1- ...

  4. 《OD学hadoop》第一周0626 作业二:Linux基础

    一.打包压缩 知识点: tar -zxvf -C PATH tar -jxvf tar -zcvf tar -jcvf tar:打包命令 -z 打包同时gzip压缩 -j 打包同时bzip2 -c 打 ...

  5. 《OD学hadoop》第一周0626

    一.磁盘管理 Linux添加新硬盘.分区.格式化.自动挂载 http://lxsym.blog.51cto.com/1364623/321643 给Linux系统新增加一块硬盘 http://www. ...

  6. 《OD学hadoop》第一周0625 LINUX作业一:Linux系统基本命令(一)

    1. 1) vim /etc/udev/rules.d/-persistent-net.rules vi /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE= ...

  7. 《OD学hadoop》第三周0709

    一.MapReduce编程模型1. 中心思想: 分而治之2. map(映射)3. 分布式计算模型,处理海量数据4. 一个简单的MR程序需要制定map().reduce().input.output5. ...

  8. 2017-2018-1 我爱学Java 第三周 作业

    Team Presentation 团队展示 队员学号 队名 团队项目描述 队员风采 团队首次合照 团队的特色描述 团队初步合作 前两周合作过程中的优缺点 如何改进 团队选题 确立,建立和初步熟悉团队 ...

  9. 《OD学hadoop》20160903某旅游网项目实战

    一.大数据的落地点 1.数据出售 数据商城:以卖数据为公司的核心业务 2. 数据分析 百度统计 友盟 GA IBM analysis 3.搜索引擎 4. 推荐系统 mahout 百分比 5.精准营销 ...

随机推荐

  1. SimpleDateFormat

    范例: Date date = new Date();SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MMM-dd,E,HH. ...

  2. Orchard 候补神器说明

    Orchard学习视频已登录百度传课: http://www.chuanke.com/3027295-124882.html 获取Orchard候补神器请加qq群432158140  ! 候补神器是一 ...

  3. NYOJ-102 次方求模 AC 分类: NYOJ 2014-02-06 18:53 184人阅读 评论(0) 收藏

    地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=102 //a^b mod c=(a mod c)^b mod c很容易设计出一个基于二分的递归 ...

  4. [大牛翻译系列]Hadoop(5)MapReduce 排序:次排序(Secondary sort)

    4.2 排序(SORT) 在MapReduce中,排序的目的有两个: MapReduce可以通过排序将Map输出的键分组.然后每组键调用一次reduce. 在某些需要排序的特定场景中,用户可以将作业( ...

  5. DevOps:怎么实现源代码注释和系统文档的自动化更新?

    [编者按]计算机软件传统定义为:软件是计算机系统中与硬件相依存的另一部分,软件包括程序.数据及其相关文档的完整集合.然而在时下的开发中,文档的合规性往往被忽视的干干净净.本文由 Todd Waits ...

  6. list<T> 自定义比较器进行排序

    今天在研究List<T> 集合如何排序,我试过很多,但是都不行,然后看到msdn中的这个比较器排序,自己测试了代码,No Problem.给大家分享一下. 类型 T 的默认比较器按如下方式 ...

  7. javascript实现KMP算法(没啥实用价值,只供学习)

    简单粗暴上代码 KMP的原理我就不讲了,想转过弯儿来不容易,建议大家先学会了怎么推导出next数组规律,然后准备两张纸,大纸上写上一行你要匹配的目标字符串,并分别写出位置编号,小纸上写上一行,也写上位 ...

  8. (转)Maximum subarray problem--Kadane’s Algorithm

    转自:http://kartikkukreja.wordpress.com/2013/06/17/kadanes-algorithm/ 本来打算自己写的,后来看到上述链接的博客已经说得很清楚了,就不重 ...

  9. awk处理之案例三:awk去掉不需要的文本行

    编译环境 本系列文章所提供的算法均在以下环境下编译通过. [脚本编译环境]Federa 8,linux 2.6.35.6-45.fc14.i686 [处理器] Intel(R) Core(TM)2 Q ...

  10. POJ 1113 Wall(Graham求凸包周长)

    题目链接 题意 : 求凸包周长+一个完整的圆周长. 因为走一圈,经过拐点时,所形成的扇形的内角和是360度,故一个完整的圆. 思路 : 求出凸包来,然后加上圆的周长 #include <stdi ...