И так, у нас где-то на просторах интернета есть какая-нибудь впс’ка которая по задумке должна мониторить наши ESXi в датацентрах, допилить к ней мониторинг массивов без CIM проще простого, надо:
- Добавить нашу впс-ку в исключения фаервола от ESXi.
- Прописать ключ нашей впс-ки в ESXi, следуя этой кб-шки https://kb.vmware.com/s/article/1002866
- Закатать скрипт test_adaptec.sh на баше:
#!/bin/sh
server=”$1″
user=”root”
tmp_dir=”/tmp”
mailto=”почта на которую шлем мыло”
mailfrom=”почта от которой шлем мыло”
# Забираем конфиг с контроллера
ssh -l $user $server “/opt/pmc/arcconf GETCONFIG 1 LD” > $tmp_dir/tmp_adaptec_$server.log# проверяем наличие поля
num_of_match=`cat $tmp_dir/tmp_adaptec_$server.log | grep “Status of Logical Device” | wc -l`
if [ “$num_of_match” = “0” ]; then
echo Cannot grab data from disk array | mail -a “From: “$mailfrom -s $server” Cannot grab data from disk array” $mailto
fi# проверяем чтобы все массивы были Optimal
cat $tmp_dir/tmp_adaptec_$server.log | grep “Status of Logical Device” | awk -F’:’ ‘{print $2}’ | tr -d ‘[:blank:]’ | while read test_string ; do
if [ “$test_string” != “Optimal” ]; then
echo array has fail!
ssh -l $user $server “/opt/pmc/arcconf GETCONFIG 1” > $tmp_dir/adaptec_$server.log
fi
done# Если какой-то не Optimal, отправляем письмо с полным конфигом
if test -f “$tmp_dir/adaptec_$server.log”; then
echo “$FILE exist”
mail -a “From: “$mailfrom -s $server” Disk array has FAIL!!!” $mailto < $tmp_dir/adaptec_$server.log
rm $tmp_dir/adaptec_$server.log
fi#сохраняем состояние массивов… для аналов истории…
ssh -l $user $server “/opt/pmc/arcconf GETCONFIG 1” > /root/adaptec_$server.last.log
- Ну и на последок закатать все это в крон:
# m h dom mon dow user command
0 * * * * root /root/test_adaptec.sh esxi.example.com
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.