[Plugin Tiers] Plugin VMWARE

@Flobul pour les nouvelles commandes, j’avais testé et j’ai bien eu la nouvelle commande pour mon disque, puis j’ai supprimé l’ancien commande.

On verra les autres retours.

Concernant la partie arrêt / reboot ESXi et mise en maintenance et sortie de maintenance, je regarde ça dès que possible

1 « J'aime »

@Flobul @losnono,

Dans la dernière beta, il y a ceci d’ajouté :

25/05/2020

Ajout sur l’ESXi des commandes actions suivantes :
Quitter le mode maintenance
Entrer en mode maintenance
Reboot ESXi (10 secondes de délai)
Stop ESXi (10 secondes de délai)

Ajout sur l’ESXi de la commande information suivante :
Etat du mode maintenance


J’ai pu valider la théorie pour les commandes actions, mais pas la réalité.
Si vous avez l’occasion de valider que les 4 commandes actions rajoutées sont fonctionnelles c’est parfait.

Le log d’exécution en DEBUG, que ça soit positif ou négatif sera le bienvenue.

J’ai ajouté une commande info qui donne le statut du Maintenance Mode, ça sera plus pratique avant de balancer un reboot d’être sur que l’ESXi est bien en mode de maintenance je pense.

Il y a un délai par défaut de 10 secondes pour l’arrêt et le reboot.
Donc post mise à jour il faut :
Sauvegarder l’équipement ESXi afin que les commandes arrivent
Faire un refresh sur l’ESXi pour obtenir l’état du mode de maintenance
Tester une commande, voir chaque commande si vous pouvez le faire.
Faire un refresh sur l’ESXi pour obtenir l’état du mode de maintenance et confirmer qu’il a bien changé si vous avez mis en maintenance l’hôte, et inversement une fois en prod de nouveau.

Merci pour vos retours, ou à ceux qui testeront.

@TaG
Entrer/Sortir de maintenance, nickel.

[2020-05-25 18:17:52][INFO] : ========================================================
[2020-05-25 18:17:52][INFO] : ================== Début du log execute ================
[2020-05-25 18:17:52][INFO] : ========================================================
[2020-05-25 18:17:52][INFO] : On appelle la fonction actionOnESXi - enterMaintenanceMode
[2020-05-25 18:17:52][INFO] : ========================================================
[2020-05-25 18:17:52][INFO] : ================= Début du log actionOnESXi ==============
[2020-05-25 18:17:52][INFO] : ========================================================
[2020-05-25 18:17:52][DEBUG] : Login utilisé : root - Ip de l'ESXi : 192.168.0.13
[2020-05-25 18:17:52][DEBUG] : Liste des paramètres transmis :
[2020-05-25 18:17:52][DEBUG] : ActionType : enterMaintenanceMode
[2020-05-25 18:17:53][INFO] : ESXi joignable
[2020-05-25 18:17:53][INFO] : Connexion OK à l'ESXi
[2020-05-25 18:17:53][DEBUG] : IF enterMaintenanceMode
[2020-05-25 18:17:53][DEBUG] : Contenu de la requête : esxcli system maintenanceMode set --enable true
[2020-05-25 18:17:54][DEBUG] : Résultat de l'execution de l'action enterMaintenanceMode :
[2020-05-25 18:17:54][INFO] : Fin fonction actionOnESXi
[2020-05-25 18:17:54][INFO] : Fin fonction execute
[2020-05-25 18:18:22][INFO] : ========================================================
[2020-05-25 18:18:22][INFO] : ================== Début du log execute ================
[2020-05-25 18:18:22][INFO] : ========================================================
[2020-05-25 18:18:22][INFO] : On appelle la fonction actionOnESXi - exitMaintenanceMode
[2020-05-25 18:18:22][INFO] : ========================================================
[2020-05-25 18:18:22][INFO] : ================= Début du log actionOnESXi ==============
[2020-05-25 18:18:22][INFO] : ========================================================
[2020-05-25 18:18:22][DEBUG] : Login utilisé : root - Ip de l'ESXi : 192.168.0.13
[2020-05-25 18:18:22][DEBUG] : Liste des paramètres transmis :
[2020-05-25 18:18:22][DEBUG] : ActionType : exitMaintenanceMode
[2020-05-25 18:18:22][INFO] : ESXi joignable
[2020-05-25 18:18:22][INFO] : Connexion OK à l'ESXi
[2020-05-25 18:18:22][DEBUG] : ELSE IF exitMaintenanceMode
[2020-05-25 18:18:22][DEBUG] : Contenu de la requête : esxcli system maintenanceMode set --enable false
[2020-05-25 18:18:23][DEBUG] : Résultat de l'execution de l'action exitMaintenanceMode :
[2020-05-25 18:18:24][INFO] : Fin fonction actionOnESXi
[2020-05-25 18:18:24][INFO] : Fin fonction execute

