专为大数据学生打造的实操指南,覆盖集群搭建、高可用配置、日志自动化管理,步骤精简 + 可复制代码,适配课程实验与作业需求!

一、集群环境准备

  1. 服务器初始化:3 台 CentOS 9 虚拟机(master/slaver1/slaver2),配置/etc/hosts、关闭防火墙、同步时间(ntpdate ntp4.aliyun.com
  2. JDK 配置:安装 JDK1.8 至/opt/module,配置JAVA_HOME环境变量,java -version验证
  3. SSH 免密登录:master 执行ssh-keygen生成密钥,ssh-copy-id slaver1/slaver2实现免密访问

截图位置:服务器/etc/hosts配置结果 | JDK 版本验证界面 | SSH 免密登录测试标题:图 1 环境准备关键步骤效果

二、Hadoop 集群部署

  1. 安装与配置:Hadoop 3.x 解压至/opt/module,修改core-site.xml/hdfs-site.xml/yarn-site.xml/mapred-site.xml/workers,同步配置到从节点
  2. 环境变量/etc/profile.d/my_env.sh添加HADOOP_HOMEsource生效
  3. 启动验证hdfs namenode -format初始化,start-all.sh启动集群,jps查看进程(master 显 NameNode/ResourceManager,从节点显 DataNode/NodeManager)
  4. HDFS 命令hdfs dfs -ls/-put/-get/-mkdir/-rm完成文件管理

截图位置:核心配置文件代码 | jps进程查看 | HDFS 命令执行结果标题:图 2 Hadoop 集群部署与基础操作

三、MapReduce 实战(UV/PV 统计)

  1. 数据准备:Nginx 日志merged_web.log上传至 HDFS /user/student/web_log/
  2. 代码编写:3 个 Java 类(LogMapper 提取 IP、LogReducer 统计 PV/UV、LogAnalyzer 配置任务)
  3. 编译打包javac -classpath $(hadoop classpath) ...编译,jar cvf log-analyzer.jar ...打包
  4. 任务执行hadoop jar log-analyzer.jar ...提交任务,hdfs dfs -cat查看结果(示例:PV=238,UV=90)

截图位置:Java 代码片段 | 打包命令结果 | 统计结果输出标题:图 3 MapReduce UV/PV 统计实战

四、ZooKeeper 高可用配置

  1. ZooKeeper 部署:解压至/opt/modulezoo.cfg配置 3 节点(server.1=master:2888:3888),myid设 1/2/3,zkServer.sh start启动(1 Leader+2 Follower)
  2. Hadoop HA 配置:修改core-site.xml(添加 ZK 集群)、hdfs-site.xml(2 个 NameNode)、yarn-site.xml(2 个 ResourceManager)
  3. 故障模拟:kill master 的 NameNode/ResourceManager,验证 slaver1 自动切换为 Active 节点

截图位置zoo.cfg配置 | ZK 节点状态 | 故障切换后 Web 界面标题:图 4 ZooKeeper 高可用配置与验证

五、日志定时上传 HDFS

  1. Shell 脚本upload_to_hdfs.sh定义日志路径(/data/logs/access.log)、HDFS 目录(/logs/YYYY-MM-DD/),模拟日志 + 上传 + 验证
  2. 定时任务crontab -e添加0 1 * * * /path/upload_to_hdfs.sh(每天凌晨 1 点执行)
  3. 测试验证:手动执行脚本,hdfs dfs -ls查看目录

截图位置:脚本代码 | crontab 配置 | HDFS 日志目录标题:图 5 日志定时上传自动化配置

六、文档样例截图

📥 付费下载

本文档含100 + 实操截图、可复制代码、故障排查提示,直接适配学生实验场景,无需额外查资料!

完整文档获取:[点击付费下载《hadoop+zookeeper 高可用 + 日志定时上传 hdfs + 运维.docx》](格式:docx,支持 Windows/macOS,可直接用于作业提交与实训报告)

支付 ¥25.9 购买本节后解锁剩余7%的内容

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注