实验一 JDK+Hadoo安装配置、Hadoop三种模式安装配置

JDK+Hadoop安装配置、集群模式搭建**

以下操作在SecureCRT里面完成

1.关闭防火墙

firewall-cmd --state 显示防火墙状态running/not running
systemctl stop firewalld 临时关闭防火墙,每次开机重新开启防火墙
systemctl disable firewalld 禁止防火墙服务。

2.传输JDK和HADOOP压缩包

SecureCRT 【File】→【Connect SFTP Session】开启sftp操作
put jdk-8u121-linux-x64.tar.gz
put hadoop-2.7.3.tar.gz
传输文件从本地当前路径(Windows)到当前路径(Linux)
在这里插入图片描述

3.解压JDK、HADOOP

tar -zxvf jdk-8u121-linux-x64.tar.gz -C /opt/module 解压安装
tar -zxvf hadoop-2.7.3.tar.gz -C /opt/module 解压安装

4.配置JDK并生效

vi /etc/profile文件添加:
export JAVA_HOME=/opt/module/jdk1.8.0_121
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
Esc :wq!保存并退出。不需要配置CLASSPATH。
source /etc/profile配置生效
javac检验是否成功
或者在/.bashrc文件里添加JAVA_HOME,可以对不同用户设置不同配置权限。

5.配置HADOOP并生效

vi /etc/profile文件添加:
export HADOOP_HOME=/opt/module/hadoop-2.7.3
export PATH= H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin:$PATH
Esc :wq!保存并退出。
source /etc/profile配置生效
hadoop检验是否成功

6.单机模式配置hadoop -env.sh

vi /opt/module/hadoop-2.7.3/etc/hadoop/hadoop-env.sh文件修改
显示行号 Esc :set number 取消行号Esc :set nonumber
修改第25行export JAVA_HOME=/opt/module/jdk1.8.0_121
Esc :wq!保存并退出
本地模式没有HDFS和Yarn,配置JDK后MapReduce能够运行java程序。

7.运行自带程序wordcount

cd /opt/module/hadoop-2.7.3/share/hadoop/mapreduce 转入wordcount所在路径。
运行touch in.txt,创建In.txt文件,作为输入文件。
(如果in.txt是空文件,运行vi in.txt,输入内容作为被统计词频的输入文件)
输出目录/output必须不存在,程序运行后自动创建。
运行wordcount:
hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/
运行成功之后,进入/output目录,打开文件part-r-00000查看计数结果。

Hadoop伪分布式模式配置

只有一台虚拟机bigdata128,既是namenode又是datanode。
5个配置文件:

1. core-site.xml

先创建临时文件夹:sudo mkdir -p /opt/module/hadoop-2.7.3/tmp
(1)、vi${HADOOP_HOME}/etc/hadoop/core-site.xml
打开文件后,光标移到< /configuration>这对标签下,
按 i 然后复制下面相应的红字内容,然后esc :wq!保存退出
在这里插入图片描述

2、hdfs-site.xml

vi ${HADOOP_HOME}/etc/hadoop/hdfs-site.xml
在这里插入图片描述

3、 mapred-site.xml

1)、vi${HADOOP_HOME}/etc/hadoop/mapred-site.xml
2)、打开后文件是空的,复制下面内容到里面即可	 (内容过多,复制后有可能内容会不全,记得检查一下)**

在这里插入图片描述

扫描二维码关注公众号,回复: 14617942 查看本文章

4、 yarn-site.xml

vi ${HADOOP_HOME}/etc/hadoop/yarn-site.xml
添加配置如下:
在这里插入图片描述

5、Slaves文件里使用默认localhost,或者添加 bigdata128(既是NameNode又是DataNode)

注:如果Slaves文件为空,就没有DataNode和NodeManager。
在Hadoop-2.7.3目录下输入:
ls 查看目录
vi slaves
输入
localhost
bigdata128
esc :wq!保存并退出
格式化:hdfs namenode –format (如果不是第一次格式化,格式化之前先删除/opt/module/hadoop-2.7.3/下面的tmp、logs两个目录)时间较长,记得多等