En revanche reboot et stop ne fonctionnent pas :

[2020-05-25 18:20:01][INFO] : ========================================================
[2020-05-25 18:20:01][INFO] : ================== Début du log execute ================
[2020-05-25 18:20:01][INFO] : ========================================================
[2020-05-25 18:20:01][INFO] : On appelle la fonction actionOnESXi - rebootESXi
[2020-05-25 18:20:01][INFO] : ========================================================
[2020-05-25 18:20:01][INFO] : ================= Début du log actionOnESXi ==============
[2020-05-25 18:20:01][INFO] : ========================================================
[2020-05-25 18:20:01][DEBUG] : Login utilisé : root - Ip de l'ESXi : 192.168.0.13
[2020-05-25 18:20:01][DEBUG] : Liste des paramètres transmis :
[2020-05-25 18:20:01][DEBUG] : ActionType : rebootESXi
[2020-05-25 18:20:01][INFO] : ESXi joignable
[2020-05-25 18:20:01][INFO] : Connexion OK à l'ESXi
[2020-05-25 18:20:01][DEBUG] : ELSE IF rebootESXi
[2020-05-25 18:20:01][DEBUG] : Contenu de la requête : system shutdown reboot --delay 10 --reason maintenance_From_Jeedom
[2020-05-25 18:20:01][DEBUG] : Résultat de l'execution de l'action rebootESXi : sh: system: not found
[2020-05-25 18:20:02][INFO] : Fin fonction actionOnESXi
[2020-05-25 18:20:02][INFO] : Fin fonction execute
[2020-05-25 18:23:45][INFO] : ========================================================
[2020-05-25 18:23:45][INFO] : ================== Début du log execute ================
[2020-05-25 18:23:45][INFO] : ========================================================
[2020-05-25 18:23:45][INFO] : On appelle la fonction actionOnESXi - stopESXi
[2020-05-25 18:23:45][INFO] : ========================================================
[2020-05-25 18:23:45][INFO] : ================= Début du log actionOnESXi ==============
[2020-05-25 18:23:45][INFO] : ========================================================
[2020-05-25 18:23:45][DEBUG] : Login utilisé : root - Ip de l'ESXi : 192.168.0.13
[2020-05-25 18:23:45][DEBUG] : Liste des paramètres transmis :
[2020-05-25 18:23:45][DEBUG] : ActionType : stopESXi
[2020-05-25 18:23:46][INFO] : ESXi joignable
[2020-05-25 18:23:46][INFO] : Connexion OK à l'ESXi
[2020-05-25 18:23:46][DEBUG] : ELSE IF stopESXi
[2020-05-25 18:23:46][DEBUG] : Contenu de la requête : esxcli system shutdown powerof --delay 10 --reason maintenance_From_Jeedom
[2020-05-25 18:23:46][DEBUG] : Résultat de l'execution de l'action stopESXi : Error: Unknown command or namespace system shutdown powerof
[2020-05-25 18:23:46][INFO] : Fin fonction actionOnESXi
[2020-05-25 18:23:46][INFO] : Fin fonction execute```

Voilà la coquille (poweroff)

[root@localhost:~] esxcli system shutdown poweroff  --delay 10 --reason maintenance_From_Jeedom
System is not in maintenance mode. Cannot perform requested operation.

Et la deuxième (manque esxcli en début) :

[root@localhost:~] esxcli system shutdown reboot --delay 10 --reason maintenance_From_Jeedom
System is not in maintenance mode. Cannot perform requested operation.

@Flobul,

merci pour le test et effectivement, je n’avais pas les yeux en face des trous :).
J’ai poussé sur la beta à l’instant les corrections :).

Tu as pu valider aussi le comportement de la commande info pour l’état du mode maintenance ?

Merci

Oui, il fonctionne aussi.
Je suis entré en mode maintenance, fait un refresh et il est passé Enabled.
En quittant le mode, et refresh, il est passé disabled.

Hello,

Super, merci pour ta confirmation.
Je n’avais pas vu le rappel par mail, d’ou ce délai ;).

On est bon pour ici pour l’instant. c’est niquel.

Merci,

Il reste toujours à voir ceci, si je peux en faire quelque chose via le plugin ou pas:

Script de backup indiqué par bartounet ici : Backup ESXI - Script

Bonjour,
plugin très sympa … mais quelques difficultés néanmoins.
1 er ma température disque remonte 100° sa pique pour le SSD :slight_smile: :slight_smile: image
ensuite j’ai beau essayer de faire un snapchot … rien de rien de rien n’apparais …
j’ai suivie la doc mais j’ai peut etre fait une erreur :slight_smile:



edit … le logs c’est plus parlant

une idée ?

Hello,

La température faut voir le log. Mais ça semble être le système qui te donne ça.

Pour le souci des Snapshot ça vient sûrement de ça :

https://vss-wiki.eis.utoronto.ca/plugins/servlet/mobile?contentId=4292843#content/view/4292843

Ton nom de machine c’est la première fois que je vois un truc aussi compliqué :slight_smile:.
Faut faire du simple, pas de caractère spéciaux.

Bonjour / Bonsoir,

@TaG :
Je ne trouve mention nul part d’une potentielle compatibilité avec VCENTER et même si je pense qu’une connexion à un VCENTER n’est pas possible, je préfère dans le doute te poser quelques questions !

Je dispose de deux ESX à la maison pilotés par un VCENTER, vu que tu précises SSH dans le paramétrage je suppose donc que ton plugin ne supporte pas l’APi REST du VCENTER ?

Mon objectif étant de piloter mes VMs quelque soit l’ESX hébergeant ces dernières. A défaut, je pourrais déplacer chacune de mes VMs sur mes ESX et synchroniser ces derniers sous Jeedom afin d’avoir les VMs en double (ESX1 & ESX2). Ainsi dans un scénario, si j’obtient une réponse non satisfaisante sur le premier ESX je pourrais alors repasser la même commande sur le second et ainsi piloter ma VM ou qu’elle soit. Cependant j’ai peur de me télescoper avec le Cron Hourly qui semble mettre à jour les VMs dispo sur un ESX toutes les heures.

Tout cela peut sembler bien lourd mais malheureusement c’est pour moi un mal nécessaire pour traiter une problématique bien chiante :sweat:. J’espère donc pouvoir te donner 5€ et obtenir en échange un solution correcte sans qu’elle soit parfaite !!

N’hésite pas si je n’ai pas été clair dans mes explications.
Merci pour le temps que tu consacreras à mes questions.

1 « J'aime »

Hello @satanael,

Effectivement, je n’ai pas supporté vcenter, ça aurait pourtant été très certainement plus cool à développer.
Je peux toujours envisager de l’ajouter, mais clairement, en ce moment je n’ai pas le temps de regarder ça malheureusement.

Le problème c’est qu’il faut une version payante pour que ça active l’API de ce que j’avais lu à l’époque ou j’ai commencé.
Donc j’ai mis ça de coté étant donné qu’en loisir on n’est pas forcément nombreux à avoir un vcenter ou une version avec l’API.

En l’état et à l’heure actuelle, effectivement, les VMs seront vues automatiquement par le cron, je n’ai plus en tête par coeur quel cron fait quoi, il faut que j’aille relire un peu pour te le confirmer.

Je n’ai pas de ménage automatique sur les VMs non trouvées non plus, ça serait un peu trop violent.
Les VMs orphelines, si j’en trouve, elles sont rangées à part.

Par contre ce que je peux voir comme fonctionnement dans ton cas :

Tu as ESXI1 avec la VM TOTO
Tu as ESXI2 avec la VM TOTO car à un moment elle a basculée sur ESXI2.

Donc tu as la VM TOTO sur chaque ESXi, mais elle n’est présente que sur un des ESXI au final.
Une vm possède le statut online, bon c’est bien et pas bien ,car si tu as une VM éteinte volontairement, elle sera online = 0 sur les deux ESXI.
Pour l’instant ça peut « dépanner », si tu n’as pas X vms éteinte longtemps.

Ce que je peux par contre envisager, à plus court terme, c’est de voir si je peux faire une commande nommée par exemple « Présente » qui dirait oui ou non la VM est sur l’hote en question.

ça pourrait t’apporter une solution à toi non ?

Et aussi apporter une solution à tous ceux qui se servent du plugin afin de faire un scénario qui dit :
Pour chaque VM, si statut Présente = 0 alors alerte pour supprimer l’équipement du plugin vmware.

Qu’en dis-tu ?

Merci pour ton retour

1 « J'aime »

Bonsoir et merci pour ta réponse très précise !

Ta solution de mettre en place un indicateur de « présence » est carrément sexy !
Cela permettra peut être aux autres utilisateurs de pousser encore plus loin la domotisation de leur ESX et cela me permettra de mon coté de gérer sereinement ma problématique de fonctionnement en cluster.

Si tu le souhaites, je me tiens à ta disposition dès que tu auras le temps pour mener quelques tests.

N’ayant pas encore installé ton plugin je n’en connais pas le fonctionnement exact avec un cluster. Je m’inquiète donc de savoir comment tu as géré la création de deux « objets » jeedom (je suis inculte en dev jeedom) pour une VM unique mais présente sur deux ESX différents. Donc potentiellement deux « objets » avec un même nom !

Merci d’avoir répondu aussi vite :wink:

Le double nom ça doit être bon normalement cf ici

La vm TOTO aurait été vue une seule fois avant et rattachée au bon hôte pour le coup, mais maintenant ça créé comme ID :
TOTO_ESXI1
TOTO_ESXI2
même si au final c’est la même machine dans ton cas.

Donc la partie présence serait peut-être la bonne solution, je tenterai de regarder ça, mais je n’ai pas moyen de le tester par contre.

Parfait pour cette histoire de nommage, j’avais en effet lu cette partie mais les fils ne se sont pas touchés pendant que j’écrivais ma question :upside_down_face:.
Tiens moi au courant quand tu auras fait la modification, je testerais la BETA sur mon infra avec plaisir !

Bonne soirée et merci encore pour ta réactivité.

Bonjour/Bonsoir,

@TaG Je viens aux nouvelles, as-tu eu le temps de jeter un oeil ?

Bien bonne journée/soirée !

Hello @satanael

Je n’ai pas encore regardé. Je vais passer en stable la beta déjà. ça sera fait dans la journée.

Attention à bien lire le changelog, la dernière stable date d’Avril normalement, et donc les mises à jours à partir de Mai sont dans la prochaine stable.

Je pourrais donc me pencher ensuite sur ta demande.

Bonne journée :slight_smile:

1 « J'aime »

@satanael et Toutes et tous,

J’ai ajouté sur la BETA la commande VM Présente afin de savoir si une VM est sur l’ESXi.
J’ai pu valider en désenregistrant une VM de mon ESXi que la commande passe bien à Zéro.
Et à 1 quand la VM est de nouveau enregistrée.

Le log en débug :
[DEBUG] : Func cron 5 FOREACH Recherche VM - Equipement : LMS-Debian9
[DEBUG] : La Machine Virtuelle est présente dans VMWARE.

[DEBUG] : Func cron 5 FOREACH Recherche VM - Equipement : Ubiquiti_Unifi
[DEBUG] : La Machine Virtuelle n’est pas présente dans VMWARE. Vérifier que le nom est bien identique entre VMWARE et Jeedom, attention à la CASSE
0

Je vois pour pousser en stable dans quelques jours.

EDIT : Désolé pour le mauvais quote @naboleo :wink:
TaG

1 « J'aime »

Pas de souci. Pour l’instant j’ai lâchement basculé le nuc sous proxmox => la gestion des ports usb est pas parfaite avec le passtrough. Proxmox s’en sort pas mieux avec le wifi/bt interne… J’suis bien emm***

Le matériel non HP pose quand même pas mal de soucis oui pour le passthrough !

En dehors de l’usb ça tourne globalement bien esxi… (Sans Vcenter, ça bride un peu mais bon)
Mais alors pour jeedom, c’est quand même un peu bloquant

@naboleo le pb de passtrough est une histoire ancienne, si tu parles du plantage que nombreux avait avec deb 9 et esx 6.5 et 6.7. Avec deb 10 plus de soucis.

Si ton problème de passthough est autre, ne pas tenir compte de la réponse. Et on sera HS / sujet :slight_smile: