分发JDK到node04、05、06
-scp jdk-7u67-linux-x64.rpm node04:pwd
-scp jdk-7u67-linux-x64.rpm node05:pwd
-scp jdk-7u67-linux-x64.rpm node06:pwd

并在Xshell的全部会话栏里一起ll,看jdk是否发送成功。
给node04、05、06分别安装JDK
分别在node04、05、06上执行rpm安装命令
-rpm -i jdk-7u67-linux-x64.rpm

在node03上cd /etc,在此目录下把profile文件分发到node04、05、06上。
scp profile node04:pwd

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

同步所有服务器的时间
date 查看机子当前的时间。
时间不能差太大,否则集群启动后某些进程跑不起来。
若时间不同步,怎么办?
1.yum进行时间同步器的安装
-yum -y install ntp
2.执行同步命令
-ntpdate time1.aliyun.com 和阿里云服务器时间同步
装机之前的配置文件检查
-cat /etc/sysconfig/network
查看HOSTNAME是否正确
-cat /etc/hosts
查看IP映射是否正确
若不正确,可以改文件,也可以把node03上的用scp分发过去。
3. -cat /etc/sysconfig/selinux里是否
SELINUX=disabled
4. service iptables status查看防火墙是否关闭
NN与其他三台机子的免秘钥设置
1在家目录下||-a看下有无.ssh文件,如果没有就ssh loalhost-下。
2.-cd .ssh ,并ll查看一下
3.把node03的公钥发给其他三台机子
4. 在node04的.ssh目录下看是否有node03.pub
如果有,那就追加到authorized_keys
cat node03.pub >> authorized_keys
并且在node03上ssh node04看是否免密钥了,
给node05、06都追加一下node03.pub,也就是在node05、06的.ssh目录下执行cat node03.pub >> authorized_keys
5.同理给其他节点发送公钥并在各个节点上把node03的公钥追加上
scp id_dsa.pub node05:pwd/node03.pub
scp id_dsa.pub node06:pwd/node03.pub

在node03上分别ssh node04,ssh node05,ssh node06,看是否能免密钥登录,
两个NN间互相免秘钥
.node03与node04间互相免密钥: node03可免密钥登录node04,那现需node04上能免密钥登node03,所以
在node04上:
ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh localhost验证一下
分发到node03上:scp id_dsa.pub node03:pwd/node04.pub
在node03的.ssh目录下,cat node04.pub >> authorized_keys,
在node04上ssh node03验证一下可否免密钥登录
修改namenode的一些配置信息
1.vi hdfs-site.xml
去掉snn的配置

dfs.namenode.secondary.http-address
node03:50090

1.vi hdfs-site.xml
增加以下property

<property>        <name>dfs.nameservices</name>       <value>mycluster</value>
</property>

1.vi hdfs-site.xml

<!--指定HDFS副本的数量,不能超过机器节点数-->
<property>        <name>dfs.replication</name>        <value>3</value>
</property>   <!-- nameservice 包含哪些namenode,为各个namenode起名 -->
<property>        <name>dfs.ha.namenodes. mycluster</name>                        <value>nn1,nn2</value>
</property>

1.vi hdfs-site.xml

dfs.namenode.rpc-address. mycluster.nn1 node03:9000

dfs.namenode.http-address. mycluster.nn1 node03:50070

1.vi hdfs-site.xml

dfs.namenode.rpc-address. mycluster.nn2 node04:9000

dfs.namenode.http-address. mycluster.nn2 node04:50070

1.vi hdfs-site.xml

dfs.namenode.shared.edits.dir qjournal://node03:8485;node04:8485;node05:8485/mycluster

dfs.journalnode.edits.dir /var/ldy/hadoop/ha/jn

1.vi hdfs-site.xml

dfs.ha.automatic-failover.enabled.cluster true

dfs.client.failover.proxy.provider.cluster org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider

1.vi hdfs-site.xml

dfs.ha.fencing.methods sshfence

dfs.ha.fencing.ssh.private-key-files /root/.ssh/id_rsa

