VMwareWorkstation虚拟机下的Hadoop完全分布式环境搭建(HDFS,YARN,SSH配置)----hadoop学习笔记

11 篇文章 0 订阅
3 篇文章 0 订阅
工具:装了CentOS系统的虚拟机

这里是先实现伪分布式,再对伪分布式进行克隆,修改得到的完全分布式

第一步:安装前准备
1.关闭防火墙

[root@localhost ~]# systemctl stop
firewalld

关闭防火墙

[root@localhost ~]# systemctl disable
firewalld

防止开机启动防火墙

2.将计算机重命名

运行命令

hostnamectl set-hostname 名字

重启

reboot

3.安装linux版的JDK1.8

jdk1.8Linux版链接👇
链接:https://pan.baidu.com/s/1_uMp9acRxhFQCO8PQDfo3Q
提取码:2jiq
这个是安装在虚拟机里面的,传进虚拟机解压就行了,小白不要给他直接解压了。
我建议在普通用户home目录下新建一个文件夹,专门存放这些工具,避免寻找的时候很麻烦
最好用普通用户安装,因为我后续演示的操作都为普通用户下的操作

4.配置JDK环境变量

输入命令vim ~/.bash_profile
在文件末尾插入这两句话就行了在这里插入图片描述
路径一定要填你自己的安装路径!!!切勿直接照抄!!!在你的jdk安装路径下输入pwd就可以获得当前的路径

让环境变量生效一下
输入命令:source ~/.bash_profile
输入命令javac或者java看看有没有报错
验证一下安装有没有问题

5.下载并安装Hadoop

hadoop压缩包👇同理解压在Linux里面
链接:https://pan.baidu.com/s/1YBulGsEjay0ltMu3YA8ouw
提取码:h37y
这里就一并配置好环境变量吧,配置命令跟jdk的配置一样
在bash_profile最下面再加上两句话就行了。👇
在这里插入图片描述
路径一定要填你自己的安装路径!!!切勿直接照抄!!!在你的Hadoop安装路径下输入pwd就可以获得当前的路径
让环境变量生效:source ~/.bash_profile

若开机登录是root用户,切换到普通用户,需要重新输入使环境变量立即生效的命令
输入命令hadoop看看有没有报错,验证一下安装是否成功

6.运行官方案例测试Hadoop

官方案例:
在这里插入图片描述运行结果
在这里插入图片描述

hadoop 是Hadoop的启动命令 jar以jar包方式运行
hare/hadoop/mapreduce-examles-2.7.2.jar是Hadoop官方提供的案例目录
grep启动grep案例
grep_in输入目录(需自己创建)
grep_out输出目录(不能自己创建,运行结果存储在里面)
‘dfs[a-z.]+’正则表达式 表示以dfs开头的匹配项

第二步:搭建伪分布式

什么是分布式????
在同一台机器上运行不同的进程(伪分布式)
在不同的机器上运行相同的进程(完全分布式)

1.修改hadoop软件路径下 etc/hadoop中的core-site.xml

在最下面插入
在这里插入图片描述

:wq保存退出

2.修改hadoop软件路径下etc/hadoop中的hdfs-site.xml

最下面插入在这里插入图片描述
:wq保存退出

3.初始化namenode

命令:
hdfs namenode -format

此命令切记只能执行一次,否则后续会出现重置namenode 的id的现象,就无法和datanode的id相互对应,如果出现了重启多次,就直接删除hadoop安装路径下的data目录重新初始化

初始化完成会发现hadoop安装路径下出现了data路径
进去到tmp路径下,会有name和data两个目录,分别就是对应着namenode和datanode

4.启动namenode在这里插入图片描述

通过jps命令可以看到,namenode已经运行起来了

前往浏览器输入 虚拟机ip:50070就可以进入该hadoop机群的界面
在这里插入图片描述

4.启动datanode

在这里插入图片描述
在这里插入图片描述
可以看到datanode也链接上了
上传一个文件测试一下
在这里插入图片描述
在这里插入图片描述

