Un point important à ne pas négliger dans notre "infrastructure" domestique est que les équipements principaux la composant, aussi bien la domotique que le réseau, doivent être alimentés en permanence. Pour assurer un fonctionnement continu en cas de coupure de courant ou encore pour protéger votre matériel des perturbations électriques, il faut envisager d'installer un onduleur.

Plusieurs marques vendent des onduleurs, et les plus connues sont Eaton et APC. J'ai pour ma part 2 onduleurs, un Eaton Ellipse Pro 1200, sur lequel sont branchés le Nuc avec ESXi (et donc les diverses machines virtuelles hébergées), 2 NAS Synology, ainsi que les équipements réseaux principaux (la Freebox, le routeur Ubiquiti USG et bientôt un switch Ubiquiti US-8) et un MGE (qui a depuis été racheté par EATON) Ellipse Pro 1000, qui a sa place dans le meuble multimédia.

Configuration de l'onduleur sur un NAS Synology

La première chose à faire est de brancher à l'aide du câble USB l'onduleur (fourni avec celui-ci) à un NAS Synology. Il faut ensuite, dans le Panneau de Configuration de votre DSM, partie "Matériel et alimentation" (1), et enfin dans l'onglet "UPS" (2), activer la prise en charge UPS (3). Il faut également activer le serveur réseau UPS (4) pour autoriser des périphériques réseau (5) à accéder aux informations de l'onduleur, et notamment ESXi et Jeedom, en y rentrant leurs adresses IP (6). Il faut bien entendu penser à valider (7), puis Appliquer (8) les réglages.

Vous pourrez également consulter les informations de l'onduleur depuis cette page du Panneau de configuration :

Configuration de l'onduleur sur ESXi

Maintenant, passons aux choses sérieuses, et notamment à la configuration de l'onduleur dans ESXi.
Si vous êtes en version 6.5 minimum d'ESXi, l'installation est assez simple, et il vous faut commencer par télécharger le package suivant.

Il faut activer l'accès SSH sur ESXi, ce qui se fait depuis la page d'accueil en cliquant sur "Actions" (1), "Services" (2), puis "Activer Secure Shell (SSH)" (3).

Connectez-vous avec WinSCP pour transférer le fichier téléchargé dans le répertoire /tmp par exemple.
Il faut ensuite vous connecter en SSH, avec Putty, sur l'adresse IP de l'ESXi, et y saisir plusieurs commandes, notamment la première qui permet d'autoriser l'installation de packages proposés par la communauté. Les commandes suivantes vont vous positionner dans le répertoire où vous avez mis l'archive précédemment téléchargée, l'extraire et enfin lancer le script d'installation du package NutClient.

esxcli software acceptance set --level=CommunitySupported
cd /tmp
tar -xzf NutClient-ESXi-2.0.0.tar.gz
sh upsmon-install.sh

Vous devriez obtenir le résultat suivant :

Installation Result
   Message: Operation finished successfully.
   Reboot Required: false
   VIBs Installed: Margar_bootbank_upsmon_2.7.4-2.0.0
   VIBs Removed:
   VIBs Skipped:

Il faut ensuite définir un certain nombre de paramètres qui ont été créés automatiquement avec l'installation du fichier .vib. Ces paramètres sont à définir dans la partie "Gérer" de l'interface web de votre ESXi. (Si les paramètres ne sont pas visibles, il faudra, en SSH, saisir la commande /etc/init.d/hostd restart. Notez que le redémarrage du service est à faire à chaque changement de paramètres).

esxi_parameters

Les paramètres sont les suivants, et vont permettre de faire connaître le serveur NUT (hébergé sur le NAS Synology dans notre cas) de votre ESXi :

UserVars.NutUpsName    : Nom de l'UPS sur le serveur NUT (ups_name@server_name)
                         Il peut y avoir une liste de plusieurs serveurs NUT.
                         Pour un NAS Synology, le nom par défaut est ups suivi de l'IP du NAS.
                         Dans mon cas, j'ai donc "ups@192.168.1.16".
UserVars.NutUser       : Nom de l'utilisateur pour se connecter au serveur NUT.
                         Tous les serveurs NUT doivent utiliser le même couple username/password.
                         Sur un NAS SYNOLOGY, le compte par défaut est "monuser".
UserVars.NutPassword   : Le mot de passe de l'utilisateur défini juste avant sur le serveur NUT.
                         Sur un NAS SYNOLOGY, le mot de passe du compte par défaut est "secret".
UserVars.NutFinalDelay : Nombre de secondes avant l'extinction du système en cas de batterie faible.
UserVars.NutSendMail   : Mettre à 1 si cous voulez recevoir un mail lors d'un événement de l'onduleur.
UserVars.NutMailTo     : L'adresse email sur laquelle seront envoyées les événements de l'onduleur.

Après la configuration, il nous reste à lancer le service nouvellement installé "NUTClient". Pour le faire, il faut aller sur votre ESXi dans la Gestion (1), dans l'onglet Services (2), sélectionner la ligne NutClient (3), et cliquer sur Démarrer (4).

Je vous conseille aussi vivement d'activer le démarrage automatique du service avec l'hôte ESXi. Pour cela, dans le même onglet des Services, sélectionner la ligne NutClient, déroulez le menu Actions (1), dépliez le sous-menu Statégie (2) et cliquez sur "Démarrer et arrêter avec l'hôte" (3).

Voilà, la configuration est maintenant terminée, votre hôte ESXi surveillera les alertes de l'onduleur, et en cas d'événement de batterie faible, il lancera, après le temps que vous avez défini, l'extinction des machines virtuelles et ensuite de l'hôte.

Il faut également penser à configurer le démarrage automatique de vos machines virtuelles, ainsi que l'ordre de celui-ci.

En bonus, je viendrais rapidement ajouter dans cet article la configuration de l'onduleur dans Jeedom, ce qui nous permettra d'être alertés ou d'effectuer des actions lors d'une coupure de courant ou encore du retour de ce dernier.