一、什么是Hadoop
·Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。


二、 理解hadoop2.0HA的框架

1.namenode(NN):存储文件的元数据(文件名、文件目录结构、文件属性等等)
2.datanode(DN):在本地文件系统存储文件块数据,以及块数据的校验
3.secondarynode:用来监控HDFS状态的辅助后台程序,每隔一段时间获取元数据的快照
4.journalnode(JN):用于手动切换namenode,日志管理两台NN,同步数据
5.zookeep(ZK):管理所有结点
6.NN active:正在运行的NN
7.NN Standby:备用的NN
8.FailoverController(FC):监视器
9.Zookeep Failover Controller(ZKFC):自动监视两台NN

对上图的解释:
·四台DN向NN Active汇报数据(此NN Active不固定)。当NN active出现了故障,就会由JN负责使备用机NN Standby与故障机进行替换,这是手动模式。但是在集群极其多的时候,需要用到ZK进行自动管理,ZK下有两个监视器FC监视着两台NN,当NN active出现了故障,FC Active检测到监视的NN处于挂断状态,立即汇报给ZK,由ZK通过另一台FC看NN Standby是否正常,若为正常则自动切换其状态,将两台NN的状态互换。
·在自动模式下,每个NN都有对应的ZKFC监视。在ZK选择NN时,是由其先后顺序决定的,先发送数据的NN就设其为Active。


·根据此图配置NN。
三、准备安装软件

四、配置jdk和同步时间

1.在xshell里面分发jdk

2.并在Xshell的全部会话栏里一起ll,看jdk是否发送成功。


分别在node02、03、04上执行rpm安装命令
-rpm -i jdk-7u67-linux-x64.rpm

在node01上cd /etc,在此目录下把profile文件分发到node02、03、04上。
scp profile node02:pwd

以上node01配置成这样

利用Xshell全部会话栏,source /etc/profile
利用Xshell全部会话栏,jps,看02、03、04这三台机子的jdk是否装好。

2.同步时间
1.yum进行时间同步器的安装
-yum -y install ntp


2.执行同步命令
-ntpdate time1.aliyun.com 和阿里云服务器时间同步


3。-cat /etc/sysconfig/network
查看HOSTNAME是否正确
-cat /etc/hosts
查看IP映射是否正确
若不正确,可以改文件,也可以把node03上的用scp分发过去
-cat /etc/sysconfig/selinux里是否
SELINUX=disabled
service iptables status查看防火墙是否关闭




4.在xshell的全部对话框ssh localhot 一下
cd .ssh
将node01公钥发给其他三台机子
scp id_dsa.pub node02:pwd/node01.pub
scp id_dsa.pub node03:pwd/node01.pub
scp id_dsa.pub node04:pwd/node01.pub


然后全部对话框内
cat node01.pub >> authorized_keys


5.免密钥

ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa


cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys


ssh localhost验证一下
分发到node01上:scp id_dsa.pub node03:pwd/node04.pub
在node01的.ssh目录下,cat node04.pub >> authorized_keys,
在node02上ssh node01验证一下可否免密钥登录



同理node03和node04应该互相免秘钥。
所以应该将互相的密钥分发给对方

再ssh对方试试,能不能通过。
最后要exit。

五、安装Hadoop和zookeeper

hadoop文件配置
1.cd /opt/yyh/hadoop-2.6.5/etc/hadoop/
vi hdfs-site.xml
将里面的内容改为

dfs.nameservices
mycluster
dfs.ha.namenodes.mycluster nn1,nn2 dfs.namenode.rpc-address.mycluster.nn1 node01:8020 dfs.namenode.rpc-address.mycluster.nn2 node02:8020 dfs.namenode.http-address.mycluster.nn1 node01:50070 dfs.namenode.http-address.mycluster.nn2 node02:50070 dfs.namenode.shared.edits.dir qjournal://node01:8485;node02:8485;node03:8485/mycluster dfs.journalnode.edits.dir /var/yyh /hadoop/ha/jn dfs.client.failover.proxy.provider.mycluster org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider dfs.ha.fencing.methods sshfence dfs.ha.fencing.ssh.private-key-files /root/.ssh/id_dsa dfs.ha.automatic-failover.enabled true dfs.replication 3

2.vi core-site.xml
同理改为
fs.defaultFS hdfs://node01:9000 hadoop.tmp.dir /var/fyf/hadoop/pseudo fs.defaultFS hdfs://mycluster ha.zookeeper.quorum node02:2181,node03:2181,node04:2181 ipc.client.connect.max.retries 100 Indicates the number of retries a client will make to establisha server connection. ipc.client.connect.retry.interval 10000 Indicates the number of milliseconds a client will wait for before retrying to establish a server connection.

3.vi slaves
删除里面的内容 加上
node02
node03
node04

4.安装hadoop
cd /opt/…
将文件夹分发给node02,3,4
scp –r …/ node02:pwd
scp –r …/ node03:pwd
scp –r …/ node04:pwd

