hadoop集群空间使用情况报告脚本
近期集群空间有点紧张,总是操心空间不足而崩溃,近期扩容又不太现实,经与集群用户沟通发现:集群上存储了非常多没用的历史数据,能够删除,这样就能够通过一个crontab脚本每天生成集群空间使用报告,当使用量超过70%、80%是分别报警,并通知那些用户占用空间较大,预留当机冗余空间,这样就不须要时刻操心集群空间爆满了。
[hdfs@hanagios48 root]$ more /home/hdfs/dfsadmin_report.sh
#!/bin/bash
source ~/.bash_profile
today=$(date +%Y%m%d)
#report=`hadoop dfsadmin -report|head -n 11`
report=/tmp/report
echo "Hi,各位集群用户
当Hadoop集群空间使用量达到70%时,各位将会收到Warning邮件,提示清理空间;
当Hadoop集群空间使用量到达80%时,各位将会收到Critical邮件, 提示清理空间;
为保证集群数据安全,预留down机冗余空间,请各位务必清理,如因数据量确实巨大,集群无法容纳,请及时告知运维进行扩容,谢谢!">$report
echo >>$report
hadoop dfsadmin -report|head -n 11 >>$report
echo ---------------------- >>$report
echo dfs used details: >>$report
hadoop fs -du / >>$report
echo >>$report
hadoop fs -du /user >>$report
dfs_used_percent=`cat $report|grep "DFS Used%"|awk -F: '{print $2}'`
dfs_used=`echo ${dfs_used_percent}|awk -F% '{print $1}'`
# 百分百小数比較
#expr ${dfs_used} \>\= 80
user=laijingli2006@126.com
title=`echo "${today}[${dfs_used_percent}] WBY Hadoop Cluster Hdfs Useage Report: dfs_used ${dfs_used_percent}"`
echo $title
if [ $(expr ${dfs_used} \>\= 80) = 1 ];then
echo dfs_used 80
#cat $report|mail -s "Critical: $title" $user
cat $report|/usr/bin/mutt -s "Critical: $title" $user
elif [ $(expr ${dfs_used} \>\= 70) = 1 ];then
echo 70
#cat $report|mail -s "Warning: $title" $user
cat $report|/usr/bin/mutt -s "Warning: $title" $user
else
echo 60
#cat $report|mail -s "Normal: $title" $user
#cat $report|/usr/bin/mutt -s "Normal: $title" $user
fi
#cat $report|mail -s $today DfsReport: dfs_used ${dfs_used_percent} 362560701@qq.com
crontab运行效果还不错:
[hdfs@hanagios48 root]$ crontab -l
05 8 * * * /home/hdfs/dfsadmin_report.sh
[hdfs@hanagios48 root]$ more /tmp/report
Hi,各位集群用户
当Hadoop集群空间使用量达到70%时,各位将会收到Warning邮件,提示清理空间;
当Hadoop集群空间使用量到达80%时,各位将会收到Critical邮件,提示清理空间;
为保证集群数据安全,预留down机冗余空间,请各位务必清理,如因数据量确实巨大,集群无法容纳,请及时告知运维进行扩容,谢谢!
Configured Capacity: 124854950621184 (113.55 TB)
Present Capacity: 118317151626783 (107.61 TB)
DFS Remaining: 38704545865728 (35.2 TB)
DFS Used: 79612605761055 (72.41 TB)
DFS Used%: 67.29%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
-------------------------------------------------
Datanodes available: 15 (15 total, 0 dead)
----------------------
dfs used details:
Found 6 items
0 hdfs://hamaster140:9000/benchmarks
125752 hdfs://hamaster140:9000/data0
0 hdfs://hamaster140:9000/system
13721821810608 hdfs://hamaster140:9000/tech
1803375805154 hdfs://hamaster140:9000/tmp
6411197575455 hdfs://hamaster140:9000/user
Found 14 items
33222938 hdfs://hamaster140:9000/user/azk
4072247213805 hdfs://hamaster140:9000/user/cla
40705761240 hdfs://hamaster140:9000/user/din
0 hdfs://hamaster140:9000/user/fea
0 hdfs://hamaster140:9000/user/gao
36454169547 hdfs://hamaster140:9000/user/gmz
1877816487439 hdfs://hamaster140:9000/user/hdf
148965233376 hdfs://hamaster140:9000/user/imp
2416017438 hdfs://hamaster140:9000/user/in
0 hdfs://hamaster140:9000/user/lin
0 hdfs://hamaster140:9000/user/luo
149973222708 hdfs://hamaster140:9000/user/shi
82586246964 hdfs://hamaster140:9000/user/wuy
0 hdfs://hamaster140:9000/user/zho
[hdfs@hanagios48 root]$
hadoop集群空间使用情况报告脚本的更多相关文章
- 如何在不重启或重新格式化hadoop集群的情况下删除集群节点
在master节点上的hadoop安装目录下 进入conf目录 配置hdfs-site.xml文件 添加节点如下: <property> <name>dfs.hosts.exc ...
- eclipse 远程链接访问hadoop 集群日志信息没有输出的问题l
Eclipse插件Run on Hadoop没有用到hadoop集群节点的问题参考来源 http://f.dataguru.cn/thread-250980-1-1.html http://f.dat ...
- 吴裕雄--天生自然HADOOP学习笔记:hadoop集群实现PageRank算法实验报告
实验课程名称:大数据处理技术 实验项目名称:hadoop集群实现PageRank算法 实验类型:综合性 实验日期:2018年 6 月4日-6月14日 学生姓名 吴裕雄 学号 15210120331 班 ...
- 精确报告Linux内存使用情况实用脚本:ps_mem
精确报告Linux内存使用情况实用脚本:ps_mem 2019-09-06 12:45 ps_mem内存工具 ps_mem 是一个可以帮助我们精确获取 Linux 中各个程序核心内存使用情况的简单 p ...
- 基于OGG的Oracle与Hadoop集群准实时同步介绍
版权声明:本文由王亮原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/220 来源:腾云阁 https://www.qclou ...
- 【大数据系列】hadoop集群设置官方文档翻译
Hadoop Cluster Setup Purpose Prerequisites Installation Configuring Hadoop in Non-Secure Mode Config ...
- 构建高可靠hadoop集群之3- Quorum Journal Manager
在正式环境中,搭建高可靠(ha)的系统是必须的. 例如oralce的rac,apache集群,windows服务器集群 本文不再赘言ha的重要性. 本文主要是对 http://hadoop.apach ...
- 大数据初级笔记二:Hadoop入门之Hadoop集群搭建
Hadoop集群搭建 把环境全部准备好,包括编程环境. JDK安装 版本要求: 强烈建议使用64位的JDK版本,这样的优势在于JVM的能够访问到的最大内存就不受限制,基于后期可能会学习到Spark技术 ...
- 保姆级教程,带你认识大数据,从0到1搭建 Hadoop 集群
大数据简介,概念部分 概念部分,建议之前没有任何大数据相关知识的朋友阅读 大数据概论 什么是大数据 大数据(Big Data)是指无法在一定时间范围内用常规软件工具进行捕捉.管理和处理的数据集合,是需 ...
随机推荐
- 嵌入式环境:CentOS下添加用户并且让用户获得root权限
CentOS下添加用户并且让用户获得root权限 http://www.centoscn.com/CentOS/config/2014/0810/3471.html 1.添加用户,首先用adduser ...
- leetcode:Reverse Nodes in k-Group(以k为循环节反转链表)【面试算法题】
题目: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...
- 基于visual Studio2013解决C语言竞赛题之1033数字交换
题目 解决代码及点评 /* 功能:将一个一维数组中的偶数依次交换.例如有8个元素, 若其中第1.4.5三元素是偶数时应按下图交换. 例子: a[]={2,3,1,6 ...
- Linux经常使用命令(十二) - less
less 工具也是对文件或其他输出进行分页显示的工具.应该说是linux正统查看文件内容的工具.功能极其强大. less 的使用方法比起 more 更加的有弹性.使用了 less 时.更easy用来查 ...
- Java 异常分类
1.java异常层次结构: 粉红色的是已检查异常(checked exceptions),其必须被 try{}catch语句块所捕获,或者在方法签名里通过throws子句声明.已检查异常必须在编译时被 ...
- linux命令:env
env | grep DB ~/>env | grep DB KTK_NONDB_LOG=4
- iOS进阶面试题----经典10道
OneV‘s Den在博客里出了10道iOS面试题,用他的话是:"列出了十个应聘Leader级别的高级Cocoa/CocoaTouch开发工程师所应该掌握和理解的技术" . 在这 ...
- <input type=button> 跳转页面
打开新页面 标题" type="button" onclick='window.open("bedzhao.aspx")' /> 转换本页面 标 ...
- Windows Azure 安全最佳实践 - 第 2 部分:Azure 提供哪些现成可用的安全机制
在WindowsAzure安全最佳实践 - 部分:深度解析挑战防御对策中,我介绍了威胁形势以及在您的应用程序中采用深度防御的计划. 在本部分中,我将说明 Windows Azure的安全是一项共同责任 ...
- POJ3189_Steady Cow Assignment(二分图多重匹配/网络流+二分构图)
解题报告 http://blog.csdn.net/juncoder/article/details/38340447 题目传送门 题意: B个猪圈,N头猪.每头猪对每一个猪圈有一个惬意值.要求安排这 ...