Hadoop完全分布式搭建(Hadoop-3.3.0)

这篇具有很好参考价值的文章主要介绍了Hadoop完全分布式搭建(Hadoop-3.3.0)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        本教程讲解Hadoop-3.3.0在Ubuntu系统下集群的搭建。

        在正式开始之前,需要自己先安装好一台虚拟机。下面给大家整理了过程中需要用到的资源包,可以自行获取:

链接:https://pan.baidu.com/s/1TWErk6DAyV99WId1af2kqg?pwd=wcop 
提取码:wcop 
--来自百度网盘超级会员V4的分享

创建hadoop用户

1.打开终端,输入命令,创建新用户

sudo useradd -m hadoop -s /bin/bash

2.为hadoop用户设置密码

sudo passwd hadoop

3.为了我们后面操作方便,这里可以给予hadoop用户添加管理员权限

sudo adduser hadoop sudo

hadoop3.3,分布式,hadoop,大数据

最后,在右上角齿轮注销当前用户,登录上我们刚刚创建的hadoop用户。

更新apt

1.更改下载服务器

        系统默认的软件源一般都是在外网,有时候不一定能下载成功,所以可以更改下软件源。进入系统设置(齿轮图标) --> 软件与更新

hadoop3.3,分布式,hadoop,大数据

 选择其他站点,再选择国内的软件源。

hadoop3.3,分布式,hadoop,大数据

 再点击右下角的选择服务器,输入密码授权。

hadoop3.3,分布式,hadoop,大数据

 根据弹窗信息,点击重新载入,等待加载。

2.打开终端,输入命令:

sudo apt-get update

更新apt,后续我们需要通过它来安装软件。

hadoop3.3,分布式,hadoop,大数据

3.安装vim,输入命令:

sudo apt-get install vim

        遇到下面提示时,直接输入y即可。

hadoop3.3,分布式,hadoop,大数据

 之后回车,等待安装即可。

安装SSH

1.输入命令,安装SSH

sudo apt-get install openssh-server

2. 安装成功后,执行下面命令登录到本机

ssh localhost

 当有以下提示时,输入yes。然后再输入密码即可登录到本机。

hadoop3.3,分布式,hadoop,大数据

但是这样我们每次登录都是需要密码的,所以我们接下来对ssh进行配置,使能无密码登录。

配置SSH免密登录

1.执行命令exit退出SSH,回到我们原来的窗口

2.利用ssh-keygen生成密钥,并将密钥加到授权中

cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 会有提示,都按回车就可以
cat ./id_rsa.pub >> ./authorized_keys  # 加入授权

3.再次使用ssh localhost即可无密码登陆到本机

hadoop3.3,分布式,hadoop,大数据

 Xshell、Xftp连接

1.xshell、xftp直接在官网下载即可,个人版的免费使用

2.执行命令ifconfig查看当前虚拟机的ip

hadoop3.3,分布式,hadoop,大数据

 3.连接xshell、xftp(以xshell为例)

hadoop3.3,分布式,hadoop,大数据

 然后输入用户名、密码即可连接成功

hadoop3.3,分布式,hadoop,大数据

安装Java环境

(1)第一种方式

1. cd /usr/lib
2. sudo mkdir jvm #创建/usr/lib/jvm目录用来存放JDK文件
3. cd ~ #进入hadoop用户的主目录
4. cd Downloads  #注意区分大小写字母,刚才已经通过FTP软件把JDK安装包jdk-8u371-linux-x64.tar.gz上传到该目录下
5. sudo tar -zxvf ./jdk-8u371-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解压到/usr/lib/jvm目录下

接下来配置环境变量,执行命令

vim ~/.bashrc

在开头加入以下内容

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_371
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

保存并退出,然后执行以下命令,是配置立马生效。

source ~/.bashrc

最后执行命令查看是否配置成功,出现下面情况即为配置成功

