Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >hadoop之完全分布式集群配置(centos7)

hadoop之完全分布式集群配置(centos7)

作者头像
西西嘛呦
发布于 2020-08-26 02:17:15
发布于 2020-08-26 02:17:15
48300
代码可运行
举报
运行总次数:0
代码可运行

一、基础环境

现在我们有两台虚拟机了,再克隆两台:

克隆好之后需要做三件事:1、更改主机名称 2、修改ip地址 3、将ip地址和对应的主机号加入到/etc/hosts文件中

1、永久修改主机名

hostnamectl set-hostname hadoop03 等等

2、修改ip地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33

删除掉UUID,然后注意红色框中的

3、将ip地址和主机名加入到/etc/hosts中

vim /etc/hosts

(图中最后应该是hadoop04)

同理对于hadoop04也这么做。hadoop02是我之前学习伪分布式时已经克隆配置好了的。也要在hadoop01和hadoop02中将这四个也添加上去。hadoop01是克隆源,里面的UUID不可删去。

二、集群配置

1、集群部署规划

hadoop02

hadoop03

hadoop04

HDFS

NameNode DataNode

DataNode

SecondaryNameNode DataNode

YARN

NodeManager

ResourceManager NodeManager

NodeManager

说明:NameNode和SecondaryNameNode要求不在一个节点上。ResourceManager不能和NameNode、SecondaryNameNode在同一个节点上。

2、修改hadoop02中的配置

在hadoop-2.9.2目录下:vim etc/hadoop/core-site.xml

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    <!--指定HDFS中NameNode的地址-->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop02:9000</value>
    </property>
    <!--指定hadoop运行时产生文件的存储目录-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-2.9.2/data/tmp</value>
    </property>

在vim etc/hadoop/hadoop-env.sh中配置JAVA_HOME路径

在vim etc/hadoop/hdfs-site.xml中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<configuration>
<!--备份的个数-->
<property>
        <name>dfs.replication</name>
        <value>3</value>
</property>
<!--辅助节点的位置-->
<property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop04:50090</value>
</property>
</configuration>

在vim etc/hadoop/yarn-env.sh中配置JAVA_HOME路径

在vim etc/hadoop/yarn-site.xml中配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<configuration>
<!--Reducer获取数据的方式-->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<!--指定yarn的ResourceManager的地址-->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop03</value>
</property>
</configuration>

在vim etc/hadoop/mapred-env.sh中配置JAVA_HOME路径

vim etc/hadoop/mapred-site.xml中配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!--指定MR运行在yarn上-->
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

3、配置好hadoop02,利用之前博客中的集群分发脚本将配置文件传给hadoop03、hadoop04

xsync.sh /opt/module/hadoop-2.9.2/etc/hadoop/

然后去hadoop03和hadoop04中查看是否成功:

4、在hadoop02、hadoop03、hadoop04中删除掉之前运行的data和logs文件夹,在/opt/modul/hadoop-2.9.2/下

rm -rf data logs

5、集群节点启动

可使用jps指令查看节点是否启动。

(1)在hadoop02中:

首先格式化namenode:bin/hdfs namenode -format

sbin/hadoop-daemon.sh start namenode

sbin/hadoop-daemon.sh start datanode

(2) 在hadoop03中:

sbin/hadoop-daemon.sh start datanode

(3)在hadoop04中:

sbin/hadoop-daemon.sh start datanode

(4)关闭hadoop02中的防火墙

三、查看

在windows中输入http://192.168.124.23:50070/,若出现以下界面:

四、ssh无密码登录

问题:我们都是一个个去别的虚拟机启动节点,当节点很多时,我们要一个个去输入?

事实上,在当前虚拟机中终端中输入:ssh 主机名就可以登录到其他虚拟机

比如,当前的是hadoop02,那么输入ssh hadoop03,就可以登录到hadoop03,只不过每次切换的时候都需要输入密码。为了避免麻烦,可以部署免密登录,只需要输入一次密码,之后再次登录就不需要密码了。那么如何进行操作呢?

免密登录原理:

先来到hadoop02: 输入ls -al查看隐藏的文件,有一个.ssh。cd .ssh

里面有你访问过的主机名称。

生成相应的密钥:ssh-keygen -t rsa

然后输入三次回车。

id_rsa就是私钥,id_rsa.pub就是公钥

将id_rsa.pub中的内容拷贝到hadoop03和hadoop04中:

在hadoop02的.ssh目录下输入:

ssh-copy-id hadoop03

ssh-copy-id hadoop04

然后我们再输入ssh hadoop03

发现就不需要再输入密码了,并且在.ssh目录下会生成一个authorized_keys:里面存放的就是hadoop02的公钥

同时也需要在hadoop02中的.ssh目录下:

ssh-copy-id hadoop02,

也要将root用户配置ssh免密登录:su切换到root,然后执行以上操作

同样对hadoop03和hadoop04重复上述的操作 。

五、群起集群

1、配置slaves

在hadoop02中

vim /opt/module/hadoop-2.9.2/etc/hadoop/slaves

在该文件中加入以下内容(将原本的localhost删除掉):主要是datanode,hadoop02、hadoop03、hadoop04上面都有

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
hadoop02
hadoop03
hadoop04

注意末尾不能有空格、回车。

然后使用集群分发脚本将其分发给hadoop03、hadoop04

在/opt/module/hadoop-2.9.2/etc/hadoop目录下输入:xsync.sh slaves

接下来将之前启动的那些节点都给停止掉:

sbin/hadoop-daemon.sh stop namenode

sbin/hadoop-daemon.sh stop datanode

然后在hadoop02中的/opt/module/hadoop-2.9.2目录下输入:sbin/start-dfs.sh

诸葛检查一下吧,首先是hadoop02:

hadoop03:

hadoop04:

说明是成功的,不容易啊。

六、启动yarn

这里注意,我们要在hadoop03中启动。即如果NameNode和ResourceManager不在同一台机器上,要在ResourceManager机器上启动yarn

输入:sbin/start-yarn.sh

可能会报权限不够问题。

那就改权限吧:需要注意看清前面是哪个服务器有权限问题

sudo chmod 777 /tmp/yarn-xiximayou-resourcemanager.pid

sudo chmod 777 /tmp/yarn-xiximayou-nodemanager.pid

之后再执行:

查看一下:

hadoop03:

hadoop02:

hadoop04:

跟预期的对照一下:

七、进行测试

记得将hadoop03和hadoop04的防火墙也给关闭掉

1、上传一个文件到集群

在hadoop02中的hadoop-2.9.2目录下:

先上传一个小文件:

bin/hdfs dfs -put wcinput/wc.input /

再上传一个大文件:

bin/hdfs dfs -put /opt/software/Market.zip /

然后我们去查看

点开Market.zip

大文件(超过128M)分成了两块 ,同时在hadoop02、03、04上都有一份备份。

八、集群停止

sbin/stop-yarn.sh

sbin/stop-dfs.sh

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-03-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
hadoop搭建完全分布式集群
后面的启动步骤可以用一步来代替,进入hadoop安装目录的sbin目录,执行:start-dfs.sh 。但建议还是按部就班来执行,比较可靠。
许喜朝
2020/10/27
4920
Hadoop完全分布式搭建
一、介绍 Hadoop2.0中,2个NameNode的数据其实是实时共享的。新HDFS采用了一种共享机制,Quorum Journal Node(JournalNode)集群或者Nnetwor
用户1263954
2018/06/22
1.4K0
Hadoop完全分布式安装
完全分布式安装部署,其实步骤上来说与伪分布式没有太大的区别,主要增加2台虚拟机部署称为一个3台的集群
我脱下短袖
2019/12/21
4740
Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)
本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是2.7.7,JDK版本是1.8。
星哥玩云
2022/07/25
8720
Hadoop2.0完全分布式集群搭建方法(CentOS7+Hadoop2.7.7)
Hadoop高可用(HA)集群搭建
HA:High Available,高可用 在Hadoop 2.0之前,在HDFS集群中NameNode存在单点故障 (SPOF:A Single Point of Failure) 对于只有一个NameNode的集群,如果NameNode机器出现故障(比如宕机或是软件、硬件升级),那么整个集群将无法使用,直到NameNode重新启动
CoderJed
2018/09/13
4.4K0
Hadoop高可用(HA)集群搭建
hadoop-3.2.0------>入门十一 完全分布式配置
由于ResourceManager和NameNode还有SecondaryNameNode比较消耗资源,顾三个配置分别配置到不同的主机上
用户5899361
2020/12/07
1K0
hadoop-3.2.0------>入门十一 完全分布式配置
ZooKeeper的安装
此文章的假设是hadoop集群已经搭建好。zookeeper已经搭建完成!参考《安装zookeeper笔记》
字母哥博客
2020/09/23
5720
ZooKeeper的安装
hadoop2.6.0完全分布式手动安装
遇到的问题: 15/05/01 09:56:48 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 下载:http://dl.bintray.com/sequenceiq/sequenceiq-bin/ 覆盖: tar -xvf hadoop-native-64-2.6.0.tar -C /home/cluster/hadoop/lib/native
字母哥博客
2020/09/23
3290
Hadoop完全分布式搭建部署
1)在各个JournalNode节点上,输入以下命令启动journalnode服务:(前提zookeeper集群已启动)
星哥玩云
2022/08/08
4770
Hadoop完全分布式搭建部署
安装和配置Hadoop集群(3节点)
在 安装和配置Hadoop(单节点) 这篇文章中,已经进行了Hadoop单机伪集群模式的部署。生产环境中,Hadoop都是以集群方式进行安装和部署的,否则,就不需要使用Hadoop了,分布式存储和分布式运算是Hadoop提供的核心功能。这篇文章将在单机安装的基础上,进行3个节点Hadoop集群的安装,因此如果你还没有单机安装过Hadoop,那么请先查看一下单机安装的这篇文章。
张子阳
2018/09/30
8K1
安装和配置Hadoop集群(3节点)
安装和配置Hadoop集群(3节点)
在 安装和配置Hadoop(单节点) 这篇文章中,已经进行了Hadoop单机伪集群模式的部署。生产环境中,Hadoop都是以集群方式进行安装和部署的,否则,就不需要使用Hadoop了,分布式存储和分布式运算是Hadoop提供的核心功能。这篇文章将在单机安装的基础上,进行3个节点Hadoop集群的安装,因此如果你还没有单机安装过Hadoop,那么请先查看一下单机安装的这篇文章。
张子阳
2018/08/21
3.1K0
安装和配置Hadoop集群(3节点)
3台hadoop集群部署计划---安装系列一
注意:apache官网提供的hadoop-2.x的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库,
Dlimeng
2023/06/29
2890
Hadoop分布式部署
对于Hadoop Master(ResourceManager/NameNode)节点硬件配置要高一些
用户5252199
2022/04/18
4810
Hadoop分布式部署
【快速入门大数据】Hadoop分布式集群搭建
修改hadoop配置文件 /root/software/hadoop-2.6.0-cdh5.7.0/etc/hadoop
瑞新
2021/12/06
2270
【快速入门大数据】Hadoop分布式集群搭建
hadoop-3.2.0------>入门十三 完全分布式群起集群
注意:3.0之后的版本是修改 workers,2.0的版本是修改salves
用户5899361
2020/12/07
5860
hadoop-3.2.0------>入门十三 完全分布式群起集群
Windows上使用CentOS部署HA大数据环境
http://mirrors.aliyun.com/centos/7/isos/x86_64/
码客说
2022/11/14
1.6K0
Windows上使用CentOS部署HA大数据环境
CentOS7搭建Hadoop-3.3.0集群
这篇文章是基于Linux系统CentOS7搭建Hadoop-3.3.0分布式集群的详细手记。
Throwable
2020/12/29
2.3K0
原 Spark On Yarn完全分布式搭
Spark On Yarn完全分布式搭建     Spark On Yarn的搭建分为三个阶段,第一个是Zookeeper集群的搭建,第二是Hadoop集群的搭建,第三是Spark集群的搭建。所以以下将按照这三个步骤来给大家进行展示Spark On Yarn完全分布式搭建。 一、准备 1、软件及版本     1. jdk-8u65-linux-x64.tar.gz     2. scala-2.11.0.tgz     3. zookeeper-3.4.7.tar.gz     4. hadoop-2.7.
云飞扬
2018/05/17
1.7K0
一文教你快速了解伪分布式集群搭建(超详细!)
首先,我们需要知道配置伪分布式集群要修改的配置文件 所有配置文件都在 /opt/module/hadoop-2.7.2/etc/hadoop/内
不温卜火
2020/10/28
5940
一文教你快速了解伪分布式集群搭建(超详细!)
高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南
192.168.1.84 hadoop84 #namenode1,resourcemanager
白石
2019/08/23
4980
相关推荐
hadoop搭建完全分布式集群
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验