2.vi core-site.xml
<!– 集群名称mycluster–>

fs.defaultFS
hdfs://mycluster

<!– zookeeper布署的位置–>

ha.zookeeper.quorum
node07:2181,node08:2181,node09:2181

2.vi slaves

node04
node05
node06
3.安装hadoop
cd /opt ,将其下的gyf目录分发到node04、05、06
scp –r gyf/ node04:pwd
scp –r gyf/ node05:pwd
scp –r gyf/ node06:pwd
4.将hdfs-site.xml和core-site.xml分发到node04、05、06

-scp hdfs-site.xml core-site.xml node04:`pwd`
-scp hdfs-site.xml core-site.xml node05:`pwd`
-scp hdfs-site.xml core-site.xml node06:`pwd`

安装zookeeper
1.解压安装zookeeper
tar xf zookeeper-3.4.6.tar.gz -C /opt/gyf

2.修改zookeeper的配置文件
cd /opt/gyf/zookeeper-3.4.6/conf
给zoo_sample.cfg改名
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
改dataDir=/var/gyf/zk
并在末尾追加
server.1=node04:2888:3888
server.2=node05:2888:3888
server.3=node06:2888:3888
其中2888主从通信端口,3888是当主挂断后进行选举机制的端口
.把zookeeper分发到其他节点
scp -r zookeeper-3.4.6/ node05:pwd
scp -r zookeeper-3.4.6/ node06:pwd
并用ll /opt/gyf检查下看分发成功没
4.给每台机子创建刚配置文件里的路径
mkdir -p /var/gyf/zk
对node04来说:
echo 1 > /var/gyf/zk/myid
cat /var/gyf/zk/myid
对node05来说:
echo 2 > /var/gyf/zk/myid
cat /var/gyf/zk/myid
对node06来说:
echo 3 > /var/gyf/zk/myid
cat /var/gyf/zk/myid
5.在/etc/profile里面配置
export ZOOKEEPER_HOME=/opt/gyf/zookeeper-3.4.6
export PATH= P A T H : / u s r / j a v a / j d k 1.7. 0 6 7 / b i n : PATH:/usr/java/jdk1.7.0_67/bin: PATH:/usr/java/jdk1.7.06​7/bin:HADOOP_HOME/bin: H A D O O P H O M E / s b i n : HADOOP_HOME/sbin: HADOOPH​OME/sbin:ZOOKEEPER_HOME/bin

6.然后在把/etc/profile分发到其他node05、node06
scp /etc/profile node05:/etc
scp /etc/profile node06:/etc

在node04、05、06里source /etc/profie,这步千万别忘
验证source这句是否完成,输入zkCli.s,按Tab可以把名字补全zkCli.sh
7.启动zookeeper
全部会话:zkServer.sh start
接着用zkServer.sh status查看每个zookeeper节点的状态
注意:如果启动不起来,请把/etc/profile里的JAVA_HOME改
成绝对路径。启动journalnode
Why启动journalnode?
为了使两台namenode间完成数据同步

在03、04、05三台机子上分别把journalnode启动起来
hadoop-daemon.sh start journalnode
用jps检查下进程启起来了没
格式化任一namenode
随意挑一台namenode上执行hdfs namenode –format
另一台namenode不用执行,否则clusterID变了,找不到集群了。
然后,启动刚刚格式化的那太namenode
hadoop-daemon.sh start namenode
给另一namenode同步数据
那另一台namenode怎么办,什么都不做吗?
我们要给另一台namenode同步一下数据,用以下命令
hdfs namenode -bootstrapStandby
格式化ZKFC
hdfs zkfc -formatZK

在node04上执行zkCli.sh打开zookeeper客户端看hadoop-ha是否打开
在node04上执行zkCli.sh打开zookeeper客户端看hadoop-ha是否打开
启动hdfs集群
在node03上启动hdfs集群:
start-dfs.sh
注意:如果那个节点没起来到hadoop目录下去看那个node的日志文件log
然后全部会话jps看一下都起来些什么进程
用浏览器访问node003:50070和node004:50070
关闭集群命令:stop-dfs.sh
关闭zookeeper命令:zkServer.sh stop
注意:你下一次启动hdfs集群的时候还需要用hadoop-daemon.sh start journalnode命令启动journalnode吗?
不需要
只要start-dfs.sh就可以了。我们之前启动journalnode是为了同步两个namenode之间的信息。

