1. 程式人生 > >linux實戰(九)----批量監控伺服器是否存活----綜合運用

linux實戰(九)----批量監控伺服器是否存活----綜合運用

我們在前面的幾章中已經學習了一些基本用法,現在來嘗試  批量監控伺服器是否存活。

基本的思路是 用 ping 的方法。 如果伺服器能ping通則說明伺服器存活。

程式碼

指令碼程式碼如下:

#! /bin/bash

N=2
[email protected]
while true
do
        ipfile=/data/shell/serverip.txt

        for ip in `cat $ipfile`; do

                mailfile=/data/shell/pkgloss.txt

                pkgloss=`ping -c4 $ip |grep 'transm' |awk -F ',' '{print $2}' |awk '{print $1}'`

                if [ $pkgloss -lt $N ]; then

                echo $ip >$mailfile

                ping -c4 $ip |grep 'transm' >>$mailfile               
 
               mail -s "$ip loss packets"  $rmail<$mailfile

                fi

        done

        sleep 120


done


程式碼解析

我們這裡每睡眠 120 ms後 就執行一次 監控,所以需要用 while true無線迴圈。
我們先來了解一下ping命令

-c 數目:在傳送指定數目的包後停止。

ping -c4   意思是隻ping4次。

grep  'transm'   只取含有  transm 字串的行

awk -F ',' '{print $2}'  用‘,’號分割後 取第二列

awk   '{print $1}'      用空白分割後  取第一列


所以程式碼的意思為:  迴圈取出serverip.txt中的ip,進行ping並返回 ping通的次數。

如果ping通的次數小於或者等於2則把 ip 和  ping的內容 寫入到報錯檔案pkgloss.txt中

並把pkgloss.txt中的內容 傳送到   [email protected]郵箱中。

執行指令碼步驟

建立指令碼check-ping.sh

vim  /data/shell/check-ping.sh

寫入以上程式碼



建立serverip.txt

vim /data/shell/serverip.txt 

 #這個檔案是放要監控伺服器的ip. 寫入ip,格式如下圖





再建立pkgloss.txt

touch /data/shell/pkgloss.txt  

#這個檔案是放報錯資訊的.



最後執行指令碼

chmod +x  /data/shell/check-ping.sh
nohup sh  /data/shell/check-ping.sh &

chmod  +x  給指令碼 執行許可權

nohup是後臺執行的意思


好了,這下就不怕伺服器再被莫名重啟了.

我這裡寫了3個ip,前兩個可以ping通,192.168.1.22不通。

測試執行後成功報警,如下圖 :


相關推薦

linux實戰()----批量監控伺服器是否存活----綜合運用

我們在前面的幾章中已經學習了一些基本用法,現在來嘗試  批量監控伺服器是否存活。 基本的思路是 用 ping 的方法。 如果伺服器能ping通則說明伺服器存活。 程式碼 指令碼程式碼如下:

linux實戰(十)----shell監控tomcat服務是否正常----綜合運用

前面一章我們 嘗試了 批量的監控伺服器是否存活, 這一章我們來學習監控tomcat服務是否正常。 指令碼程式碼 指令碼程式碼如下: #!/bin/sh # func:自動監控tomcat並

linux實戰(十一)----shell監控伺服器效能---綜合運用

前面分別學習了一些監控指令碼和實用的功能指令碼,本章節是綜合篇,把前面學習的內容綜合起來,實現對伺服器效能的監控。 主要實現如下功能: 為了持續觀察伺服器每天的基本執行狀態,提供方便方便易讀的集

linux實戰考試題:批量創建用戶和密碼(不能使用循環)

linux 實戰 批量創建10個用戶,並且設置隨機8位密碼,要求不能用shell的循環(例如:for,while等),只能用linux命令及管道實現。方法1:[[email protected]/* */ /]# echo stu{01..10}|tr " " "\n"|sed -r ‘s

Linux實戰篇:基於Centos6.9+7.4主備DNS服務器搭建實戰

服務器搭建 word uda notes centos6 fcc bfc data 閱讀 個人筆記分享(在線閱讀): http://note.youdao.com/noteshare?id=7898fa39596740bfcc9ca42ad643f045&sub=28A00

Linux常用監控伺服器效能命令

列舉比較常用的幾種監控伺服器效能的Linux命令。其實,在我看來,目前針對Linux系統記憶體、硬碟、TCP/IP等等相關的指標,Linux本身自帶的或者是一些開源專案等基本上都能達到這個獲取伺服器效能資訊的目的。看著這麼多,讀者也許會眼花繚亂,個人給個建議,建議弄明白Linux自帶的top、free及其相關

Linux實戰50臺伺服器規模叢集模式之環境搭建準備篇(綜合網路整理)

