大数据实验环境搭建
一、实验简介
1.1 实验内容
本次实训是基于国产化操作系统openEuler上搭建大数据学习环境,实验主要内容分为两部分:
- 环境搭建,具体包括:
- Hadoop的分布式环境
- Spark分布式环境
- Zookeeper分布式环境
- HBase分布式环境
- Flume单机环境
- Hive单机环境
- Sqoop单机环境
- 大数据组件的基本用法
1.2 环境及其资源规划
-
所需软件
软件 说明 VMware workstation 16 虚拟机软件 Hadoop 版本为 2.7.4 HBase 版本为 1.4.8 Spark 版本为 2.3.2 Zookeeper 版本为 3.4.5 Hive 版本为 2.3.3 Flume 版本为 1.9.0 Sqoop 版本为 1.4.7 JDK 版本为 1.8+ -
拓扑图
三台虚拟机构建一个全分布式的环境,拓扑图如下:

主从节点上各自运行的进程分布规划:
节点类型 资源规划 主要组件名称 主要进程名称 主节点 至少4GB内存 2vCPU Hadoop、Spark、HBase、Zookeeper、Flume NameNode、SecondaryNameNode、DataNode、ResourceManager、NodeManager、HMatster、HRegionServer、QuorumPeerMain、Bootstrap、Master、Worker 从节点 至少2GB内存 1vCPU Hadoop、Spark、HBase、Zookeeper DataNode、NodeManager、HRegionServer、Worker、QuorumPeerMain
二、实验目的
本次实验的目的是希望学生能够从零开始搭建一套用于学习的大数据环境,包括Hadoop、HBase、Spark等分布式环境。
三、实验过程
3.1 安装虚拟机软件及操作系统
请自行参考如下资料进行操作,确保虚拟机及操作系统正常安装
- 安装虚拟机VMware或者VirtualBox
可以参考我另外一篇博客: Linux基础之虚拟机的创建 - 创建虚拟机和安装操作系统openEuler或者CentOS7
可以参考我另外一篇博客:在VMware上虚拟机上安装CentOS-7操作系统
这里选择安装openEuler,具体步骤如下:-
创建虚拟机














-
安装操作系统


然后确定。最后,启动虚拟机,进行操作系统的安装。

启动后,选择如下选项,选择好后,回车:

之后,等待一小会儿,就会出现如下界面,保持默认,点击continue按钮:

然后进入下一个界面,如下图所示,其中红色框框起来的部分是需要进行修配置的:

安装上图顺序,先从序号为1的地方开始,点击Installation Destination,进入配置页面,如下图所示,只需要点击Done按钮即可:

然后点击序号为2的部分,进入配置页面,如下图所示:

然后点击序号为3的部分,进入配置页面,如下图所示:

然后点击序号为4的部分,进入配置页面,如下图所示:

上述4个地方都配置后,就可以点击Begin Installation按钮了,如下图所示:

接下来就是比较漫长的等待过程了,这个过程估计5-15分钟左右不等。

当安装结束后,点击Reboot System按钮重启下系统:

系统如正常启动,就会显示登录的交互式界面,然后你输入root以及对应的密码即可正常进入到系统中了。

到此,openEuler22.03版本的操作系统已经被正常的安装。 -
克隆出另外两台虚拟机
我们需要三台虚拟机,另外两台虚拟机就可以利用VMWare Workstation软件的克隆功能,以之前新建好的虚拟机作为克隆的对象即可。具体操作如下:- 先将新建好的虚拟机关机,然后再进行克隆





- 重复上述操作,然后再次克隆出s3虚拟机出来。
- 修改新克隆出来的虚拟机s2和s3的内存大小和CPU核心数


- 先将新建好的虚拟机关机,然后再进行克隆
-
- 将三台虚拟机按顺序启动,设置静态IP地址
- 登录s1虚拟机中,设置静态IP地址:
进入网卡配置文件所在目录:
编辑网卡配置文件:cd /etc/sysconfig/network-scripts/
按照如下图所示,进行设置:vim ifcfg-ens33

为方便将上图所示内容进行复制后修改,提供如下内容作为参考,大家根据自己虚拟机实际IP地址进行修改即可:
最后,重启网卡:BOOTPROTO=static IPADDR=192.168.85.142 NETMASK=255.255.255.0 GATEWAY=192.168.85.2 DNS1=192.168.85.2 DNS2=114.114.114.114
重启命令为:
效果如下:ifdown ens33 # 停止,ens33是网卡名称 ifup ens33 # 启动
- 登录s2和s3,按照上述相同的操作设置:
- 将s2的IP地址设置成: 192.168.85.143
- 将s3的IP地址设置成: 192.168.85.144
- 登录s1虚拟机中,设置静态IP地址:
3.2 创建安装目录(在主节点上操作)
-
连接虚拟机:使用MobaXterm工具连接到刚刚创建的好的虚拟机


输入密码,当输入密码时界面上没有任何反应上正常的,只要输入正确后,按回车即可正常登录系统中了:

后续实验涉及到利用该工具连接虚拟机,可按照这个方法登录即可。 -
创建必要的目录:在所有主机上的根目录/下创建tools和mysoft两个目录
mkdir /tools mkdir /mysoft执行成功如下:

-
上传安装包:利用MobXtrem工具上传jdk、hadoop等安装包到/tools目录下


上传成功后,会在这里看到:

后续实验涉及到的其他的安装包按照这种方式自行上传即可。
3.2 安装JDK及基本设置(所有节点都需要操作)
-
设置虚拟机主机名
先登录s2虚拟机,然后执行如下命令:# 设置s2的主机名称 hostnamectl --static set-hostname s2 exit
再登录s3虚拟机,然后执行如下命令:# 设置s3的主机名称 hostnamectl --static set-hostname s3 exit
-
JDK的安装
- 分别登录s1、s2、s3三台虚拟机,然后在各自的节点上执行如下操作:
这里我以s1节点为例子进行说明,其他两个节点执行相同操作即可。 - 进入tools目录,然后执行下面的命令进行解压安装
cd /tools tar -zvxf jdk-8u171-linux-x64.tar.gz -C /mysoft/ - 配置环境变量,执行:
在.bash_profile文件中添加如下信息:vim ~/.bash_profileexport JAVA_HOME=/mysoft/jdk1.8.0_171 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin; - 让环境变量生效
source ~/.bash_profile - 验证jdk是否安装成功
结果如下:java -version[root@s1 tools]# java -version java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode) [root@s1 tools]#其他s2和s3需要执行上述相同的操作。
- 分别登录s1、s2、s3三台虚拟机,然后在各自的节点上执行如下操作:
-
虚拟机中配置主机名与ip地址的映射关系
- 所有主机都需要配置主机名映射关系,编辑hosts文件,执行:
在文件末尾添加如下内容,注意:vim /etc/hostsIP地址改成你自己环境的IP地址:
效果如下:192.168.85.142 s1 192.168.85.143 s2 192.168.85.144 s3

- 所有主机都需要配置主机名映射关系,编辑hosts文件,执行:
-
关闭防火墙
-
所有主机都需要关闭防火墙,每台节点都需要执行命令:
systemctl stop firewalld.service systemctl disable firewalld.service效果如下所示:

-
-
配置免密码登录
-
所有主机都需要生成密钥对并将公钥分发给其他节点,每台节点都需要执行命令:
生成密钥对:cd /root ssh-keygen -t rsa # 执行命令后,只需敲三次回车键效果如下:

三台虚拟机上都需要执行如下命令:在执行命令时需要先输入
yes,然后输入对于节点的密码:ssh-copy-id -i .ssh/id_rsa.pub root@s1 ssh-copy-id -i .ssh/id_rsa.pub root@s2 ssh-copy-id -i .ssh/id_rsa.pub root@s3在
s1虚拟机上执行的效果如下(s2和s3上也需要执行相同的命令):


当三台虚拟机都执行完成后,可以验证一下是否可以从s1通过ssh协议登录到s2,执行如下命令:ssh s2如能正常登录的话,会如下图所示:

-
3.3 安装Hadoop
以下操作只需在主节点s1上执行如下操作,如有特殊说明的请注意按照要求进行执行。
-
上传hadoop-2.7.4.tar.gz到/tools目录下
执行下面的命令进行解压安装tar -zvxf /tools/hadoop-2.7.4.tar.gz -C /mysoft/ mv /mysoft/hadoop-2.7.4 /mysoft/hadoop -
配置环境变量:
vim ~/.bash_profile添加如下信息:
export HADOOP_HOME=/mysoft/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin -
让环境变量生效:
source ~/.bash_profile -
验证是否生效:
执行:hdfs version
效果如下:[root@s1 tools]# hdfs version Hadoop 2.7.4 Subversion https://shv@git-wip-us.apache.org/repos/asf/hadoop.git -r cd915e1e8d9d0131462a0b7301586c175728a282 Compiled by kshvachk on 2017-08-01T00:29Z Compiled with protoc 2.5.0 From source with checksum 50b0468318b4ce9bd24dc467b7ce1148 This command was run using /mysoft/hadoop/share/hadoop/common/hadoop-common-2.7.4.jar [root@s1 tools]# -
新建tmp目录:
进入到hadoop安装目录下,执行:mkdir /mysoft/hadoop/tmp -
配置Hadoop配置文件
只需对五个配置文件进行配置即可:
hadoop-env.sh hdfs-site.xml core-site.xml mapred-site.xml yarn-site.xml配置文件所在目录:
/mysoft/hadoop/etc/hadoop -
配置 hadoop-env.sh文件
编辑该文件,执行:vim /mysoft/hadoop/etc/hadoop/hadoop-env.sh找到JAVA_HOME所在地方,将
${JAVA_HOME}改成/mysoft/jdk1.8.0_171:export JAVA_HOME=/mysoft/jdk1.8.0_171 -
配置 hdfs-site.xml
编辑该文件,执行:vim /mysoft/hadoop/etc/hadoop/hdfs-site.xml在
<configuration></configuration>之间添加<property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.permissions</name>


2127

被折叠的 条评论
为什么被折叠?



