《大数据技术与应用》课程实验

一、使用 VMWare Workstation pro安装 CentOS 7.6,安装并配置 Hadoop,实现伪分布式与分布式部署

1.Vmware Workstation Pro 12、CentOS与SecureCRT安装

在Vmware中安装CentOS并记录ip
在这里插入图片描述
SecureCRT新建Session,输入记录的虚拟机IP进行连接
在这里插入图片描述

2.关闭防火墙

显示防火墙状态

firewall-cmd --state

临时关闭防火墙,每次开机重新开启防火墙

systemctl stop firewalld

禁止防火墙服务

systemctl disable firewalld

再次运行firewall-cmd --state
显示not running即可

3.传输JDK和HADOOP压缩包

使用 Xftp 将下面两个包从本地当前路径(Windows)传从到当前路径(Linux)

jdk-8u121-linux-x64.tar.gz
hadoop-2.7.3.tar.gz

JDK和HADOOP压缩包下载链接:https://pan.baidu.com/s/1BVXasc7O5v0kfr9wdYIF_A
提取码:utbg
Xftp下载地址:https://www.netsarang.com/zh/xftp-download/

4.解压JDK、HADOOP包

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

5.配置JDK并生效

打开配置文件

vi /etc/profile

做如下修改

export JAVA_HOME= usr/local/hadoop /jdk1.8.0_121
export PATH=$JAVA_HOME/bin:$PATH 

保存并退出,生效配置

source /etc/profile

接着运行命令javac检验是否成功。

6.配置HADOOP并生效

打开配置文件

vi /etc/profile

做如下修改

export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.7
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

保存并退出,生效配置

source /etc/profile

接着运行命令hadoop检验是否成功。

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

hadoop-env.sh文件修改

vi /opt/module/hadoop-2.7.3/etc/hadoop/hadoop-env.sh

修改第25行

export JAVA_HOME=/opt/module/jdk1.8.0_121

显示行号 Esc :set number
取消行号 Esc :set nonumber
保存并退出
本地模式没有HDFS和Yarn,配置JDK后MapReduce能够运行java程序。

8.运行自带程序wordcount

转入wordcount所在路径

cd /opt/module/hadoop-2.7.3/share/hadoop/mapreduce

创建In.txt文件,作为输入文件

touch 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查看计数结果

9.Hadoop伪分布式模式配置

1).基础安装配置
一定要完成上述1-6安装配置
2).修改以下6个配置文件
进入Hadoop路径

cd /usr/local/hadoop/hadoop-2.7.3/etc/hadoop

①~④配置文件均在<configuration与 </configuration之间添加如下property:

①core-site.xml

    <!--配置HDFS主节点,namenode的地址,9000是RPC通信端口-->
    <property>
            <name>fs.defaultFS</name>
            <value>hdfs:// iZuf6hb8srmhxeqc7i7ysvZ:9000</value>
    </property>
    <!--配置HDFS数据块和元数据保存的目录,一定要修改-->
    <property>
            <name>hadoop.tmp.dir</name>
            <value>/opt/module/hadoop-2.7.3/tmp</value>
    </property> 

②hdfs-site.xml

<!--注释配置数据块的冗余度,默认是3-->			 
<property>		 
	     <name>dfs.replication</name>		 
	     <value>1</value>		 
</property>		
<!--secondaryNameNode的主机地址--> 
<property>
         <name>dfs.namenode.secondary.http-address</name>
         <value>bigdata128:50090</value>
</property>

③mapred-site.xml
该配置文件不存在,先复制

cp  mapred-site.xml.template  mapred-site.xml

再添加如下property

<!--配置MR程序运行的框架-->			 
<property>			 
	  <name>mapreduce.framework.name</name> 
	  <value>yarn</value> 
</property>	 

④yarn-site.xml

<!--配置Yarn的节点-->			 
<property>			 
	  <name>yarn.resourcemanager.hostname</name> 
	  <value>bigdata128</value> 