启动: start-all.sh(如果启动之前已经启动过,启动之前先停止stop-all.sh
查看伪分布式配置是否成功:
② 执行ll,查看/opt/module/hadoop-2.7.3/tmp/dfs目录,如下图所示,则正确。
②执行jps,如下图所示,NameNode、DataNode、SecondaryNameNode、ResourceManager、NodeManager如果全部启动,伪分布式配置成功。
web控制台访问:http://192.168.163.132:50070http://192.168.163.132:8088
页面正常显示,则成功。

运行wordcount

hdfs dfs -put in.txt /adir 上传本地当前路径下的in.txt文件 到hdfs的/adir目录下。
运行hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/。
在http://192.168.163.132:50070 查看/user/root/output/part-r-00000文件里的词频统计结果

在这里插入图片描述

Hadoop完全分布式模式配置

关闭虚拟机和软件,找到虚拟机所在文件夹
并复制虚拟机文件夹在当前目录下 名字可改可不改 改了原来的虚拟机就不可用需要重新打开
在这里插入图片描述

打开vm,主页选择打开虚拟机(如果上面改名字的时候没有改原来虚拟机文件夹的名字的话就可以直接打开原来的虚拟机)
在这里插入图片描述
在弹出窗口找到复制的虚拟机的文件夹,选择.vwx文件并打开(注:如果原来那个虚拟机的文件夹改了名字,在打开这个虚拟机时选择我移动了虚拟机)另外两个选择我已复制该虚拟机
在这里插入图片描述

打开三个虚拟机

更改主机名:第二台虚拟机更改为bigdata129第三台为bigdata130
hostnamectl set-hostname bigdata129
hostnamectl --pretty
hostnamectl –static
reboot –f 重启就改好了
在这里插入图片描述

打开CRT
在这里插入图片描述
像前一个一样新建两个连接,ip默认是在原虚拟机ip最后加1,如果连接不上可以在虚拟机上查看 ip addr
在crt选择原虚拟机(128那台)进行下面的操作
在这里插入图片描述

共3个虚拟机,前述伪分布式的bigdata128作为master,克隆另外两个虚拟机slaves:
输入 vi slaves 修改配置文件

配置hosts文件
bigdata129、bigdata131,克隆机自带安装JDK、Hadoop及配置文件。
3个虚拟机都修改slaves,添加两个子节点:
vi /opt/module/hadoop-2.7.3/etc/hadoop slaves
bigdata128
bigdata129
bigdata131
上面划线的操作我的会出错(是不能保存吧),所以我没做
vi /etc/hosts
3个虚拟机都修改\etc\hosts,注释已有内容,添加集群3个虚拟机的ip及对应主机名:(每个人的IP不同,注意修改 截图是我的 )
192.168.163.128 bigdata128
192.168.163.129 bigdata129
192.168.163.131 bigdata131
在这里插入图片描述

3个虚拟机各自修改\etc\hostname,添加各自的主机名bigdata128或者bigdata129或者bigdata131。
重启全部虚拟机,主机名生效。这里上面已经做过了,划线这里可以不管

3个虚拟机都删除\opt\module\hadoop-2.7.3\d的tmp、logs目录:
rm –rf \opt\module\hadoop-2.7.3\tmp rm –rf \opt\module\hadoop-2.7.3\logs

(若无法删除,先进入hadoop目录 cd /opt/module/hadoop-2.7.3 然后再删除 rm –rf tmp 复制有可能出错建议手打)
Logs也一样 三台虚拟机都删除
在这里插入图片描述
格式化master: hdfs namenode -format
启动master: start-all.sh
在这里插入图片描述
启动正常jps显示3台主机如上如下
在这里插入图片描述
启动正常创建目录如下
II: command not found
在这里插入图片描述
在这里插入图片描述

JDK+Hadoop安装配置、单机模式配置

以下操作在SecureCRT里面完成

1.关闭防火墙

firewall-cmd --state 显示防火墙状态running/not running
systemctl stop firewalld 临时关闭防火墙,每次开机重新开启防火墙
systemctl disable firewalld 禁止防火墙服务。

2.传输JDK和HADOOP压缩包

SecureCRT 【File】→【Connect SFTP Session】开启sftp操作
put jdk-8u121-linux-x64.tar.gz
put hadoop-2.7.3.tar.gz
传输文件从本地当前路径(Windows)到当前路径(Linux)
在这里插入图片描述

3.解压JDK、HADOOP

tar -zxvf jdk-8u121-linux-x64.tar.gz -C /opt/module 解压安装
tar -zxvf hadoop-2.7.3.tar.gz -C /opt/module 解压安装

4.配置JDK并生效

vi /etc/profile文件添加:
export JAVA_HOME=/opt/module/jdk1.8.0_121
export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
Esc :wq!保存并退出。不需要配置CLASSPATH。
source /etc/profile配置生效
运行命令javac,检验是否成功。

5.配置HADOOP并生效

vi /etc/profile文件添加:
export HADOOP_HOME=/opt/module/hadoop-2.7.3
export PATH= H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin:$PATH
Esc :wq!保存并退出。
source /etc/profile配置生效
运行命令hadoop,检验是否成功。

6.单机模式配置hadoop -env.sh

vi /opt/module/hadoop-2.7.3/etc/hadoop/hadoop-env.sh文件修改
显示行号 Esc :set number 取消行号Esc :set nonumber
修改第25行export JAVA_HOME=/opt/module/jdk1.8.0_121
Esc :wq!保存并退出
本地模式没有HDFS和Yarn,配置JDK后MapReduce能够运行java程序。

7.运行自带程序wordcount

cd /opt/module/hadoop-2.7.3/share/hadoop/mapreduce 转入wordcount所在路径。
运行touch in.txt,创建In.txt文件,作为输入文件。
(如果in.txt是空文件,运行vi in.txt,输入内容作为被统计词频的输入文件)
输出目录/output必须不存在,程序运行后自动创建。
运行wordcount:
hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/
运行成功之后,进入/output目录,打开文件part-r-00000查看计数结果。

Hadoop伪分布式模式配置

只有一台虚拟机bigdata128,既是namenode又是datanode。

一、基础安装配置

完成上述1-5安装配置。

二、修改以下5个配置文件

在与之间添加如下property:
①core-site.xml
在这里插入图片描述
在这里插入图片描述
⑤Slaves文件里使用默认localhost,或者添加 bigdata128(既是NameNode又是DataNode)
注:如果Slaves文件为空,就没有DataNode和NodeManager。
⑥修改\etc\hosts配置文件
运行命令 vi \etc hosts
注释掉已有内容,添加虚拟机的ip及对应主机名:
192.168.163.128 bigdata128
⑦修改\etc\hostname配置文件
运行命令 vi \etc hostname
添加虚拟机的主机名:
bigdata128
重启虚拟机,主机名生效。

三、格式化

hdfs namenode -format (如果不是第一次格式化,格式化之前先删除/opt/module/hadoop-2.7.3/下面的tmp、logs两个目录)

四、启动

start-all.sh (如果启动之前已经启动过,启动之前先停止stop-all.sh
查看伪分布式配置是否成功:
①执行ll,查看/opt/module/hadoop-2.7.3/tmp/dfs目录,如下图所示,则正确。
②执行jps,如下图所示,NameNode、DataNode、SecondaryNameNode、ResourceManager、NodeManager如果全部启动,伪分布式配置成功。
在这里插入图片描述
③web控制台访问:http://192.168.163.132:50070http://192.168.163.132:8088
页面正常显示,则成功。

五、运行wordcount

hdfs dfs -put in.txt /adir 上传本地当前路径下的in.txt文件 到hdfs的/adir目录下。
运行hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/。
在http://192.168.163.132:50070 查看/user/root/output/part-r-00000文件里的词频统计结果。

Hadoop完全分布式模式配置

一、新建另外两台Linux虚拟机

完全分布式模式共三台虚拟机,前述伪分布式的虚拟机(bigdata128)作为master主节点,克隆另外两个虚拟机(bigdata129、bigdata131)作为slaves子节点,克隆机自带安装JDK、Hadoop及配置文件。
注:此配置是为学习所用,且电脑资源有限,因此照搬伪分布式配置,将NameNode、SecondaryNameNode、ResourceManager全部配置在主节点bigdata128上面,实际情况则相反,应该分别配置在不同的节点上面。

二、修改以下配置文件

①slaves配置文件
三台虚拟机分别都运行命令 vi /opt/module/hadoop-2.7.3/etc/hadoop slaves
修改slaves为:
bigdata129
bigdata131
②修改\etc\hosts配置文件
三台虚拟机分别都运行命令 vi \etc hosts
注释已有内容,添加集群三台虚拟机的ip及对应主机名:
192.168.163.128 bigdata128
192.168.163.129 bigdata129
192.168.163.131 bigdata131
③修改\etc\hostname配置文件
三台虚拟机分别都运行命令 vi \etc hostname
添加各自的主机名bigdata128或者bigdata129或者bigdata131。
重启全部虚拟机,主机名生效。

三、格式化

在主节点bigdata128上面输入格式化命令(hdfs namenode -format),格式化集群。
注:如果不是第一次格式化,三台虚拟机都删除\opt\module\hadoop-2.7.3\下面的tmp、logs目录:rm –rf \opt\module\hadoop-2.7.3\tmp rm –rf \opt\module\hadoop-2.7.3\logs
注:如果格式化之前启动过集群,先在主节点bigdata128上面停止集群(stop-all.sh),再格式化。

四、启动集群

在主节点bigdata128上面输入启动命令(start-all.sh),启动集群。
注:如果启动之前启动过集群,先在主节点bigdata128上面停止集群(stop-all.sh),再启动。
启动正常,输入jps命令,显示如下:
在这里插入图片描述
启动正常jps显示3台主机如上如下
在这里插入图片描述
启动正常目录显示如下:
在这里插入图片描述
web控制台访问:http://192.168.163.132:50070http://192.168.163.132:8088
页面正常显示,则成功。

五、运行wordcount

hdfs dfs -put in.txt /adir 上传本地当前路径下的in.txt文件 到hdfs的/adir目录下。
运行hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/。
在http://192.168.163.132:50070 查看/user/root/output/part-r-00000文件里的词频统计结果。

猜你喜欢

转载自blog.csdn.net/Zgy_Csm/article/details/90416564