Petite mise à jour du script :
- gestion plus fine de A/R
- gestion des LXC
#!/bin/bash
#list VM
vmlist=$(qm list | awk '{ print $1 }' | grep -v VMID)
#list CTX
ctxlist=$(pct list | awk '{ print $1 }' | grep -v VMID)
case $1 in
stopvms)
for i in $vmlist; do
status=`qm status $i|awk '{ print $2 }'`
if [ "$status" = "running" ]
then
echo "Arret de la VM : $i"
qm shutdown $i -forceStop -skiplock
else
echo "Rien a faire sur la VM : $i, car deja eteinte"
fi
done
for i in $ctxlist; do
status=`pct status $i|awk '{ print $2 }'`
if [ "$status" = "running" ]
then
echo "Arret du CTX : $i"
pct unlock $i || lxc-stop $i
else
echo "Rien a faire sur le CTX : $i, car deja eteint"
fi
done
;;
startvms)
for i in $ctxlist; do
onboot=`pct config $i|grep onboot|awk '{ print $2 }'`
status=`pct status $i|awk '{ print $2 }'`
if [ "$onboot" = "1" ]
then
if [ "$status" = "stopped" ]
then
echo "Demarrage du CTX : $i"
pct start $i
else
echo "Rien a faire sur le CTX : $i, car deja allume"
fi
else
echo "Rien a faire sur le CTX : $i, car pas de lancement automatique"
fi
done
for i in $vmlist; do
onboot=`qm config $i|grep onboot|awk '{ print $2 }'`
status=`qm status $i|awk '{ print $2 }'`
if [ "$onboot" = "1" ]
then
if [ "$status" = "stopped" ]
then
echo "Demarrage de la VM : $i"
qm start $i
else
echo "Rien a faire sur la VM : $i, car deja allumee"
fi
else
echo "Rien a faire sur la VM : $i, car pas de lancement automatique"
fi
done
# mail -s "Courant retabli" your@email.com
;;
stopnuc)
shutdown -h +0
;;
upsonbatt)
# mail -s "Panne de courant" your@email.com
;;
esac
1 « J'aime »
Bonsoir
Je decouvre ce monde du nut et je vais essayer de progresser
Je viens d’installer un easton3s 850 connecté en maitre sur mon mini pc/proxmox. Sur ce pc j’ai 3 VM dont HA
A priori ca a l’air de fonctionner et sur HA je récupère bien des informations
La ou je seche, jusqu’a la lecture de ce post c’est sur la "configuration
J’ai mis ca sans trop savoir en m’inspirant de plusieurs post sur
upsmon.conf
MONITOR eaton1@localhost 1 upsadmin *45Az36153615/ master
POWERDOWNFLAG /etc/killpower
SHUTDOWNCMD "/sbin/shutdown -h now"
## This command is called with the full text of the message as one argument.
## The environment string NOTIFYTYPE will contain the type string of whatever
## caused this event to happen.
NOTIFYCMD "/usr/sbin/my-ups-notify.sh"
NOTIFYMSG ONLINE "UPS %s is getting line power"
NOTIFYMSG ONBATT "Someone pulled the plug on %s"
NOTIFYMSG LOWBATT "UPS %s is on battery and has a low battery (is critical)"
NOTIFYMSG COMMOK "Communications established with the UPS %s"
NOTIFYMSG COMMBAD "Communications lost to the UPS %s"
NOTIFYMSG SHUTDOWN "The system is being shutdown"
NOTIFYMSG REPLBATT "The UPS %s battery is bad and needs to be replaced"
NOTIFYMSG NOCOMM "UPS %s is unavailable (can’t be contacted for monitoring)"
NOTIFYMSG BYPASS "UPS %s on bypass (powered, not protecting)"
NOTIFYMSG NOTBYPASS "UPS %s no longer on bypass"
NOTIFYMSG SUSPEND_FINISHED "OS just finished sleep/suspend/hibernate mode, de-activat>
NOTIFYFLAG ONLINE SYSLOG+EXEC
NOTIFYFLAG ONBATT SYSLOG+EXEC
NOTIFYFLAG LOWBATT SYSLOG+EXEC
NOTIFYFLAG FSD SYSLOG+WALL+EXEC
NOTIFYFLAG COMMOK SYSLOG+EXEC
NOTIFYFLAG COMMBAD SYSLOG+EXEC
NOTIFYFLAG SHUTDOWN SYSLOG+EXEC
NOTIFYFLAG REPLBATT SYSLOG+EXEC
NOTIFYFLAG NOCOMM SYSLOG+EXEC
FINALDELAY 5
Du coup sur
upssched.conf
je met s ce qui est note dans le post un peu plus haut. Rien a changer depuis la parution?
CMDSCRIPT /etc/nut/proxmoxmgnt.sh
AT ONBATT * EXECUTE upsonbatt
AT ONBATT * START-TIMER stopvms 600
AT LOWBATT * EXECUTE stopnuc
AT ONLINE * EXECUTE startvms
AT ONLINE * CANCEL-TIMER stopvms
Puis je cree ce fichier dont j’ai supprime les lignes ctx n’en aillant pas… A vérifier…
nano /etc/nut/proxmoxmgnt.sh
#!/bin/bash
#list VM
vmlist=$(qm list | awk '{ print $1 }' | grep -v VMID)
#list CTX
#ctxlist=$(pct list | awk '{ print $1 }' | grep -v VMID)
case $1 in
stopvms)
for i in $vmlist; do
status=`qm status $i|awk '{ print $2 }'`
if [ "$status" = "running" ]
then
echo "Arret de la VM : $i"
qm shutdown $i -forceStop -skiplock
else
echo "Rien a faire sur la VM : $i, car deja eteinte"
fi
done
;;
startvms)
for i in $vmlist; do
onboot=`qm config $i|grep onboot|awk '{ print $2 }'`
status=`qm status $i|awk '{ print $2 }'`
if [ "$onboot" = "1" ]
then
if [ "$status" = "stopped" ]
then
echo "Demarrage de la VM : $i"
pct start $i
else
echo "Rien a faire sur la VM : $i, car deja allumee"
fi
else
echo "Rien a faire sur la VM : $i, car pas de lancement automatique"
fi
done
# mail -s "Courant retabli" your@email.com
;;
stopnuc)
shutdown -h +0
;;
upsonbatt)
# mail -s "Panne de courant" your@email.com
;;
esac
Du coup j’ai tout bon? Merci pour l’aide
Il me manque les commandes pour redemarer nut après modif de ces fichiers…
C’est à jour
Garde les, si tu n’as pas de LXC c’est transparent, si tu en ajoutes un jour, pas besoin de revenir dessus
Je pense oui
shutdown
ou reboot
en ssh ?
Bon après pas mal de galere j’ai fini par installer NUT sur mon nouveau nas qnap en tant que slave…
PAs simple ouf
Pour info j’ai du nommer l’onduleur avec le nom reconnue dans le qnap et creer un user
: admi et un mdt : 123456
Ce sont les infos mises a jour sans intervention de mar part
Ne sachant pas si je pouvais modifer ces fichiers de conf sue le qnap, j’ai trouvé ca comme solution
Du coup ca marche en master sur le proxox et en slave sur ma vm HA et sur mon nas qnap
Hello
Je reviens sur ce post car j’ai eu une vrai coupure aec disjoncteur sauté…
Bref j’ai remis le courant et attendu
et mon mini pc n’a jamais redemarré a la remrpise du courant. j’ai du appuyer sur le on/of pour le relancer
Embetant si je suis loin et qu’il s’agit d’une coupure simple sans disjoncteur sauté
Ma question. Je regle quoi et ou pour que le mini pc redemarre au retour du courant?
Merci
Hello,
ça se passe dans le bios de la machine sous condition qu’il le supporte
moi c’est l’option « AC power loss » elle peut prendre plusieurs nom suivant le fabricant, et en général elle se cache dans les réglages avancé du bios.
il faut la passer sur ON ou enable
cdt