hadoop@ubuntu:~$ java -version
java version "1.8.0_371"
Java(TM) SE Runtime Environment (build 1.8.0_371-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

(2)第二种方式

1.在没有安装jdk的情况下,我们执行命令java -version,会有提示

hadoop3.3,分布式,hadoop,大数据

2.根据提示执行命令

sudo apt install openjdk-8-jre-headless

3.配置环境变量,执行命令:vim ~/.bashrc,在文件开头加入以下内容

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-i386
export PATH=$JAVA_HOME/bin:$PATH

保存退出

4.执行命令source ~/.bashrc使配置即刻生效

5.执行命令java -version查看是否配置成功

hadoop3.3,分布式,hadoop,大数据

         我们进行到这里,在正式安装Hadoop之前的一些基本配置已经完成,我们可以在关机状态(一定要在关机状态下)拍摄一个快照。

Slave1的配置

1.我们通过上面的快照克隆出一个新的虚拟机,作为我们的从节点Slave1.

2.克隆出的Slave1和之前的虚拟机一模一样,但是我们还需要重新配置SSH,然后再按照上面介绍的方法对xshell、xftp进行连接。

Hadoop的安装

1.首先我们先通过网盘下载hadoop-3.3.0的压缩包,然后通过xftp将压缩包传给我们的虚拟机,要记好我们上传到虚拟机的位置,我的是在  /home/hadoop/下载/    路径下。

hadoop3.3,分布式,hadoop,大数据2.解压到 /usr/local/ 路径下,输入命令

sudo tar -zxf hadoop-3.3.0-aarch64.tar.gz -C /usr/local

hadoop3.3,分布式,hadoop,大数据

然后我们再修改一下文件名,权限

cd /usr/local/
sudo mv ./hadoop-3.3.0/ ./hadoop            # 将文件夹名改为hadoop
sudo chown -R hadoop ./hadoop       # 修改文件权限

3. Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

cd /usr/local/hadoop
./bin/hadoop version

hadoop3.3,分布式,hadoop,大数据

 集群的搭建

1.网络配置

1.改变虚拟机的主机名,我们将主节点设为Master,从节点设为Slave1,使用下面命令

sudo vim /etc/hostname

修改完成后,重新启动虚拟机,打开终端,主机名已经改变

hadoop3.3,分布式,hadoop,大数据hadoop3.3,分布式,hadoop,大数据

2.然后,在Master节点中执行如下命令打开并修改Master节点中的“/etc/hosts”文件:

sudo vim /etc/hosts

可以在hosts文件中增加如下两条IP和主机名映射关系:

192.168.222.151 Master
192.168.222.152 Slave1

hadoop3.3,分布式,hadoop,大数据 在Slave1节点下的hosts文件下添加上面映射关系,ip根据自己虚拟机情况进行修改。然后再重新启动各虚拟机,打开终端,在各结点下输入命令:测试是否相互ping得通,如果ping不通,后面就无法顺利配置成功:

ping Master -c 3  
ping Slave1 -c 3

hadoop3.3,分布式,hadoop,大数据hadoop3.3,分布式,hadoop,大数据

 2.SSH免密登录各节点

必须要让Master节点可以SSH无密码登录到各个Slave节点上。首先,生成Master节点的公匙,如果之前已经生成过公钥,必须要删除原来生成的公钥,重新生成一次,因为前面我们对主机名进行了修改。具体命令如下:

cd ~/.ssh              # 如果没有该目录,先执行一次ssh localhost
rm ./id_rsa*           # 删除之前生成的公匙(如果已经存在)
ssh-keygen -t rsa      # 执行该命令后,遇到提示信息,一直按回车就可以

为了让Master节点能够无密码SSH登录本机,需要在Master节点上执行如下命令:

cat ./id_rsa.pub >> ./authorized_keys

完成后可以执行命令“ssh Master”来验证一下,可能会遇到提示信息,只要输入yes即可,测试成功后,请执行“exit”命令返回原来的终端。接下来,在Master节点将上公匙传输到Slave1节点:

scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/

上面的命令中,scp是secure copy的简写,用于在 Linux下进行远程拷贝文件,类似于cp命令,不过,cp只能在本机中拷贝。执行scp时会要求输入Slave1上hadoop用户的密码,输入完成后会提示传输完毕,如下图所示。

hadoop3.3,分布式,hadoop,大数据

接着在Slave1节点上,将SSH公匙加入授权:

mkdir ~/.ssh       # 如果不存在该文件夹需先创建,若已存在,则忽略本命令
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
rm ~/id_rsa.pub    # 用完以后就可以删掉

 这样,在Master节点上就可以无密码SSH登录到各个Slave节点了,可在Master节点上执行如下命令进行检验:

ssh Slave1

 hadoop3.3,分布式,hadoop,大数据

 3.配置PATH变量

在Master节点下,首先执行命令“vim ~/.bashrc”,也就是使用vim编辑器打开“~/.bashrc”文件,然后,在该文件最上面的位置加入下面一行内容:

export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin

保存后执行命令“source ~/.bashrc”,使配置生效。

4.配置集群环境

在配置集群/分布式模式时,需要修改“/usr/local/hadoop/etc/hadoop”目录下的配置文件,这里仅设置正常启动所必须的设置项,包括workers 、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml共5个文件

(1)修改workers

在进行分布式配置时,可以保留localhost,让Master节点同时充当名称节点和数据节点,或者也可以删掉localhost这行,让Master节点仅作为名称节点使用。
本教程让Master节点仅作为名称节点使用,因此将workers文件中原来的localhost删除,只添加如下一行内容:

Slave1

(2)修改core-site.xml

请把core-site.xml文件修改为如下内容:

<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://Master:9000</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>file:/usr/local/hadoop/tmp</value>
                <description>Abase for other temporary directories.</description>
        </property>
</configuration>

(3)修改hdfs-site.xml

对于Hadoop的分布式文件系统HDFS而言,一般都是采用冗余存储,冗余因子通常为3,也就是说,一份数据保存三份副本。但是,本教程只有一个Slave节点作为数据节点,即集群中只有一个数据节点,数据只能保存一份,所以 ,dfs.replication的值还是设置为 1。hdfs-site.xml具体内容如下:

<configuration>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>Master:50090</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
</configuration>

(4)修改mapred-site.xml

把mapred-site.xml文件配置成如下内容:

<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name>
                <value>Master:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name>
                <value>Master:19888</value>
        </property>
        <property>
                <name>yarn.app.mapreduce.am.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property>
        <property>
                <name>mapreduce.map.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property>
        <property>
                <name>mapreduce.reduce.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value>
        </property> 
</configuration>

(5)修改yarn-site.xml

请把yarn-site.xml文件配置成如下内容:

<configuration>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>Master</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
</configuration>

上述5个文件全部配置完成以后,需要把Master节点上的“/usr/local/hadoop”文件夹复制到各个节点上。具体来说,需要首先在Master节点上执行如下命令:

cd /usr/local
sudo rm -r ./hadoop/tmp     # 删除 Hadoop 临时文件
sudo rm -r ./hadoop/logs/*   # 删除日志文件
tar -zcf ~/hadoop.master.tar.gz ./hadoop   # 先压缩再复制
cd ~
scp ./hadoop.master.tar.gz Slave1:/home/hadoop

然后在Slave1节点上执行如下命令:

sudo rm -r /usr/local/hadoop    # 删掉旧的(如果存在)
sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local
sudo chown -R hadoop /usr/local/hadoop

首次启动Hadoop集群时,需要先在Master节点执行名称节点的格式化(只需要执行这一次,后面再启动Hadoop时,不要再次格式化名称节点),命令如下:

hdfs namenode -format

现在就可以启动Hadoop了,启动需要在Master节点上进行,执行如下命令:

start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver

 通过命令jps可以查看各个节点所启动的进程。如果已经正确启动,则在Master节点上可以看到NameNode、ResourceManager、SecondrryNameNode和JobHistoryServer进程,如下图所示。

hadoop3.3,分布式,hadoop,大数据

在Slave节点可以看到DataNode和NodeManager进程,如下图所示。

 hadoop3.3,分布式,hadoop,大数据

缺少任一进程都表示出错。另外还需要在Master节点上通过命令“hdfs dfsadmin -report”查看数据节点是否正常启动,如果屏幕信息中的“Live datanodes”不为 0 ,则说明集群启动成功。由于本教程只有1个Slave节点充当数据节点,因此,数据节点启动成功以后,会显示如下图所示信息。

hadoop3.3,分布式,hadoop,大数据

也可以在Linux系统的浏览器中输入地址“http://master:9870/”,通过 Web 页面看到查看名称节点和数据节点的状态。如果不成功,可以通过启动日志排查原因。 

        特别需要注意的是,本教程只实现了一个从节点,如果你有更多的从节点,那么对应它们的操作都是一样的。

参考文献

林子雨编著-大数据软件安装和编程实践指南_厦门大学数据库实验室 (xmu.edu.cn)

等等文章来源地址https://www.toymoban.com/news/detail-847766.html

到了这里,关于Hadoop完全分布式搭建(Hadoop-3.3.0)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 大数据技术栈-Hadoop3.3.4-完全分布式集群搭建部署-centos7(完全超详细-小白注释版)虚拟机安装+平台部署

    目录 环境条件: 1、安装虚拟机(已安装好虚拟机的可跳转至  二、安装JDK与Hadoop) (1)直接新建一台虚拟机 (2)首次启用虚拟机,进行安装 一、集群前置环境搭建(三台机器分别设置hostname、网卡(ip)配置、ssh免密登录) 1、查看一下本机与虚拟机的网卡和ip信息 (1)

    2024年02月06日
    浏览(10)
  • Hadoop3.x完全分布式模式下slaveDataNode节点未启动调整

    Hadoop3.x完全分布式模式下slaveDataNode节点未启动调整

    目录 前言 一、问题重现 1、查询Hadoop版本  2、集群启动Hadoop 二、问题分析 三、Hadoop3.x的集群配置 1、停止Hadoop服务 2、配置workers 3、从节点检测 4、WebUI监控 总结         在大数据的世界里,Hadoop绝对是一个值得学习的框架。关于Hadoop的知识,有很多博主和视频博主都做

    2024年02月04日
    浏览(12)
  • Hadoop3.1.4分布式搭建

    Hadoop3.1.4分布式搭建

    1.1 实验网络规划 hostname ip addr role other k8s-m133 10.10.10.133 NameNode, DataNode, NodeManageer k8s-m134 10.10.10.134 SecondaryNameNode, DataNode, NodeManageer k8s-m135 10.10.10.135 ResourceManager, DataNode, NodeManageer k8s-n151 10.10.10.151 DataNode, NodeManageer k8s-n157 10.10.10.157 DataNode, NodeManageer 1.2 配置免密登录(所有节点) 1

    2024年02月06日
    浏览(8)
  • Hadoop完全分布式搭建

    Hadoop完全分布式搭建

    1.下载VM 2.下载Centos镜像 3.下载hadoop 4.下载FinalShell 5.下载jdk文件  6.下载hive,数据仓库学习大数据专业的用的到     注:开启虚拟机把鼠标放入屏幕点击后消失,使用键盘上下键进行选择   注:点击之后,什么都不动,再点击完成(因为它自动帮我们分区了) 注:我们配置

    2024年02月04日
    浏览(7)
  • 搭建完全分布式Hadoop

    搭建完全分布式Hadoop

    登录三个虚拟机 执行命令: vim /etc/hosts 1、上传安装包 上传hadoop安装包 查看hadoop安装包 2、解压缩安装包 执行命令: tar -zxvf hadoop-3.3.4.tar.gz -C /usr/local 查看解压后的目录 3、配置环境变量 执行命令: vim /etc/profile 存盘退出,执行命令: source /etc/profile ,让配置生效 查看had

    2024年02月04日
    浏览(13)
  • Hadoop完全分布式搭建(Hadoop-3.3.0)

    Hadoop完全分布式搭建(Hadoop-3.3.0)

            本教程讲解Hadoop-3.3.0在Ubuntu系统下集群的搭建。         在正式开始之前,需要自己先安装好一台虚拟机。下面给大家整理了过程中需要用到的资源包,可以自行获取: 1.打开终端,输入命令,创建新用户 2.为hadoop用户设置密码 3.为了我们后面操作方便,这里可以给

    2024年04月11日
    浏览(9)
  • 【Hadoop】完全分布式集群搭建

    【Hadoop】完全分布式集群搭建

    大家好,我是向阳花花花花,这篇文章是我历时三天,推翻重做两小时进行搭建的Hadoop集群(完全分布式)个人笔记和感想,收录于初心的《大数据》专栏。 🏠 个人主页:初心%个人主页 🧑 个人简介:大家好,我是初心,一名正在努力的双非二本院校计算机专业学生 💕

    2024年02月15日
    浏览(9)
  • Hadoop完全分布式集群搭建

    Hadoop完全分布式集群搭建

    1.在虚拟机关机的状态下选择克隆 2.开始克隆 3.选择从当前状态创建 4.创建一个完整的克隆 5.选择新的虚拟机存储位置(选择内存充足的磁盘) 6.开始克隆 7.克隆完成 8.同样的方法克隆第二台虚拟机 9.在计算机中存在三台虚拟机 将第一台虚拟机更名为hadoop01 修改hadoop01的主机

    2024年02月02日
    浏览(5)
  • Hadoop的完全分布式搭建

    Hadoop的完全分布式搭建

    主机名 Hadoop10 Hadoop11 Hadoop12 网络 192.168.10.10 192.168.10.11 192.168.10.12 用户 hadoop root hadoop root hadoop root HDFS NameNode DateNode DateNode Secondary NameNode DataNode YARN NodeManager NodeManager ResourceManager NodeManager 安装虚拟机系统,省略 第一步:网卡配置 使用 vi 编辑器编辑系统的网卡配置文件,配置以下

    2024年02月08日
    浏览(8)
  • hadoop平台完全分布式搭建

    安装前准备 一、设置ssh免密登录 1.编辑hosts文件,添加主机名映射内容 vim  /etc/hosts 添加内容: 172.17.0.2      master 172.17.0.3      slave1 172.17.0.4      slave2 2.生成公钥和私钥 ssh-keygen –t rsa 然后按三次回车 3.复制公钥到其他容器(包括自己) ssh-copy-id master ssh-copy-id slav

    2024年03月17日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包