为MapReduce做准备

把mapred-site.xml.template留个备份,并且改下名字
cp mapred-site.xml.template mapred-site.xml
在mapred-site.xml里添加如下property

mapreduce.framework.name
yarn

在yarn-site.xml里添加如下property

yarn.nodemanager.aux-services
mapreduce_shuffle

yarn.resourcemanager.ha.enabled
true

yarn.resourcemanager.cluster-id
cluster1

yarn.resourcemanager.ha.rm-ids
rm1,rm2

yarn.resourcemanager.hostname.rm1
node05

yarn.resourcemanager.hostname.rm2
node06

yarn.resourcemanager.zk-address
node04:2181,node05:2181,node06:2181

把mapred-site.xml和yarn-site.xml 分发到node004、005、006
scp mapred-site.xml yarn-site.xml node004:pwd
scp mapred-site.xml yarn-site.xml node005:pwd
scp mapred-site.xml yarn-site.xml node006:pwd

由于node05和node06都是resourcemanager,所以它俩应该相互免密钥
node05上免密钥登录node06:
在node05的.ssh目录下生成密钥
ssh-keygen -t dsa -P ‘’ -f ./id_dsa
并追加到自己authorized_keys
cat id_dsa.pub >> authorized_keys
用ssh localhost验证看是否需要密码,别忘了exit
将node05 的公钥分发到node06
scp id_dsa.pub node06:pwd/node05.pub
在node06的.ssh目录下,追加node05.pub
cat node05.pub >> authorized_keys
在node05上ssh node06,看是否免密钥
node06上免密钥登录node05:
在node06的.ssh目录下生成密钥
ssh-keygen -t dsa -P ‘’ -f ./id_dsa
并追加到自己authorized_keys
cat id_dsa.pub >> authorized_keys
用ssh localhost验证看是否需要密码,别忘了exit
将node06 的公钥分发到node05
scp id_dsa.pub node05:pwd/node06.pub
在node05的.ssh目录下,追加node06.pub
cat node06.pub >> authorized_keys
在node06上ssh node05,看是否免密钥

