近期集群空间有点紧张,总是操心空间不足而崩溃,近期扩容又不太现实,经与集群用户沟通发现:集群上存储了非常多没用的历史数据,能够删除,这样就能够通过一个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集群空间使用情况报告脚本的更多相关文章

  1. 如何在不重启或重新格式化hadoop集群的情况下删除集群节点

    在master节点上的hadoop安装目录下 进入conf目录 配置hdfs-site.xml文件 添加节点如下: <property> <name>dfs.hosts.exc ...

  2. eclipse 远程链接访问hadoop 集群日志信息没有输出的问题l

    Eclipse插件Run on Hadoop没有用到hadoop集群节点的问题参考来源 http://f.dataguru.cn/thread-250980-1-1.html http://f.dat ...

  3. 吴裕雄--天生自然HADOOP学习笔记:hadoop集群实现PageRank算法实验报告

    实验课程名称:大数据处理技术 实验项目名称:hadoop集群实现PageRank算法 实验类型:综合性 实验日期:2018年 6 月4日-6月14日 学生姓名 吴裕雄 学号 15210120331 班 ...

  4. 精确报告Linux内存使用情况实用脚本:ps_mem

    精确报告Linux内存使用情况实用脚本:ps_mem 2019-09-06 12:45 ps_mem内存工具 ps_mem 是一个可以帮助我们精确获取 Linux 中各个程序核心内存使用情况的简单 p ...

  5. 基于OGG的Oracle与Hadoop集群准实时同步介绍

    版权声明:本文由王亮原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/220 来源:腾云阁 https://www.qclou ...

  6. 【大数据系列】hadoop集群设置官方文档翻译

    Hadoop Cluster Setup Purpose Prerequisites Installation Configuring Hadoop in Non-Secure Mode Config ...

  7. 构建高可靠hadoop集群之3- Quorum Journal Manager

    在正式环境中,搭建高可靠(ha)的系统是必须的. 例如oralce的rac,apache集群,windows服务器集群 本文不再赘言ha的重要性. 本文主要是对 http://hadoop.apach ...

  8. 大数据初级笔记二:Hadoop入门之Hadoop集群搭建

    Hadoop集群搭建 把环境全部准备好,包括编程环境. JDK安装 版本要求: 强烈建议使用64位的JDK版本,这样的优势在于JVM的能够访问到的最大内存就不受限制,基于后期可能会学习到Spark技术 ...

  9. 保姆级教程,带你认识大数据,从0到1搭建 Hadoop 集群

    大数据简介,概念部分 概念部分,建议之前没有任何大数据相关知识的朋友阅读 大数据概论 什么是大数据 大数据(Big Data)是指无法在一定时间范围内用常规软件工具进行捕捉.管理和处理的数据集合,是需 ...

随机推荐

  1. uva 10837 - A Research Problem(欧拉功能+暴力)

    题目链接:uva 10837 - A Research Problem 题目大意:给定一个phin.要求一个最小的n.欧拉函数n等于phin 解题思路:欧拉函数性质有,p为素数的话有phip=p−1; ...

  2. PHP - 使用pear的HTTP_Upload包进行上传

    前台代码: <html> <head> <title>上传文件</title> </head> <body> <form ...

  3. 基于visual Studio2013解决C语言竞赛题之1049抓牌排序

       题目 解决代码及点评 /* 功能:插入排序.许多玩牌的人是以这样的方式来对他们手中的牌进行排序的: 设手中原有3张牌已排好序,抓1张新牌,若这张新牌的次序在原来的第2张牌之后,第 3 ...

  4. [linux]linux命令学习-netstat

    linux非常多服务都与网络相关.当服务调不通或者是启动port被占用,或者是又是被防火墙挡住的时候,就须要查询网络相关的问题,netstat命令之前仅仅会用一两个參数这里.好好学习一番. 经常使用的 ...

  5. [Java 并发] Java并发编程实践 思维导图 - 第二章 线程安全性

    依据<Java并发编程实践>一书整理的思维导图.

  6. Windows下实战Apache+PHP [转]

        一.Apache 1.下载登陆Apache Lougne(http://www.apachelounge.com/download/),找到最新版本的Apache.笔者下载的是带IPv6和Cr ...

  7. maven生成war包的两种方式

    war包即对WEB应用程序进行打包,用于应用容器的部署.如在jboss中只要把war包丢入deploy目录下即可发布自己的应用了.打包方式有很多中,很多工具本身就支持此功能.下面主要介绍通过maven ...

  8. 重载new delete操作符是怎么调用的

    自定义的new操作符是怎么对英语new 一个对象的?自定义的delete操作符什么情况下得到调用?new一个对象时出现异常需要我操心内存泄露吗?下面的一个例子帮我们解开所有的疑惑. 1. 调用规则   ...

  9. cocos2d-x游戏开发 跑酷(两) 物理世界

    原创.转载请注明出处:http://blog.csdn.net/dawn_moon/article/details/21240343 泰然的跑酷用的chipmunk物理引擎.我没有细致学过这个东西. ...

  10. <转载>使用css让大图片不超过网页宽度

    让大图片不超过网页宽度,让图片不撑破通过CSS样式设置的DIV宽度! 接下来,我们来介绍下网站在开发DIV+CSS的时候会遇到一个问题,在发布一个大图片的时候因为图片过宽会撑破自己设置的div宽度的问 ...