HPC用途のクラスタシステムなどで数多くのノードを一斉に構築することがある。
OSのインストール完了後にマスターノードとスレーブノードの間で簡易的にネットワーク疎通確認を行う際に下記シェルスクリプト使うことでことでログを残しながら疎通の確認を行うことができる。
■シェルスクリプト(for文)
【例】pingtest.sh
# !/bin/bash
{
for ipaddr in 192.168.10.{1..10} #IPアドレス範囲
do
ping -c 1 "$ipaddr" > /dev/null 2>&1 #pingの回数は1回
if [ $? -eq 0 ]; then
echo "[OK] Ping -> $ipaddr" #応答あればOK
else
echo "[NG] Ping -> $ipaddr" #応答なければNG
fi
done
} | tee pingtest.log #ログファイルに保存
■実行
$ bash pingtest.sh
■結果
$ cat pingtest.log
[NG] Ping -> 192.168.10.1
[OK] Ping -> 192.168.10.2
[OK] Ping -> 192.168.10.3
[NG] Ping -> 192.168.10.4
[OK] Ping -> 192.168.10.5
[NG] Ping -> 192.168.10.6
[OK] Ping -> 192.168.10.7
[OK] Ping -> 192.168.10.8
[NG] Ping -> 192.168.10.9
[OK] Ping -> 192.168.10.10
■補足
この方法はCUIで死活チェックで行うことを想定している。
数多くのクラスター管理ツールではGUIのモニターを持っているが、
手っ取り早く死活チェックを行うならこの方法も検討してみていいと思う。