zoukankan      html  css  js  c++  java
  • shell脚本批量监控主机磁盘信息

    • 写一个配置文件保存被监控主机SSH连接信息,格式:IP User Port
    [root@Test ~]# cat host
    10.10.10.10 root 22
    10.10.10.11 root 22
    
    • 配置防火墙规则
    iptables -A INPUT  -m state --state RELATED,ESTABLISHED -j ACCEPT
    
    • 创建ssh免密通道
    [root@Test ~]# ssh-keygen -t rsa -f ~/.ssh/id_dsa -P ""
    [root@Test ~]# ssh-copy-id root@10.10.10.10
    [root@Test ~]# ssh-copy-id root@10.10.10.11
    
    • 脚本如下
    #!/bin/bash
    disk_file=/tmp/disk
    host_info=host
    function info() {
        echo -e "33[32m [INFO] 33[0m$@ "
    }
    function warn() {
        echo -e "33[31m [WARN] 33[0m$@"
    }
    for IP in `cat $host_info |awk '/^[^#]/{print $1}'`; do
        user=`awk -v ip=$IP  '$1==ip{print $2}' $host_info`
        port=`awk -v ip=$IP  '$1==ip{print $3}'  $host_info`
        ssh -p $port $user@$IP  df -h  > $disk_file
        USE_RATE_LIST=`cat $disk_file |awk 'BEGIN{OFS="="}/^/dev/{print $1,int($5)}'`
    	log_info "------------------------------------------------------"
        for USE_RATE in $USE_RATE_LIST; do
            PART_NAME=${USE_RATE%=*}
            USE_RATE=${USE_RATE#*=}
    	
    		if [ $USE_RATE -ge 10 ]; then
    			warn " $IP $PART_NAME  $USE_RATE%!"
    		else
    			info " $IP $PART_NAME  $USE_RATE%!"
    		fi
        done
    done
    
    • 测试效果
    [root@Test ~]# sh a.sh 
     [INFO] ------------------------------------------------------ 
     [WARN]  10.10.10.10 /dev/mapper/centos-root  10%! 
     [INFO]  10.10.10.10 /dev/sda1  1%! 
     [INFO]  10.10.10.10 /dev/mapper/centos-var  4%! 
     [WARN]  10.10.10.10 /dev/mapper/centos-home  36%! 
     [WARN]  10.10.10.10 /dev/mapper/centos-opt  15%! 
     [INFO] ------------------------------------------------------ 
     [WARN]  10.10.10.11 /dev/mapper/centos-root  18%! 
     [WARN]  10.10.10.11 /dev/sda1  15%! 
    
    

    这是颜色内容

    这是颜色内容


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    HTML5触摸屏touch事件使用介绍1
    hdu 1408 acdearm "Money, Money, Money"
    基于QTP的自己主动化測试框架介绍
    ExpandListView onChildClickListener 失效
    hdu1227 Fast Food
    Linux C高级编程——文件操作之系统调用
    nodejs之路-[0]安装及简易配置
    动态加入改动删除html表格内容
    socket网络编程基础小记
    LeetCode OJ Minimum Depth of Binary Tree 递归求解
  • 原文地址:https://www.cnblogs.com/outsrkem/p/11177938.html
Copyright © 2011-2022 走看看