本教程主要介绍大数据集群日常巡检与健康检查的方法和实战技巧,包括系统状态检查、组件状态检查、性能检查等内容。风哥教程参考bigdata官方文档运维指南、配置说明等相关内容。
通过本教程的学习,您将掌握大数据集群的日常巡检与健康检查方法,实现对集群的定期检查和维护,确保大数据系统的稳定运行。
目录大纲
Part01-基础概念与理论知识
1.1 日常巡检概述
大数据集群日常巡检是指定期对集群的各个组件和系统进行检查,确保集群的正常运行,主要包括:
- 系统状态检查:检查服务器硬件和操作系统状态
- 组件状态检查:检查Hadoop、Hive、HBase等组件的运行状态
- 性能检查:检查集群的性能指标
- 安全检查:检查集群的安全状态
- 备份检查:检查备份是否正常
日常巡检是大数据平台运维的重要组成部分,为大数据分析和处理提供可靠的运行保障,学习交流加群风哥微信: itpux-com
1.2 健康检查指标
健康检查指标包括:
- 系统指标:CPU使用率、内存使用率、磁盘使用率、网络流量等
- HDFS指标:NameNode状态、DataNode状态、存储空间使用情况、块状态等
- YARN指标:ResourceManager状态、NodeManager状态、资源使用情况、作业执行情况等
- Hive指标:Metastore状态、查询执行情况等
- HBase指标:Master状态、RegionServer状态、表状态等
- Kafka指标:Broker状态、Topic状态、消息生产消费情况等
1.3 巡检周期
巡检周期建议:
- 日常巡检:每天进行,检查关键指标
- 周巡检:每周进行,检查所有指标
- 月巡检:每月进行,进行全面检查和性能评估
- 季度巡检:每季度进行,进行全面的系统评估和优化
Part02-生产环境规划与建议
2.1 巡检计划制定
风哥提示:巡检计划应根据集群规模和业务需求,制定合理的巡检频率和内容,确保巡检的全面性和有效性。
巡检计划制定建议:
- 明确巡检目标:确定巡检的目标和范围
- 制定巡检内容:根据集群组件和系统状态,制定详细的巡检内容
- 确定巡检频率:根据组件重要性和稳定性,确定巡检频率
- 分配巡检责任:明确巡检的责任分工
- 建立巡检流程:建立标准化的巡检流程
2.2 巡检工具选择
巡检工具选择建议:
- 命令行工具:使用系统和Hadoop自带的命令行工具
- 监控工具:使用Prometheus、Grafana等监控工具
- 自动化脚本:编写自动化巡检脚本
- 管理工具:使用Ambari、Cloudera Manager等管理工具
2.3 巡检报告模板
巡检报告模板建议:
- 基本信息:巡检时间、巡检人员、集群名称等
- 系统状态:服务器硬件和操作系统状态
- 组件状态:各组件的运行状态
- 性能指标:各组件的性能指标
- 安全状态:安全检查结果
- 问题汇总:发现的问题和处理建议
- 结论与建议:巡检结论和改进建议
Part03-生产环境项目实施方案
3.1 系统状态检查
系统状态检查:
top -b -n 1 | head -n 20
# 检查内存使用率
free -h
# 检查磁盘使用率
df -h
# 检查网络状态
netstat -tuln
# 检查系统负载
uptime
# 检查系统日志
tail -n 100 /var/log/messages
3.2 组件状态检查
组件状态检查:
hdfs dfsadmin -report
hdfs haadmin -getServiceState nn1
hdfs haadmin -getServiceState nn2
# 检查YARN状态
yarn node -list
yarn application -list
yarn rmadmin -getServiceState rm1
yarn rmadmin -getServiceState rm2
# 检查Hive状态
jps | grep Metastore
hive –version
# 检查HBase状态
hbase status
jps | grep HMaster
# 检查Kafka状态
kafka-topics.sh –list –bootstrap-server fgedu01:9092
# 检查ZooKeeper状态
zkServer.sh status
3.3 性能检查
性能检查:
hdfs dfs -test -d /user/fgedu
hdfs dfs -ls /user/fgedu
# 检查MapReduce性能
hadoop jar /bigdata/app/hadoop-3.3.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar pi 10
1000
# 检查Hive性能
hive -e “SELECT count(*) FROM fgedu.sales;”
# 检查HBase性能
hbase shell << 'EOF'
scan ‘fgedu_table’, {LIMIT => 10}
EOF
# 检查Kafka性能
kafka-producer-perf-test.sh –topic test –num-records 100000 –record-size 100 –throughput 1000
–producer-props bootstrap.servers=fgedu01:9092
kafka-consumer-perf-test.sh –topic test –broker-list fgedu01:9092 –fetch-size 1048576 –messages
100000
3.4 安全检查
安全检查:
firewall-cmd –state
firewall-cmd –list-all
# 检查Kerberos状态
kinit -k -t /etc/security/keytabs/hdfs.keytab hdfs/fgedu01.fgedu.net.cn
klist
# 检查权限设置
hdfs dfs -ls -la /user
hdfs dfs -ls -la /tmp
# 检查审计日志
tail -n 100 /bigdata/fgdata/logs/hadoop-hdfs-namenode-fgedu01.log | grep audit
Part04-生产案例与实战讲解
4.1 日常巡检脚本
案例:编写日常巡检脚本
# daily_check.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: `http://www.fgedu.net.cn`
echo “=== 系统状态检查 ===”
echo “CPU使用率:”
top -b -n 1 | head -n 20 | grep “%Cpu”
echo “\n内存使用率:”
free -h
echo “\n磁盘使用率:”
df -h
echo “\n系统负载:”
uptime
echo “\n=== HDFS状态检查 ===”
hdfs dfsadmin -report | grep -E “Configured Capacity|DFS Used%|Live datanodes”
hdfs haadmin -getServiceState nn1
hdfs haadmin -getServiceState nn2
echo “\n=== YARN状态检查 ===”
yarn node -list
yarn application -list
yarn rmadmin -getServiceState rm1
yarn rmadmin -getServiceState rm2
echo “\n=== Hive状态检查 ===”
jps | grep Metastore
echo “\n=== HBase状态检查 ===”
hbase status | head -n 10
echo “\n=== Kafka状态检查 ===”
kafka-topics.sh –list –bootstrap-server fgedu01:9092
echo “\n=== ZooKeeper状态检查 ===”
zkServer.sh status
echo “\n=== 巡检完成 ===”
# 执行巡检脚本
$ ./daily_check.sh
=== 系统状态检查 ===
CPU使用率:
%Cpu(s): 2.3 us, 0.7 sy, 0.0 ni, 96.7 id, 0.2 wa, 0.0 hi, 0.1 si, 0.0 st
内存使用率:
total used free shared buff/cache available
Mem: 62G 8.2G 48G 1.2G 5.8G 52G
Swap: 8.0G 0B 8.0G
磁盘使用率:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 15G 33G 32% /
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 12M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sdb1 500G 50G 425G 11% /bigdata
系统负载:
10:00:00 up 10 days, 8:30, 1 user, load average: 0.10, 0.15, 0.20
=== HDFS状态检查 ===
Configured Capacity: 1099511627776 (1024.0 GB)
DFS Used%: 19.99%
Live datanodes (3):
active
standby
=== YARN状态检查 ===
Total Nodes:3
Node-Id Node-State Node-Http-Address Number-of-Running-Containers
fgedu01:45454 RUNNING fgedu01:8042 2
fgedu02:45454 RUNNING fgedu02:8042 1
fgedu03:45454 RUNNING fgedu03:8042 0
Total applications:0
Application-Id Application-Name Application-Type User Queue State Final-State Progress Tracking-URL
active
standby
=== Hive状态检查 ===
12345 RunJar org.apache.hadoop.hive.metastore.HiveMetaStore
=== HBase状态检查 ===
1 active master, 0 backup masters, 3 servers, 0 dead, 0.6667 average load
=== Kafka状态检查 ===
test
sales
topic1
=== ZooKeeper状态检查 ===
ZooKeeper JMX enabled by default
Using config: /bigdata/app/zookeeper-3.6.3/conf/zoo.cfg
Mode: follower
=== 巡检完成 ===
4.2 健康检查实战
案例:健康检查实战
# 检查HDFS健康状态
Configured Capacity: 1099511627776 (1024.0 GB)
Present Capacity: 879609302016 (819.2 GB)
DFS Remaining: 703687441664 (655.4 GB)
DFS Used: 175921860352 (163.8 GB)
DFS Used%: 19.99%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
————————————————-
Live datanodes (3):
Name: 192.168.1.10:9866 (fgedu01)
Hostname: fgedu01
Decommission Status : Normal
Configured Capacity: 366503875925 (341.4 GB)
DFS Used: 58640620117 (54.6 GB)
Non DFS Used: 36650387593 (34.1 GB)
DFS Remaining: 271212868215 (252.7 GB)
DFS Used%: 16.00%
DFS Remaining%: 74.00%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Apr 08 10:00:00 CST 2026
Name: 192.168.1.11:9866 (fgedu02)
Hostname: fgedu02
Decommission Status : Normal
Configured Capacity: 366503875925 (341.4 GB)
DFS Used: 58640620117 (54.6 GB)
Non DFS Used: 36650387593 (34.1 GB)
DFS Remaining: 271212868215 (252.7 GB)
DFS Used%: 16.00%
DFS Remaining%: 74.00%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Apr 08 10:00:00 CST 2026
Name: 192.168.1.12:9866 (fgedu03)
Hostname: fgedu03
Decommission Status : Normal
Configured Capacity: 366503875925 (341.4 GB)
DFS Used: 58640620117 (54.6 GB)
Non DFS Used: 36650387593 (34.1 GB)
DFS Remaining: 271212868215 (252.7 GB)
DFS Used%: 16.00%
DFS Remaining%: 74.00%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Apr 08 10:00:00 CST 2026
# 检查YARN健康状态
Total Nodes:3
Node-Id Node-State Node-Http-Address Number-of-Running-Containers
fgedu01:45454 RUNNING fgedu01:8042 2
fgedu02:45454 RUNNING fgedu02:8042 1
fgedu03:45454 RUNNING fgedu03:8042 0
$ yarn application -list
Total applications:0
Application-Id Application-Name Application-Type User Queue State Final-State Progress Tracking-URL
4.3 巡检报告生成
案例:生成巡检报告
# generate_report.sh
# from:www.itpux.com.qq113257174.wx:itpux-com
# web: `http://www.fgedu.net.cn`
DATE=$(date +”%Y-%m-%d”)
REPORT_FILE=”巡检报告_${DATE}.txt”
echo “# 大数据集群巡检报告” > $REPORT_FILE
echo “\n## 基本信息” >> $REPORT_FILE
echo “- 巡检时间:$(date)” >> $REPORT_FILE
echo “- 巡检人员:fgedu”
– 集群名称:fgedu-cluster” >> $REPORT_FILE
echo “\n## 系统状态” >> $REPORT_FILE
echo “### CPU使用率” >> $REPORT_FILE
top -b -n 1 | head -n 20 | grep “%Cpu” >> $REPORT_FILE
echo “\n### 内存使用率” >> $REPORT_FILE
free -h >> $REPORT_FILE
echo “\n### 磁盘使用率” >> $REPORT_FILE
df -h >> $REPORT_FILE
echo “\n## 组件状态” >> $REPORT_FILE
echo “### HDFS状态” >> $REPORT_FILE
hdfs dfsadmin -report | grep -E “Configured Capacity|DFS Used%|Live datanodes” >> $REPORT_FILE
hdfs haadmin -getServiceState nn1 >> $REPORT_FILE
hdfs haadmin -getServiceState nn2 >> $REPORT_FILE
echo “\n### YARN状态” >> $REPORT_FILE
yarn node -list >> $REPORT_FILE
yarn application -list >> $REPORT_FILE
echo “\n### Hive状态” >> $REPORT_FILE
jps | grep Metastore >> $REPORT_FILE
echo “\n### HBase状态” >> $REPORT_FILE
hbase status | head -n 10 >> $REPORT_FILE
echo “\n## 问题汇总” >> $REPORT_FILE
echo “- 无重大问题” >> $REPORT_FILE
echo “\n## 结论与建议” >> $REPORT_FILE
echo “- 集群运行正常” >> $REPORT_FILE
echo “- 建议定期进行备份” >> $REPORT_FILE
echo “- 建议关注磁盘使用情况” >> $REPORT_FILE
echo “\n巡检报告生成完成:$REPORT_FILE”
# 执行报告生成脚本
$ ./generate_report.sh
巡检报告生成完成:巡检报告_2026-04-08.txt
$ cat 巡检报告_2026-04-08.txt
# 大数据集群巡检报告
## 基本信息
– 巡检时间:Fri Apr 8 10:00:00 CST 2026
– 巡检人员:fgedu
– 集群名称:fgedu-cluster
## 系统状态
### CPU使用率
%Cpu(s): 2.3 us, 0.7 sy, 0.0 ni, 96.7 id, 0.2 wa, 0.0 hi, 0.1 si, 0.0 st
### 内存使用率
total used free shared buff/cache available
Mem: 62G 8.2G 48G 1.2G 5.8G 52G
Swap: 8.0G 0B 8.0G
### 磁盘使用率
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 15G 33G 32% /
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 12M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sdb1 500G 50G 425G 11% /bigdata
## 组件状态
### HDFS状态
Configured Capacity: 1099511627776 (1024.0 GB)
DFS Used%: 19.99%
Live datanodes (3):
active
standby
### YARN状态
Total Nodes:3
Node-Id Node-State Node-Http-Address Number-of-Running-Containers
fgedu01:45454 RUNNING fgedu01:8042 2
fgedu02:45454 RUNNING fgedu02:8042 1
fgedu03:45454 RUNNING fgedu03:8042 0
Total applications:0
Application-Id Application-Name Application-Type User Queue State Final-State Progress Tracking-URL
### Hive状态
12345 RunJar org.apache.hadoop.hive.metastore.HiveMetaStore
### HBase状态
1 active master, 0 backup masters, 3 servers, 0 dead, 0.6667 average load
## 问题汇总
– 无重大问题
## 结论与建议
– 集群运行正常
– 建议定期进行备份
– 建议关注磁盘使用情况
Part05-风哥经验总结与分享
5.1 常见问题解决方案
常见问题解决方案:
- 磁盘空间不足:清理无用数据,扩展磁盘空间
- 内存不足:增加内存配置,优化内存使用
- CPU使用率高:优化作业执行,增加CPU资源
- 网络延迟高:检查网络连接,优化网络配置
- 组件状态异常:重启组件,检查配置
- 数据块丢失:检查DataNode状态,修复数据块
5.2 最佳实践分享
风哥提示:在日常巡检中,应注重全面性和及时性,及时发现和解决问题,确保集群的稳定运行。
最佳实践分享:
- 自动化巡检:编写自动化巡检脚本,定期执行
- 监控与告警:配置监控系统,及时发现问题
- 定期备份:定期备份数据和配置,确保可恢复性
- 文档化:详细记录巡检结果,建立巡检档案
- 持续改进:根据巡检结果,持续优化系统配置
5.3 巡检与维护建议
巡检与维护建议:
- 制定巡检计划:根据集群规模和业务需求,制定合理的巡检计划
- 明确巡检内容:确定巡检的具体内容和指标
- 培训巡检人员:加强巡检人员的培训,提高巡检能力
- 建立巡检制度:建立标准化的巡检制度和流程
- 定期评估:定期评估巡检效果,持续改进巡检方法
- 更多视频教程www.fgedu.net.cn
通过本教程的学习,您已经掌握了大数据集群日常巡检与健康检查的方法和实战技巧。在实际生产环境中,应根据具体业务场景和系统需求,建立完善的巡检制度,定期对集群进行检查和维护,确保大数据系统的稳定运行。学习交流加群风哥QQ113257174
更多学习教程公众号风哥教程itpux_com
from bigdata视频:www.itpux.com
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