也将hdfs-site.xml和core-site.xml分发到node02,3,4
-scp hdfs-site.xml core-site.xml node02:pwd
-scp hdfs-site.xml core-site.xml node03:pwd
-scp hdfs-site.xml core-site.xml node04:pwd

用xftp传zookeeper,安装zookeeper
1).解压安装zookeeper
tar xf zookeeper-3.4.6.tar.gz -C /opt/…

2).修改zookeeper的配置文件
cd /opt/…/zookeeper-3.4.6/conf

给zoo_sample.cfg改名
cp zoo_sample.cfg zoo.cfg


3).vi zoo.cfg
改dataDir=/var/…/zk

server.1=node02:2888:3888
server.2=node03:2888:3888
server.3=node04:2888:3888

4).把zookeeper分发给node03,node04
scp -r zookeeper-3.4.6/ node03:pwd
scp -r zookeeper-3.4.6/ node04:pwd


5).给每台机子创建刚配置文件里的路径
mkdir -p /var/…/zk
对node02来说:
echo 1 > /var/…/zk/myid
cat /var/…/zk/myid
对node03来说:
echo 2 > /var/…/zk/myid
cat /var/…/zk/myid
对node04来说:
echo 3 > /var/…/zk/myid

cat /var/…/zk/myid


6).在/etc/profile进行配置然后分发到node03,,04


scp /etc/profile node03:/etc
scp /etc/profile node04:/etc

7).启动zookeeper
全部会话内输zkServer.sh start(node01内没有zookeeper)
然后用zkServer.sh status查看zookeeper节点的状态

开启后应该有一个leader


当输入zk tab键后出来这个就对了,最后不要忘记关掉zookeeper



六、启动journalnode
1.启动journal使两台namenode同步数据
在node01,02,03上启动journalnode
hadoop-daemon.sh start journalnode

再jps一下看看是否启动。

则需要查看上图路径的日志文件,.log文件。
如果日志上显示 journalnode not format 则需要在namenode上执行
hdfs namenode -initializeSharedEdits
查看日志则是 tail -100

七、格式化namenode
1.随意挑一台namenode上执行
hdfs namenode –format
另一台namenode不用执行,否则clusterID变了,找不到集群了。


2.然后,启动刚刚格式化的那太namenode

hadoop-daemon.sh start namenode

3.然后,我们要同步另一台namenode

hdfs namenode -bootstrapStandby

4…格式化zkfc

hdfs zkfc -formatZK
查看hadoop-ha是否打开,输入命令

zkChli.sh
ls /
在node02上执行zkCli.sh打开zookeeper客户端看hadoop-ha是否打开

八、初次启动集群
1.在node01上启动hdfs集群:start-dfs.sh



关闭集群命令:stop-dfs.sh
关闭zookeeper命令:zkServer.sh stop

九、配置文件
1.复制mapred-site.xml.template
cp mapred-site.xml.template mapred-site.xml
在mapred-site.xml里添加如下property

mapreduce.framework.name
yarn


2.在yarn-site.xml里添加如下property,里面有内容的不能删


3. 把mapred-site.xml和yarn-site.xml 分发到node02、03、04 scp mapred-site.xml yarn-site.xml node02:pwd scp mapred-site.xml yarn-site.xml node03:pwd scp mapred-site.xml yarn-site.xml node04:pwd
4. 在浏览器访问node03:8088,查看resourcemanager管理的内容

5.hadoop高可用安装以及配置完成,退出时需关闭集群和虚拟机 ## 启动集群
1.启动zookeeper,全部会话zkServer.sh start
2.在node01上启动hdfs,start-dfs.sh
3.在node01上启动yarn,start-yarn.sh
4.在node03、04上分别启动resourcemanager
yarn-daemon.sh start resourcemanager
5.全部会话jps,看进程全不全




以上是启动后各个node 的jps

关闭集群
1.node01: stop-dfs.sh
2.node01: stop-yarn.sh (停止nodemanager)
3.node03,node04: yarn-daemon.sh stop resourcemanager
4.node02、03、04:zkServer.sh stop