</property>	 
<!--NodeManager执行MR任务的方式是Shuffle洗牌-->			 
<property>	 
	  <name>yarn.nodemanager.aux-services</name> 
	  <value>mapreduce_shuffle</value> 
</property>

Slaves文件里使用默认localhost,或者添加 bigdata128(既是NameNode又是DataNode)
注:如果Slaves文件为空,就没有DataNode和NodeManager。

⑤修改\etc\hosts配置文件

vi \etc\hosts

注释掉已有内容,添加虚拟机的ip及对应主机名(修改为自己的虚拟机IP和主机名)
注:查询虚拟机的ip ip addr 查询主机名 hostname
192.168.128.130 bigdata128

⑥修改\etc\hostname配置文件

vi  \etc\hostname

添加虚拟机的主机名:
bigdata128

重启虚拟机,配置生效
3).格式化

hdfs namenode -format 

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

4).启动

start-all.sh 

如果启动之前已经启动过,启动之前先停止 stop-all.sh
5).查看伪分布式配置是否成功:

cd tmp/dfs

①执行ll,查看/opt/module/hadoop-2.7.3/tmp/dfs目录,如下图所示,则正确。
在这里插入图片描述

②执行jps,如下图所示 NameNode、DataNode、SecondaryNameNode、ResourceManager、NodeManager 如果全部启动,伪分布式配置成功。
在这里插入图片描述

6).运行wordcount
上传本地当前路径下的in.txt文件 到hdfs的/adir目录下。

hdfs dfs -put in.txt /adir 

运行

hadoop jar hadoop-mapreduce-examples-2.7.3.jar wordcount /adir/in.txt output/

可在端口号50070中产看统计结果

二、JAVA程序实现wordcount HDFS上传下载

1.安装配置JDK+Eclipse+Maven

步骤:1.安装JDK→2.安装Eclipse→3.安装Maven→4. Eclipse里配置Maven (下载Windows版本,在Windows里安装使用。)

1).安装配置JDK
①官网下载Java开发工具安装包jdk-8u201-windows-x64.exe:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
②运行安装包,第一次选择JDK安装路径,第二次选择JRE安装路径,开始安装。
③配置JDK的环境变量,Path添加JDK的\bin的安装路径,cmd命令行运行javac,查看是否成功安装配置。

2).安装Eclipse
①官网下载Eclipse安装包eclipse-inst-win64:https://www.eclipse.org/downloads/
②运行安装包,选择Eclipse IDE for Java Developers,开始安装。过程可能较慢。

3).安装Maven
① Maven官网http://maven.apache.org/download.cgi,选择最近的镜像,选择Maven压缩包apache-maven-3.6.0-bin.tar.gz开始下载。
②解压Maven压缩包apache-maven-3.6.0-bin.tar.gz,解压后的文件夹\apache-maven-3.6.0,将其考入自定义路径,如C:\eclipse\apache-maven-3.6.0。
③配置Maven的环境变量,Path添加Maven的\bin的安装路径,cmd命令行运行mvn -v,查看是否成功安装配置。

4).Eclipse配置Maven
①修改settings.xml
在安装所在文件夹\apache-maven-3.6.0下面,新建\repository文件夹,作为Maven本地仓库。在文件settings.xml里添加 <localRepository>C:\eclipse\apache-maven-3.6.0\repository</localRepository>
②配置Maven的installation和User Settings
【Preferences】→【Maven】→【Installations】配置Maven安装路径,【User Settings】配置settings.xml的路径。
③添加pom.xml依赖
依赖(Maven Repository: hadoop)所在网址:https://mvnrepository.com/tags/hadoop ,找到对应版本的三个依赖(如下),拷贝至pom.xml的与之间,保存之后自动生成Maven Dependencies。

<dependencies>
  <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-hdfs</artifactId>
      <version>2.7.3</version>
  </dependency>
  <dependency>  
      <groupId>org.apache.hadoop</groupId>  
      <artifactId>hadoop-client</artifactId>  
      <version>2.7.3</version>  
  </dependency> 
  <dependency>
      &
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值