2024年全国职业院校(中职组)技能大赛(ZZ052大数据应用与服务)持续更新中!

2024年职业院校中职组ZZ052大数据应用与服务赛项赛题

第01套【子任务一:基础环境准备】

## 模块一:平台搭建与运维

(一) 任务一:大数据平台搭建

本模块需要使用 root 用户完成相关配置;所有组件均在/root/software 目录下。

1.子任务一:基础环境准备

master、slave1、slave2三台节点都需要安装JDK

(1) 将JDK安装包解压到/root/software目录下;

master:
tar -zxvf /root/software/jdk-8u212-linux-x64.tar.gz -C /root/software/

slave1:
cd /root
mkdir software

slave2:
cd /root
mkdir software

从master分发安装包到slave1和slave2的software中
scp -r /root/software/jdk1.8.0_212/ slave1:/root/software/
scp -r /root/software/jdk1.8.0_212/ slave2:/root/software/

(2) 在“/etc/profile”文件中配置JDK环境变量JAVA_HOME和PATH的值,并让配置文件立即生效;

master:
vim /etc/profile

添加内容:
#JAVA_HOME
export JAVA_HOME=/root/software/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin

从master将配置文件分发到slave1和slave2中
scp /etc/profile slave1:/etc/
scp /etc/profile slave2:/etc/

分别在master slave1 slave2中执行
source /etc/profile

(3) 查看JDK版本,检测JDK是否安装成功。

分别在master slave1 slave2中执行
java -version
JDK安装成功图

在master节点操作

(1) 在master上生成SSH密钥对;

ssh-keygen -t rsa #按3次回车

在这里插入图片描述

(2) 将master上的公钥拷贝到slave1和slave2上;在 master 上通过 SSH 连接 slave1 和 slave2 来验证。

ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2

ssh slave1
ssh slave2
ssh验证图

在这里插入图片描述

2.子任务二:Hadoop 完全分布式安装配置

master、slave1、slave2三台节点都需要安装Hadoop

(1) 在 主 节 点 将 Hadoop 安 装 包 解 压 到/root/software目录下;

tar -zxvf /root/software/hadoop-3.1.3.tar.gz -C /root/software/

(2) 依次配置hadoop-env.sh、 core-site.xml、 hdfs-site.xml、 mapred-site.xml、 yarn-site.xml和workers配置文件;Hadoop集群部署规划如下表;

表1 Hadoop集群部署规划

在这里插入图片描述

配置hadoop-env.sh

vim /root/software/hadoop-3.1.3/etc/hadoop/hadoop-env.sh

配置内容:

export JAVA_HOME=/root/software/jdk1.8.0_212
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

配置core-site.xml

vim /root/software/hadoop-3.1.3/etc/hadoop/core-site.xml

配置内容:

<configuration>
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
</property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/software/hadoop-3.1.3/data</value>
</property>
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>root</value>
</property>
    <property>
        <name>hadoop.proxyuser.root.hosts</name>
        <value>*</value>
</property>
    <property>
        <name>hadoop.proxyuser.root.groups</name>
        <value>*</value>
</property>
</configuration>

配置hdfs-site.xml

vim /root/software/hadoop-3.1.3/etc/hadoop/hdfs-site.xml

配置内容:

<configuration>
    <property>
        <name>dfs.namenode.http-address</name>
        <value>master:9870</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>master:9868</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

配置mapred-site.xml

vim /root/software/hadoop-3.1.3/etc/hadoop/mapred-site.xml

配置内容:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
           <name>yarn.app.mapreduce.am.env</name>
           <value>HADOOP_MAPRED_HOME=/root/software/hadoop-3.1.3</value>
         </property>
         <property>
           <name>mapreduce.map.env</name>
           <value>HADOOP_MAPRED_HOME=/root/software/hadoop-3.1.3</value>
         </property>
         <property>
           <name>mapreduce.reduce.env</name>
           <value>HADOOP_MAPRED_HOME=/root/software/hadoop-3.1.3</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>
</configuration>

配置 yarn-site.xml

vim /root/software/hadoop-3.1.3/etc/hadoop/yarn-site.xml

配置内容:

<configuration>
<!-- Site specific YARN configuration properties -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>

    <property>
        <name>yarn.scheduler.minimum-allocation-mb</name>
        <value>512</value>
    </property>
    <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>6144</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>7168</value>
    </property>
    <property>
        <name>yarn.nodemanager.resource.cpu-vcores</name>
        <value>8</value>
    </property>
    <property>
        <name>yarn.scheduler.minimum-allocation-vcores</name>
        <value>1</value>
    </property>
    <property>
        <name>yarn.scheduler.maximum-allocation-vcores</name>
        <value>8</value>
    </property>