2017283421俞烨炜相关推荐

  1. 杭州保俶塔实验机器人_浙江省第三届中小学生智能机器人比赛获奖名单

    附件 2 : 浙江省第三届中小学生智能机器人比赛获奖名单 机器人灭火(小学组) 一等奖: 宁波市鄞州区宋诏桥小学(朱天禹.缪天磊) 二等奖: 东阳市画溪小学 (蒋佳妮.王敬男) 杭州市西湖区留下镇中心 ...

  2. 杭州保俶塔实验机器人_资讯 | 智慧与挑战!2017年西湖区中小学生科技节智能机器人比赛成绩出炉啦...

    原标题:资讯 | 智慧与挑战!2017年西湖区中小学生科技节智能机器人比赛成绩出炉啦 11月9日,西湖区中小学生科技节智能机器人比赛在翠苑中学文华校区顺利举行,本次大赛共有4场不同类型的比赛同时进行, ...

  3. 蚂蚁集团俞仁杰:金融级云原生之多活容器集群高可用建设实践

    本文整理自蚂蚁集团金融云产品技术部SOFAStack产品专家俞仁杰在2020 GIDC全球互联网数据大会的分享.详细讲解了云原生架构下的多活高可用平台和产品建设相关经验和观点. 过去几年是云原生理念高 ...

  4. 当当CEO俞渝开撕老公李国庆:同性恋,梅毒,夫妻反目!

    点击上方蓝字,关注视学算法~ 走进程序生活里的一切 导读:这场闹剧该如何收尾? 来   源丨21世纪经济报道(ID:jjbd21) 记   者丨白杨 北京报道 编   辑丨李一戈 资料图.图 / 图虫 ...

  5. 俞敏洪+摆脱恐惧+世界想让你做一个平凡的人、你信了吗

                       俞敏洪:摆脱恐惧 亲爱的朋友们,亲爱的同学们,大家晚上好! 其实站在这么一个舞台上,我们很多同学都会羡慕,也会想,要是我去讲也许会讲的比他更好.但是他不管面对失败 ...

  6. 你就是你自己paper最好的审稿人:宾大苏炜杰提出peer review新机制

    [专栏:前沿进展]近年来,机器学习顶会论文数目井喷,审稿压力巨大,其同行评审制度备受质疑.宾大教授针对此挑战提出了由论文作者协助的新型同行评审机制. 你是否已经受够了NeurIPS,ICLR,ICML ...

  7. 传道、授业、解惑:俞士纶院长参加数据科学研究院第五届“院长接待日”

    俞士纶院长正在耐心为学生解答疑问 清华大学学生大数据研究协会的联席会长凡航主持了本次院长接待日活动,并对大数据协会目前的状况和最近的精彩活动进行了介绍.大数据协会今年招收会员335人,其中骨干会员26 ...

  8. 近期活动盘点:俞士纶见面会、2018未来医疗100强论坛、清华校友三创论坛、2018年中国数字政府论坛(12.18-12.21)...

    想知道近期有什么最新活动?大数点为你整理的近期活动信息在此: 数据院院长接待日--俞士纶院长 2018年12月18日 [时间]2018年12月18日(周二)14:00-15:30 [地点]清华大学周边 ...

  9. 福利 | 给你个机会与俞士纶(Philip S. Yu)面对面交流 !(附俞教授论文合集资源)...

    清华数据科学研究院院长俞士纶(Philip S. Yu),美国伊利诺伊大学芝加哥分校(UIC)特聘主任教授.美国计算机学会(ACM)及美国电气电子工程师学会(IEEE)院士(Fellow),清华大学特 ...

最新文章

  1. 本地连接不见了怎么办?
  2. 056_Object对象方法
  3. checked_delete问题: Beyond the C++ STL: an introduction to boostdeleter::do_it
  4. Openfire4源码部署到eclipse中并编译
  5. Code Issues 2,637 Pull requests 0 Projects 1 Wiki Security Insights Settings 使用filter node快速找到XML f
  6. phpShort v3.2 – PHP短网址平台源码
  7. python 实现字典树_python字典树(Trie)的实现
  8. js split参数为无效字符_互联网前端开发技术JavaScript字符串类型详解
  9. java linux ping ip,java linux ping命令
  10. datatable 操作列根据权限动态展现_不会Excel透视表?教你一招轻松做出动态报表...
  11. ubuntu16.04命令行模式和图形界面互相切换
  12. php个人财务管理,PHP个人理财管理系统的设计与实现
  13. 全国短信息中心号码一览
  14. Prophet文档中文翻译--outliers
  15. html中怎样隐藏列,关于jquery:隐藏/显示HTML表中的列
  16. 罗技M590优联和蓝牙连接的问题
  17. iTRON新闻大集合
  18. 分享Linux 机器 CPU 毛刺问题排查经历
  19. 怎么将图片进行圆角处理?
  20. win 运行scrapy warring UserWarning: You do not have a working installation of the service_identity mo

热门文章

  1. AT命令交互之-COPS选择营运商
  2. ofo小黄车骑车券无条件领取,人人有份!
  3. 华为路由器 单臂路由
  4. 腾讯华为签署《深圳市APP个人信息保护自律承诺书》举措新解读
  5. 【附源码】Java计算机毕业设计架构的博客平台设计(程序+LW+部署)
  6. Python-Django毕业设计钓鱼爱好者交流平台(程序+Lw)
  7. Android 开发基于Webview 自制一个简单的手机浏览器
  8. vue可视化拖拽生成工具_一款可拖拽的WEB表单设计布局器-(echarts-vue-jquery-可视化图表)...
  9. 478-82(56、128、718、129)
  10. 【OpenCV】色彩空间介绍