最近、cacti、nagios監視などのオープンソースソフトウェアを使用して、自分のシェルスクリプトを作成することができますか。自分のニーズに従って作成されたシェルスクリプトは、ニーズをより満たすことができ、ホスト監視の包括性をさらに向上させることができます。
以下は私が使用している一般的なホスト監視スクリプトですが、状況に応じて変更することができます。
1.ホストのNICトラフィックを表示します。
#! /bin /bash
#network
#Mike.Xu
while:; do
time =‘ date +%m' - ' %d'%k':&&quoquo;%M>
day =‘ date +%m' - '%d’
rx_before =‘ ifconfig eth0 |
Sed -n' 8' p |
Awk’ {print $ 2}‘ |
切り取り-c7-’
tx_before =‘ ifconfig eth0 |
Sed -n' 8' p |
Awk’ {print $ 6}‘ |
切り取り-c7-’
sleep 2
rx_after =‘ ifconfig eth0 | cut
Sed -n' 8' p |
Awk’ {print $ 2}‘ |
切り取り-c7-’
tx_after =‘ ifconfig eth0 |
Sed -n' 8' p |
Awk’ {print $ 6}‘ |
切り取り-c7-’
rx_result = $ [(rx_after-rx_before)/256]
tx_result = $ [(tx_after-tx_before)/256]
echo' $ time Now_In_Speed:< $ rx_result' kbps Now_OUt_Speed>; $ tx_result' kbps'
sleep 2
2、システムステータスの監視
2 p>#! /bin /sh
#systemstat.sh
#Mike.Xu
IP = 192.168.1.227
top -n 2 |
Grep' Cpu'》。 /temp/cpu.txt
free -m |
Grep' Mem'》》。 /temp/mem.txt
df -k |
Grep' sda1' 》≫。 /temp/drive_sda1.txt
#df -k |
Grep sda2》》。 /temp/drive_sda2.txt
df -k |
Grep' /mnt /storage_0' 》≫。 /temp/mnt_storage_0.txt
df -k |
Grep' /mnt /storage_pic' 》≫。 /temp/mnt_storage_pic.txt
時間=日付+%m' '%d'%k':'%M
connect = netstat -na | Grep' 219.238.148.30:80' | Wc -l <br>
echo' $ time $ connect' 》≫。 /temp/connect_count.txt
3.ホストのディスク容量を監視し、使用容量が90%を超えたら、#!というメッセージを送信して警告を送信します。 /bin /bash
#モニターの空きディスク容量
SPACE =‘ df |
Sed -n’ /\\ /$ /p‘ |
Gawk’ {print $ 5}‘ |
Sed’ s /%//‘
if [$ SPACE -ge 90]
then
fi < Br>
4、CPUとメモリの使用量を監視します。
#! /bin /bash
#システム統計情報をキャプチャするスクリプト
OUTFILE = /home /xu /capstats.csv
DATE =’ date +%m /%d /%Y<> TIME =’ date +%k:%s:< p> TIMEOUT =’< uptime>;< p> VMOUT =’ vmstat 1 2‘
USERS =’ echo $ TIMEOUT |
Gawk‘ {print $ 4}’‘
LOAD =’ echo $ TIMEOUT |
Gawk‘ {print $ 9}’ |
Sed' s /、//‘’
FREE =‘ echo $ VMOUT |
Sed -n’ /[0-9] /p‘ |
Sed -n’ 2p‘ |
Gawk’ {print $ 4}‘’
IDLE =‘ echo $ VMOUT |
Sed -n’ /[0-9] /p‘ |
Sed -n’ 2p‘ |
Gawk’ {print $ 15}‘’
echo' $ DIME、$ USERS、$ LOAD、$ FREE、$ IDLE' 》≫ $ OUTFILE
5、全方向監視ホスト
#! /bin /bash
#check_xu.sh
#0 * * * * /home/check_xu.sh
DAT ='日付+%Y%m%d'
HOUR =' date +%H'
DIR =' /home /oslog /host _ $ {DAT} /$ {HOUR}'
DELAY = 60
COUNT = 60
#担当ディレクトリが存在するかどうか
-d $ {DIR}
をテストし、次に
/bin /mkdir -p $ {DIR}をテストします。
fi
#general check
export TERM = linux
/usr /bin /top -b -d $ {DELAY} -n $ {COUNT}》 $ {DIR} /top _ $ {DAT} .log 2》& 1 &
#cpu check
/usr /bin /sar -u $ {DELAY} $ {COUNT}》 $ {DIR} /cpu _ $ {DAT} .log 2》 1&
#/usr /bin /mpstat -P 0 $ {DELAY} $ {COUNT}” $ {DIR} /cpu_0 _ $ {DAT} .log 2》& 1&
#/usr /bin /mpstat -P 1 $ {DELAY} $ {COUNT}” $ {DIR} /cpu_1 _ $ {DAT} .log 2》& 1&
#メモリチェック
/usr /bin /vmstat $ {DELAY} $ {COUNT}” $ {DIR} /vmstat _ $ {DAT} .log 2》& 1&
#I /O Check
/usr /bin /iostat $ {DELAY} $ {COUNT}》 $ {DIR} /iostat _ $ {DAT} .log 2》& 1&
#network check
/usr /bin /sar -n DEV $ {DELAY} $ {COUNT}” $ {DIR} /net _ $ {DAT} .log 2》& 1&
# /usr /bin /sar -n EDEV $ {DELAY} $ {COUNT}” $ {DIR} /net_edev _ $ {DAT} .log 2》& 1&
1時間ごとに自動的にcrontabに配置されます。実行:
0 * * * * /home/check_xu.sh
これにより、/home /oslog /host_yyyymmdd /hhディレクトリ内のCPU、メモリ、ネットワーク、およびIOの各時間についての統計が生成されます。
一定期間内に問題が発生した場合は、対応するログ情報に移動してその時点のホストのパフォーマンスを確認できます。
Linuxオペレーティングシステムは、知らないうちに20年間経っています。ちょうど20年前、Linuxの20周年を迎えたばかりの瞬く間に、それはSUSEの20周年でした。 1992年にドイツで生まれ、
インターネットを許可してLinuxシステムを設定する方法を尋ねる方法をオンラインで多くのオンラインで参照してください。 事前の知識を拡大するため、次の方法を分離するために、いくつかの方法があります..
現在、非常に深刻なBashの脆弱性がインターネット上に公開されており、ハッカーがリモートコマンドをサーバーに送信して個人情報を盗むことを容易に可能にします。記事はあ
最初に、VirtualBoxのインストールと拡張パッケージのインストール手順は非常に簡単で、ここでは詳しく説明しません。 次に、新しい仮想マシンを作成します。