再多学一点吧

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

Hadoop的高可用搭建

 

在已经安装完hadoop单机和zookeeper前提下

1.免密钥

在node1下。因为node1作为备用主机,并且master我已经实现了免密

ssh-keygen -t rsa

分发秘钥

ssh-copy-id -i master

ssh-copy-id -i node1

ssh-copy-id -i node2

2.修改hadoop配置文件(我在master中修改)

core-site.xml
hdfs-site.xml

yarn-site.xml
mapred-site.xml

我是直接导入文件覆盖

3.同步到其他节点

scp * node1:/usr/local/soft/hadoop-2.7.6/etc/hadoop/

scp * node1:/usr/local/soft/hadoop-2.7.6/etc/hadoop/

4.删除hadoop数据存储目录下的文件  每个节点都需要删除

 rm -rf /usr/local/soft/hadoop-2.7.6/tmp

5.启动zookeeper 三台都需要启动

zkServer.sh start
zkServer.sh status

此时一台一个zk的节点

6.启动JN 存储hdfs元数据

三台JN上执行 启动命令: hadoop-daemon.sh start journalnode

此时一台一个zk节点,一个jn日志节点

7.格式化 在一台NN上执行

hdfs namenode -format

启动当前的NN
hadoop-daemon.sh start namenode

此时master上多了个namenode节点

8.执行同步 没有格式化的NN上执行 在另外一个namenode上面执行

hdfs namenode -bootstrapStandby

这是node1上还没有namenode节点很正常,还没有启动hdfs

9.格式化ZK

在已经启动的namenode上面执行 !!一定要先 把zk集群正常 启动起来 hdfs zkfc -formatZK

10.启动hdfs集群,在启动了namenode的节点上执行

start-dfs.sh

master上:

node1上:

 node2上:

黄色:QuorumPeerMain:zk的节点,三台都有    3个

粉色:JournalNode:jn日志节点,三台都头   3个

红色:Namenode:管理节点:出现在master和node1上    2个

蓝色:DFSZKFailoverController:ZKFC:用来观察master和node1,防止宕机时可以替代    2个

灰色:DataNode:工作节点,用于存储hdfs数据,出现在node1和node2上   2个

一共12个节点此时

11.启动yarn 在master启动

start-yarn.sh

master:多了一个ResourceManager节点,用于处理整个集群资源的总节点

 

 node1和node2上:多个NodeManger节点,用于跟踪监视资源

此时多了一个ResourceManager节点和2个NodeManager节点

 12.在另外一台主节点上启动RM

 yarn-daemon.sh start resourcemanager

此时node1上:多个一个nNodeManager节点,用于备份

 

 此时node1多了个 ResourceManager节点

 

posted on   糟糟张  阅读(189)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示