一、搭建叢集1、採購伺服器、效能測試、不同叢集用什麼配置。2、採購雲服務(雲主機、虛擬機器)。3、採購頻寬、壓力測試。4、採購CDN服務。二、大致架構圖三、規劃1、伺服器規劃伺服器數量作用負載均衡2對訪問網站的流量進行分流,減少流量對某臺伺服器的壓力Web2處理使用者頁面訪問

CheungSSH比Ansible更優秀的Linux SSH批量管理伺服器 執行命令上傳下載自動化運維工具

安裝部署:   第一步: [ root ~]# yum install -y gcc   第二步:[ root ~]#  yum install -y python-devel   第三步 到官網下載pycrypto模組: wget --no-check-certificate https://pypi.py

Linux系統shell指令碼程式設計——生產實戰案例(批量檢查線上IP與開放埠)

Linux系統shell指令碼程式設計——生產實戰案例 在日常的生產環境中,可能會遇到需要批量檢查內網目前線上的主機IP地址有哪些,還可能需要檢查這些線上的主機哪些埠是開放狀態,因此依靠手工來

linux實戰-redis(2) -- 配置redis的伺服器啟動和關閉

    =====================redis配置==================================     上一篇文章我們已經完成了對redis的安裝,接下來就可以按照上面的方法使用,但是這裡還存在一些小問題,那就是linux系統重啟之後都

linux fork多程序併發伺服器模型之C/C++程式碼實戰

        在很早的文章中, 我們一起聊過伺服器如何與多個客戶端進行通訊, 那時, 我們要麼用select, 要麼用多執行緒, 卻沒有用多程序。 其實, 多程序也可以實現與多個客戶端進行通訊。          如果是在while中迴圈accept,  然後迴圈處理事情

Nagios 下監控伺服器流量(linux平臺下)

一共三種方法 A、利用nagios自帶的外掛check_mrtgtraf對網絡卡流量進行監控 這種方法要依賴mrtg資料,並且使用起來就Bytes和Bites換算也有點問題,不推薦使用。 這裡只簡單介紹下check_mrtgtraf ,它定時檢查mrtg的日誌檔案,獲取當前

shell指令碼批量監控Linux server配置檔案的更改

某些情況下,自己或同事修改了某處系統設定,但由此所引發的問題可能一段時間以後才會暴露,由於記不清之前改過哪些檔案、改了哪些內容,解決問題時可能走彎路。於是寫了一個小指令碼以特定頻率來監控常見系統配置檔案

linux web監控伺服器資源工具 netdata

具體的netdata介紹請參照GIT:https://github.com/firehol/netdata/wiki 以下只介紹centos下的netdata的安裝與使用: 1、安裝Netdata需要的基本編譯環境安裝: yum install zlib-devel gcc

linux 郵件報警,監控內存cup

linux 內存cup監控腳本功能介紹:1、內存高於設定值及發郵件給系統管理員2、cup負載過高及發郵件給系統管理員3、永不退出監控。一直後臺監控,如果出現報警後一分鐘內沒有處理繼續發郵件通知代碼如下:Memory=`free -h | awk ‘NR==3{print $4}‘|cut -c 1-3`#取內

Linux 按時間批量刪除文件(刪除N天前文件)

die shel 條件 天前 fin dicom sort 目錄下的文件 -exec 需要根據時間刪除這個目錄下的文件,/home/lifeccp/dicom/studies,清理掉20天之前的無效數據。 可以使用下面一條命令去完成: find /home/life

Linux終端下 dstat 監控工具

linux終端下 dstat 監控工具dstat 是一個可以取代vmstat,iostat,netstat和ifstat這些命令的多功能產品。dstat克服了這些命令的局限並增加了一些另外的功能,增加了監控項,也變得更靈活了。dstat可以很方便監控系統運行狀況並用於基準測試和排除故障。dstat可以讓你實時

linux下安裝nmon監控工具

註意 tor dha 壓縮 spa eas span project log 1.首先下載壓縮包 wget http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip/download

Linux實戰第一篇:Centos6.9/RHEL6.9詳細安裝攻略(LVM)

linux個人筆記分享(在線閱讀):http://note.youdao.com/noteshare?id=bb2ad6216bff8cddaa3e360c76392c9b PDF版本下載http://down.51cto.com/data/2321269本文出自 “人才雞雞” 博客,請務必保留此出處http

Linux實戰第二篇:Centos6和Centos7密碼破解實戰

root恢復個人筆記分享(在線閱讀):http://note.youdao.com/noteshare?id=744d026219e72c69e606f115bd333ddcPDF版本下載請在附近中下載本文出自 “人才雞雞” 博客,請務必保留此出處http://6575793.blog.51cto.com/6