此时点开文件有文件下载的选项,但是这里如果进行下载,会出现无法下载的情况

在这里插入图片描述
在这里插入图片描述

这个原因是因为Windows并不知道你的虚拟机的名字对应的ip地址,无法进行下载,这时需要对C:\Windows\System32\drivers\etc路径下的hosts文件进行配置

在此文件里输入:虚拟机IP 计算机名

保存退出,这时windows就可以识别到虚拟机的ip了
这里直接配置三个,为了方便后面完全分布式的克隆机群使用
在这里插入图片描述
在这里插入图片描述

搭建yarn伪分布式

进入hadoop目录,编辑etc/hadoop/里面的一些文件

配置yarn-site.xml
在这里插入图片描述

置yarn-env.sh

在这里插入图片描述

配置mapred-env.sh

配置hadoop-env.sh

注意maperd-env.sh会多出一个.template后缀(临时文件),重命名产出这个后缀

.sh文件进去之后修改JAVA_HOME即可

搭建成功全部启动

启动yran之前先启动namenode和datanode

[hadoop@hadoop101 ~]$ yarn-daemon.sh start
resourcemanager

[hadoop@hadoop101 ~]$ yarn-daemon.sh start
nodemanager

端口号8088

跑一个案例在分布式上创建目录运行案例

实现分布式

在这里插入图片描述

先修改系统时间,设置hadoop101~103的系统时间为网络时间

安装ntpdate工具

yum -y install ntp ntpdate

设置系统时间与网络时间同步

ntpdate cn.pool.ntp.org

配置core-site.xml
在这里插入图片描述

配置hdfs-site.xml

设置副本为3

指定secondnamenode为hadoop103这个机器
在这里插入图片描述

配置yarn-site.xml

将resourcemanager 配置到hadoop102上
在这里插入图片描述

配置maperd-site.xml
在这里插入图片描述

以上步骤均在hadoop101完成配置

配置完成后用scp发送到hadoop102和hadoop103

发送完成

逐步启动

1.在hadoop101上启动namenode

[hadoop@hadoop101 logs]$ hadoop-daemon.sh
start namenode

2.在全部机器上启动datanode

hadoop-daemon.sh start datanode

3.在hadoop103机器上启动secondarynamenode

[hadoop@hadoop103 ~]$ hadoop-daemon.sh
start secondarynamenode

4.在hadoop102上启动resourcemanager

[hadoop@hadoop102 hadoop]$
yarn-daemon.sh start resourcemanager

5.在所有机器上启动nodemanager

[hadoop@hadoop102 ~]$ yarn-daemon.sh start
nodemanager

到此时完全分布式已经搭建完毕了,这时基于伪分布式进行修改的

这时在hdfs上跑一个官方案例

在hdfs上建立一个wc_in文件夹

[hadoop@hadoop101 ~]$ hdfs dfs -mkdir
/wc_in

上传几个有内容的文件到wc_in中

[hadoop@hadoop101 ~]$ hdfs dfs -put h*
/wc_in

调用wordcount案例查一下上传的文件内的单词数量

[hadoop@hadoop101 ~]$hadoop jar hadoopsoftware/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar
wordcount /wc_in /wc_out

然后再hdfs上进行查看

[hadoop@hadoop101 ~]$ hdfs dfs -cat
/wc_out/*

搭建完成!!!!!!!

以上是手动启动

配置群起ssh

群起调用

start-all.sh命令

分别在三台机器上创建密钥对

ssh-keygen -t rsa

敲三次回车

进入home目录,查看隐藏文件夹.ssh

里面会出现id_rsa和id_rsa.pub

其中.pub是公钥,另一个是私钥

可以cat 查看一下,看了也没什么卵用

这时需要将每台机器的公钥发送给另外两台机器

发送完就ok了直接start-all.sh

yarn不受配置文件限制

搭建群起的时候需要在resourcemanager机器上调用start-all.sh,否则resourcemanager起不来,群关同理
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值