2 大数据平台管理与运维
子任务一:启动大数据组件服务
(0 / 4分)
本任务需要使用root 用户启动大数据组件服务,具体要求如下:
考核条件如下 :
1.
在master节点、slave1节点、slave2节点分别启动zookeeper;
(0/ 1分)
在master节点、slave1节点、slave2节点分别启动zookeeper,查看各节点进程及状态。
操作环境:
master、slave1、slave2、master、slave1、slave2
2.
启动Hadoop集群(包括hdfs和yarn),使用jps命令查看master节点与slave1节点的Java进程;
(0/ 1分)
启动Hadoop集群(包括hdfs和yarn),使用jps命令查看master节点与slave1节点的Java进程;
|
master |
slave1 |
slave2 |
|
NameNode | ||
|
DataNode |
DataNode |
DataNode |
|
NodeManager |
NodeManager |
NodeManager |
|
ResourceManager | ||
|
SecondaryNameNode |
操作环境:
master、slave1、slave2
3.
在master节点中查看MySQL Server服务状态,开启hive元数据服务,正常进入Hive终端进行相关操作
(0/ 1分)
Hive安装成功后,进入Hive终端,创建gzedu数据库,并在HDFS上进行查看。
操作环境:
master、master
4.
启动Spark集群,使用jps命令查看master、slave1和slave2节点的Java进程。
(0/ 1分)
启动Spark集群,使用jps命令查看master、slave1和slave2节点的Java进程。
|
主机 |
角色 |
|
master |
Master |
|
slave1 |
Worker |
|
slave2 |
Worker |
操作环境:
master、slave1、slave2
下面给出子任务一:启动大数据组件服务的一次性命令清单,全部用 root 执行,按 4 个得分点顺序检查。
(IP:master 101.200.150.180,slave1 123.56.96.9,slave2 123.56.135.124)
✅ 1. 三台同时启动 Zookeeper(1 分)
master / slave1 / slave2 各自执行:
bash
复制
zkServer.sh start
zkServer.sh status # 应出现 Mode: follower 或 leader
一键脚本(在 master 批量):
bash
复制
for h in master slave1 slave2; do
ssh $h 'zkServer.sh start && zkServer.sh status'
done
✅ 2. 启动 Hadoop 集群(HDFS + YARN)(1 分)
只在 master 执行:
bash
复制
start-dfs.sh
start-yarn.sh
检查期望进程
master 执行:
bash
复制
jps
# 需出现:NameNode、ResourceManager、SecondaryNameNode
slave1 执行:
bash
复制
jps
# 需出现:DataNode、NodeManager
slave2 同理。
✅ 3. MySQL & Hive 元数据服务 & 进 Hive 建库(1 分)
master 执行:
bash
复制
# 确认 MySQL 已运行
systemctl status mysqld
# 启动元数据服务
nohup hive --service metastore > metastore.log 2>&1 &
# 进入 Hive CLI
hive
在 Hive 提示符下:
sql
复制
CREATE DATABASE gzedu;
EXIT;
HDFS 上验证:
bash
复制
hdfs dfs -ls /user/hive/warehouse
# 应看到 gzedu.db 目录
✅ 4. 启动 Spark 集群(1 分)
master 执行:
bash
复制
start-master.sh
start-slaves.sh # 会到 slave1/2 启动 worker
检查进程
master:
bash
复制
jps
# 需出现:Master
slave1 / slave2:
bash
复制
jps
# 需出现:Worker
Web UI 验证:
浏览器打开 http://master:8080 → Alive Workers 应为 2。
✅ 一键汇总(master 上可复制)
bash
全部输出符合期望进程即子任务一 4 分拿满!
子任务二:文件系统垃圾回收
(1 / 1分)
开启垃圾回收站,可以将要删除的文件首先放置在回收站中,等待配置的时间结束,进行真正的数据删除。
**Linux是没有垃圾回收站的,hdfs同样默认是没有的,但是hdfs是可以开启垃圾回收站的。**开启垃圾回收站,可以将要删除的文件首先放置在回收站中,等待配置的时间结束,进行真正的数据删除。
启动 HDFS 上的垃圾回收机制只需要配置两个参数:
- 第一个参数:fs.trash.interval,表示检查点被删除之前的分钟数,默认为0,单位为分钟。 如果为0,则表示禁用垃圾回收功能。 这里我们可以设置为1440分钟,即1天,保留在垃圾回收站的文件或文件夹超过1天后会自动删除。在生产上的 HDFS 垃圾回收机制是必须开启的,一般设置成7天或者14天,设置更长。
- 第二个参数:fs.trash.checkpoint.interval,表示垃圾检查点之间的分钟数,默认为 0,单位为分钟。 该值应该小于或等于
fs.trash.interval,如果为 0,则将该值设置为fs.trash.interval的值,所以生产上我们直接设置为 0。每次检查点运行时,它都会创建一个新的检查点,并删除超过fs.trash.interval分钟前创建的检查点。
考核条件如下 :
1.
设置HDFS垃圾回收机制,要求保留垃圾回收站的文件或文件夹7天,超过就自动删除;
(1/ 1分)
设置HDFS垃圾回收机制,要求保留垃圾回收站的文件或文件夹7天,超过就自动删除;
操作环境:
master
在 master 节点操作即可,仅需往 core-site.xml 追加两个垃圾回收参数并重启 HDFS 使配置生效。
✅ 步骤(master 执行)
- 进入配置目录
bash
复制
cd /root/software/hadoop-3.1.3/etc/hadoop
- 在 core-site.xml 的
<configuration>段末追加(7 天 = 10080 分钟)
bash
复制 ----------有问题,手动编辑
cat >> core-site.xml <<'EOF'
<!-- GC 回收站 -->
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>0</value>
</property>
EOF
- 分发到 slave 节点
bash
复制
scp core-site.xml root@slave1:/root/software/hadoop-3.1.3/etc/hadoop/
scp core-site.xml root@slave2:/root/software/hadoop-3.1.3/etc/hadoop/
- 重启 HDFS 使配置生效
bash
复制
stop-dfs.sh
start-dfs.sh
✅ 验证
bash
复制
# 删除一个测试文件
hdfs dfs -rm -r /tmp/test.txt
# 应出现类似
# Moved to trash: /user/root/.Trash/Current/tmp/test.txt
7 天后(10080 分钟)该检查点会被自动清空。
任务2:数据装载与程序调用
子任务一:文件上传下载
(0 / 5分)
本任务需要使用HDFS命令,已安装Hadoop及需要配置前置环境,具体要求如下:
考核条件如下 :
1.
在HDFS上创建 /user/hadoop/input目录;
(0/ 2分)
在HDFS上创建 /user/hadoop/input目录;
操作环境:
master
2.
在master节点将文件上传到HDFS的/user/hadoop/input目录下;
(0/ 2分)
文件路径:/root/software/hadoop-3.1.3/README.txt
操作环境:
master
3.
修改权限,赋予目录/user/hadoop/input最高777权限;
(0/ 1分)
修改权限,赋予目录/user/hadoop/input最高777权限;
操作环境:
master
下面给出 子任务一:文件上传下载 的完整 HDFS 命令清单,全部在 master(172.18.1.158) 用 root 执行即可。
✅ 1. 创建目录(2 分)
bash
hdfs dfs -mkdir -p /user/hadoop/input
✅ 2. 上传文件(2 分)
bash
hdfs dfs -put /root/software/hadoop-3.1.3/README.txt /user/hadoop/input/
✅ 3. 赋最高权限(1 分)
bash
hdfs dfs -chmod -R 777 /user/hadoop/input
✅ 验证
bash
# 查看目录及文件
hdfs dfs -ls /user/hadoop/input
# 查看权限
hdfs dfs -ls /user/hadoop
子任务二:Hadoop程序运行(0 / 5分)
本任务需要使用 Hadoop 默认提供的 sudoku 示例来完成如下数独题目解题任务,将数独解题结果写入主机/root/result.data:
程序路径:/root/software/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar
考核条件如下 :
1.
本任务需要使用 Hadoop 默认提供的 sudoku 示例来完成如下数独题目解题任务,将数独解题结果写入主机/root/result.data
(0/ 5分)
本任务需要使用 Hadoop 默认提供的 sudoku 示例来完成如下数独题目解题任务,将数独解题结果写入主机/root/result.data
8 5 ? 3 9 ? ? ? ?
? ? 2 ? ? ? ? ? ?
? ? 6 ? 1 ? ? ? 2
? ? 4 ? ? 3 ? 5 9
? ? 8 9 ? 1 4 ? ?
3 2 ? 4 ? ? 8 ? ?
9 ? ? ? 8 ? 5 ? ?
? ? ? ? ? ? 2 ? ?
? ? ? ? 4 5 ? 7 8
操作环境:
master
vim /tmp/sudoku.txt
hadoop jar /root/software/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar \
sudoku /tmp/sudoku.txt /tmp/result
vim /root/result.data 放进去
更多推荐
所有评论(0)