1.启动zookeeper,全部会话zkServer.sh start
2.在node03上启动hdfs,start-dfs.sh
3.在node03上启动yarn,start-yarn.sh
4.在node05、06上分别启动resourcemanager,
yarn-daemon.sh start resourcemanager
5.全部会话jps,看进程全不全
在浏览器访问node005:8088,查看resourcemanager管理的内容
跑一个wordcount试试
1.cd /opt/gyf/hadoop-2.6.5/share/hadoop/mapreduce
2.在hdfs里建立输入目录和输出目录
hdfs dfs -mkdir -p /data/in
hdfs dfs -mkdir -p /data/out
3.将要统计数据的文件上传到输入目录并查看
hdfs dfs -put ~/500miles.txt /data/input
hdfs dfs -ls /data/input
4. 运行wordcount(注意:此时的/data/out必须是空目录
hadoop jar hadoop-mapreduce-examples-2.6.5.jar wordcount /data/in /data/out/result
5.查看运行结果
hdfs dfs -ls /data/out/result
hdfs dfs -cat /data/out/result/part-r-00000

关闭集群
关闭集群:
node03: stop-dfs.sh
node03: stop-yarn.sh (停止nodemanager)
node05,node06: yarn-daemon.sh stop resourcemanager
Node04、05、06:zkServer.sh stop

在Windows下配置hadoop的环境
把我给你的压缩包解压后的这三个文件夹放到一个usr文件夹里,把usr放到一个你知道的地方。

“此电脑”右键-属性-高级系统设置

更改环境变量,增加HADOOP_HOME

并且给path后追加HADOOP_HOME的bin目录,注意:Windows里path的路径分隔符是分号;,而不是冒号:

然后再新建一个变量HADOOP_USER_NAME

把hadoop.dll拷贝到以下路径

安装ecipse-mars,此版本的eclipse带插件,可以可视化的看到hadoop的一些东西,比较方便

如果eclipse界面下方没有小象图标,则做后续三步调出

在eclipse里把hadoop相关信息填一下


在eclipse里导入自己建一个包库

把刚建的包库引入到project里

把JUnit包库引入到project里

利用xftp把hdfs-site.xml,core-site.xml等几个xml放到project的src目录。

欢迎使用Markdown编辑器

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

新的改变

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

如何改变文本的样式

强调文本 强调文本

加粗文本 加粗文本

标记文本

删除文本

引用文本

H2O is是液体。

210 运算结果是 1024.

插入链接与图片

链接: link.

图片:

带尺寸的图片:

居中的图片:

居中并且带尺寸的图片:

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

如何插入一段漂亮的代码片

去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

// An highlighted block
var foo = 'bar';

生成一个适合你的列表

  • 项目

    • 项目

      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

创建一个表格

一个简单的表格是这么创建的:

项目 Value
电脑 $1600
手机 $12
导管 $1

设定内容居中、居左、居右

使用:---------:居中
使用:----------居左
使用----------:居右

第一列 第二列 第三列
第一列文本居中 第二列文本居右 第三列文本居左

SmartyPants

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

TYPE ASCII HTML
Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
Quotes "Isn't this fun?" “Isn’t this fun?”
Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

创建一个自定义列表

Markdown
Text-to- HTML conversion tool
Authors
John
Luke

如何创建一个注脚

一个具有注脚的文本。2

注释也是必不可少的

Markdown将文本转换为 HTML

KaTeX数学公式

您可以使用渲染LaTeX数学表达式 KaTeX:

Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分

Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞​tz−1e−tdt.

你可以找到更多关于的信息 LaTeX 数学表达式here.

新的甘特图功能,丰富你的文章

Mon 06 Mon 13 Mon 20 已完成 进行中 计划一 计划二 现有任务 Adding GANTT diagram functionality to mermaid
  • 关于 甘特图 语法,参考 这儿,

UML 图表

可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:

张三 李四 王五 你好!李四, 最近怎么样? 你最近怎么样,王五? 我很好,谢谢! 我很好,谢谢! 李四想了很长时间, 文字太长了 不适合放在一行. 打量着王五... 很好... 王五, 你怎么样? 张三 李四 王五

这将产生一个流程图。:

链接
长方形
圆角长方形
菱形
  • 关于 Mermaid 语法,参考 这儿,

FLowchart流程图

我们依旧会支持flowchart的流程图:

Created with Raphaël 2.2.0 开始 我的操作 确认? 结束 yes no
  • 关于 Flowchart流程图 语法,参考 这儿.

导出与导入

导出

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

导入

如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。


  1. mermaid语法说明 ↩︎

  2. 注脚的解释 ↩︎

顾毅凡 2017283401相关推荐

  1. 软件系统测试性迁移,软件测试之迁移测试 - 啄木鸟顾老师的个人空间 - OSCHINA - 中文开源技术交流社区...

    啄木鸟软件测试培训网:www.3testing.com 客户为什么会有迁移的需求? 一般而言,迁移的过程势必对当前应用系统运行产生一定的影响,从而会给客户的营业额带来一定的损失,同时客户还得投入大量的 ...

  2. 中国光谷 第十九届华为杯研究生数学建模获奖名单

    序号 题号 队伍编号 奖项 队长姓名 队长所在单位 队友姓名 队友所在单位 队友姓名 队友所在单位 1 C 22103360057 一等奖(数模之星提名) 陈盟昊 杭州电子科技大学 张琳翊 杭州电子科 ...

  3. matlab在智能遥控的应用论文,(精品)基于MATLAB的智能控制系统的介绍与设计实例最新毕业论文...

    脉冲响应: 第五章 结束语 关于智能控制的研究,是自动控制领域的热点之一,仍然存在着许多争论,对于实际应用,大都停留在仿真或实验室阶段.本文是在学习MATLAB软件的基础上,通过对智能控制理论知识的学 ...

  4. LeetCode - #79 单词搜索(Top 100)

    前言 本题为 LeetCode 前 100 高频题 我们社区陆续会将顾毅(Netflix 增长黑客,<iOS 面试之道>作者,ACE 职业健身教练.)的 Swift 算法题题解整理为文字版 ...

  5. LeetCode - #65 有效数字

    前言 我们社区陆续会将顾毅(Netflix 增长黑客,<iOS 面试之道>作者,ACE 职业健身教练.)的 Swift 算法题题解整理为文字版以方便大家学习与阅读. LeetCode 算法 ...

  6. 【名单回顾】中国计算机学会NOI Online能力测试入门组获得前25%证书名单(北京地区小学组)

    北京地区共有56个小学生进入前25%名单,恭喜 Jensen 以105分并列 "倒数第二名",呵呵 证书编号 省份 准考证号 姓名 性别 总分 学校 年级 CCF-NOI ONLI ...

  7. 吐槽计算机科学学院,吐槽一下计算机学院学院网上的一条新闻

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 话说学院领导头脑也真够灵活的,想出这么个法子获奖,各位领导,您要是真想学院出名的话,我给你个法子,前两天微软有个编程之美的比赛,获胜者可直接进入微软亚洲研 ...

  8. 阿里、腾讯、华为爆发云巅大战(转载)

        BAT三个掌门人因对互联网未来各持己见而同台交锋的场景,上一次发生在八年前,深圳IT领袖峰会现场,马云.马化腾和李彦宏为"云计算"到底有没有前景争论不已. 李彦宏说,无非是 ...

  9. 第十八届全国大学智能汽车竞赛报名信息统计:安徽赛区报名队伍

    承办高校: 安徽国际商务职业学院 比赛时间: 7月20日-22日 第十八届全国大学智能汽车竞赛报名信息统计 01 报名参赛队伍 序号 组别 学校 队伍名称 学生1 学生2 学生3 学生4 学生5 教师 ...

最新文章

  1. 电脑维修的十大原则,你都认同吗?
  2. 【NOIP模拟】彩色树【树形dp】【树链剖分性质】【复杂度分析】
  3. OS --written test1
  4. antd radio设置默认选中_单选框radio总结(获取值、设置默认选中值、样式)
  5. c语言sizeof(test),解析C语言中的sizeof
  6. mysql语句6_MySQL的SQL语句 - 数据操作语句(6)- INSERT 语句
  7. 电脑远程服务_电脑远程维修专家在线服务
  8. generator config_springboot集成mybatis+Generator代码生成
  9. php教程phpmeng,李炎恢PHP培训视频教程
  10. 小程序中 icon 颜色自定义解决方案
  11. 测度论中的概率空间,可测空间
  12. pc端怎么发微信朋友圈(有照片的)?
  13. 花 30 美金请 AI 画家弄了个 logo,网友:画得非常好,下次别画了!
  14. fatal: unable to access ‘https://gitee.com/****/****.git/‘: The requested URL returned error
  15. chrome谷歌浏览器插件制作简易教程
  16. SMPL模型及源码解读
  17. Oracle 20c 不再支持特性:传统审计不支持 统一审计(Unified Auditing)成主流
  18. 面试必备:四种经典限流算法讲解
  19. 锐捷交换机简单配置SNMP
  20. DVD常识及伺服解码

热门文章

  1. 什么是web server?
  2. 安卓12解除进程限制的第一种方式:VMOS助手
  3. 你真的了解10G以太网吗?
  4. numpy 高级索引技巧
  5. 春暖花开--2013年度总结
  6. VS中无法打开源文件
  7. 历届试题 矩阵翻硬币
  8. 蓝桥 历届试题 矩阵翻硬币 JAVA
  9. 移动考勤是种什么样的体验?
  10. echars 柱状图正常状态 --》二次封装