<property>
     <name>yarn.nodemanager.pmem-check-enabled</name>
     <value>false</value>
</property>
<property>
     <name>yarn.nodemanager.vmem-check-enabled</name>
     <value>false</value>
</property>
<property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<property>
    <name>yarn.log.server.url</name>
    <value>http://master:19888/jobhistory/logs</value>
</property>
<property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>
</configuration>

配置workers

vim /root/software/hadoop-3.1.3/etc/hadoop/workers

删掉localhost添加以下内容:

master
slave1
slave2

(3) 在 master 节 点 的 Hadoop 安 装 目 录 下 依 次 创 建hadoopDatas/tempDatas 、 hadoopDatas/namenodeDatas 、hadoopDatas/datanodeDatashadoopDatas/dfs/nn/edits、hadoopDatas/dfs/snn/name和hadoopDatas/dfs/nn/snn/edits目录;

cd /root/software/hadoop-3.1.3

mkdir -p hadoopDatas/tempDatas
mkdir -p hadoopDatas/namenodeDatas
mkdir -p hadoopDatas/datanodeDatas
mkdir -p hadoopDatas/dfs/nn/edits
mkdir -p hadoopDatas/dfs/snn/name
mkdir -p hadoopDatas/dfs/nn/snn/edits

(4) 在master节点上使用scp命令将配置完的Hadoop安装目录直接拷贝至slave1和slave2;

scp -r /root/software/hadoop-3.1.3 slave1:/root/software/
scp -r /root/software/hadoop-3.1.3 slave2:/root/software/

(5) 三台节点的“/etc/profile”文件中配置Hadoop环境变量HADOOP_HOME和PATH的值,并让配置文件立即生效;

master:
vim /etc/profile

添加以下内容:
#HADOOP_HOME
export HADOOP_HOME=/root/software/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

在master上将配置文件分发到slave1和slave2上
scp /etc/profile slave1:/etc/
scp /etc/profile slave2:/etc/

分别在master slave1 slave2执行命令
source /etc/profile

(6) 在主节点格式化集群;

hadoop namenode -format
格式化成功图

在这里插入图片描述

(7) 在主节点依次启动HDFS、YARN集群和历史服务

都在master节点操作:

启动HDFS
start-dfs.sh

启动YARN
start-yarn.sh

启动历史服务
mapred --daemon start historyserver
或
mr-jobhistory-daemon.sh start historyserver
使用jps查看各主机进程

在这里插入图片描述

3.子任务三:MySQL 安装配置

只在master节点操作

(1) 将MySQL 5.7.25安装包解压到/root/software目录下;

tar -vxf /root/software/mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C /root/software/

(2) 使 用 rpm-ivh 依 次 安 装 mysql-community-common、mysql-community- libs、mysql-community-libs-compat 、 mysql-community-client 和 mysql-community-server包;

rpm -ivh /root/software/mysql-community-common-5.7.28-1.el7.x86_64.rpm
rpm -ivh /root/software/mysql-community-libs-5.7.28-1.el7.x86_64.rpm
rpm -ivh /root/software/mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
rpm -ivh /root/software/mysql-community-client-5.7.28-1.el7.x86_64.rpm
rpm -ivh /root/software/mysql-community-server-5.7.28-1.el7.x86_64.rpm
如果安装rpm -ivh /root/software/mysql-community-server-5.7.28-1.el7.x86_64.rpm出现报错
下载依赖:
yum install -y libaio
yum -y install numactl

(3) 安装好MySQL后,使用mysql用户初始化和启动数据库;

systemctl start mysqld

(4) 使用root用户无密码登录MySQL,然后将root用户的密码修改为123456,修改完成退出MySQL,重新登录验证密码是否修改成功;更改“mysql”数据库里的 user 表里的 host 项,从localhost 改成%即可实现用户远程登录;设置完成刷新配置信息,让其生效。

停止mysql服务
systemctl stop mysqld

vim /etc/my.cnf
加入下面配置放在[mysqld]下面:
skip-grant-tables

启动mysql服务
systemctl start mysqld

登录nysql
mysql -uroot

刷新配置:
flush privileges;

修改root用户密码
set password for root@localhost = password('123456');

再刷新配置:
flush privileges;

退出登录
exit;

重新登录mysql
mysql -uroot -p

配置用户用户远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

刷新配置:
flush privileges;
4.子任务四:Hive 安装配置

只在master节点操作。

(1) 将Hive 3.1.2的安装包解压到/root/software目录下;

tar -zxvf /root/software/apache-hive-3.1.2-bin.tar.gz -C /root/software/

(2) 在“/etc/profile”文件中配置Hive环境变量HIVE_HOME和PATH的值,并让配置文件立即生效;

master:
vim /etc/profile

添加以下内容:
#HIVE_HOME
export HIVE_HOME=/root/software/apache-hive-3.1.2-bin
export PATH=$PATH:$HIVE_HOME/bin

source /etc/profile

(3) 查看Hive版本,检测Hive环境变量是否设置成功;

hive --version
成功例图

在这里插入图片描述

(4) 切 换 到 $HIVE_HOME/conf 目 录 下 , 将 hive-env.sh.template文件复制一份并重命名为hive-env.sh;然后,使用vim编辑器进行编辑,在文件中配置HADOOP_HOME、HIVE_CONF_DIR以及HIVE_AUX_JARS_PATH参数的值,将原有值删除并将前面的注释符#去掉;配置完成,保存退出;

cd $HIVE_HOME/conf

cp ./hive-env.sh.template ./hive-env.sh

vim ./hive-env.sh

配置内容:
HADOOP_HOME=/root/software/hadoop-3.1.3
export HIVE_CONF_DIR=/root/software/apache-hive-3.1.2-bin/conf
export HIVE_AUX_JARS_PATH=/root/software/apache-hive-3.1.2-bin/lib

(5) 将 /root/software 目 录 下 的 MySQL 驱 动 包mysql-connector-java-5.1.47-bin.jar拷贝到$HIVE_HOME/lib目录下;

cp /root/software/mysql-connector-java-5.1.47.jar $HIVE_HOME/lib

(6) 在$HIVE_HOME/conf目录下创建一个名为hive-site.xml的文件,并使用vim编辑器进行编辑;

配置如下内容:

表2 配置内容

在这里插入图片描述

vim $HIVE_HOME/conf/hive-site.xml

添加内容:

<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>123456</value>
    </property>
</configuration>

(7) 使用schematool命令,通过指定元数据库类型为“mysql”,来初始化源数据库的元数据;

解决jar包冲突
rm -rf $HIVE_HOME/lib/guava-19.0.jar
cp /root/software/hadoop-3.1.3/share/hadoop/common/lib/guava-27.0-jre.jar $HIVE_HOME/lib

schematool -initSchema -dbType mysql -verbose
成功例图

在这里插入图片描述

(8) 使用CLI启动Hive,进入Hive客户端;在Hive默认数据库下创建一个名为student的管理表;

表3 数据表

在这里插入图片描述

进入hive
hive

在Hive默认数据库下创建表
create table student(id int,name string);

(9) 通过insert语句往student表中插入一条测试数据。

insert into student(id,name) values(18,"zhangsan");
成功例图

在这里插入图片描述

5.子任务五:Flume 安装配置

只在 master 节点操作。

(1) 将 Flume1.11.0 的 安 装 包 解 压 到/root/software目录下;

tar -zxvf /root/software/apache-flume-1.11.0-bin.tar.gz -C /root/software/

(2) 在“/etc/profile”文件中配置Flume环境变量FLUME_HOME和PATH的值,并让配置文件立即生效;

master:
vim /etc/profile

添加以下内容:
#FLUME_HOME
export FLUME_HOME=/root/software/apache-flume-1.11.0-bin
export PATH=$PATH:$FLUME_HOME/bin

source /etc/profile

(3) 使 用 cd 命 令 进 入 /root/software/apache-flume-1.11.0-bin/conf 目 录 下 , 使 用 cp 命 令 将 flume-env.sh.template文件复制一份,并重命名为flume-env.sh;使 用 vim 命 令 打 开“flume-env.sh” 配 置 文 件 , 找 到JAVA_HOME参数位置,将前面的“#”去掉,将值修改为本机JDK的实际位置;修改完成,保存退出;

cd /root/software/apache-flume-1.11.0-bin/conf

cp ./flume-env.sh.template ./flume-env.sh

vim  ./flume-env.sh

添加以下内容:
export JAVA_HOME=/root/software/jdk1.8.0_212

(4) 查看Flume版本,检测Flume是否安装成功。

flume-ng version
成功例图

在这里插入图片描述

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值