Projet

Général

Profil

Tâche #22155

Scénario #22216: Traitement express MEN (49-51)

VM Poweroff après le reboot automatique sur Hâpy

Ajouté par Philippe Caseiro il y a plus de 6 ans. Mis à jour il y a plus de 6 ans.

Statut:
Fermé
Priorité:
Haut
Assigné à:
Début:
24/11/2017
Echéance:
% réalisé:

100%

Temps estimé:
4.00 h
Temps passé:
Restant à faire (heures):
0.0

Description

Il y a plusieurs problèmes lors du reboot automatique sur un Hâpy.

Le principal problème est que de manière aléatoire certaines VM se retrouvent à l'état poweroff
ce qui est un réel problème pour les machines en productions.

Normalement le service onenode doit faire le travail de suspendre et rétablir les vm lors de l'arrêt et du lancement de la machine. Il se trouve que le service libvirt-guets essaye de faire la même chose et cela perturbe beaucoup le fonctionnement de onennode.

Après plusieurs tests, voici la solution que je propose :

1°) Désactiver le service libvirt-guets (dico ou posttemplate/pretemplate)
2°) Changer le .service de onenode pour éviter les problèmes.

je propose les modifications suivantes :

ExecStart=/usr/share/eole/sbin/onevm-all -c ${CREDS} -e ${ENDPOINT} -a "resume" 
ExecStop=/usr/share/eole/sbin/onevm-all -t 80 -w -c ${CREDS} -e ${ENDPOINT} -a "suspend" 

ExecStart n'a pas besoin d'attendre la fin de l'action et le timeout crée plus de problèmes que de bénéfices, si le lancement d'une VM traîne et bien le script s'arrête et les autres VM ne sont pas lancées.

ExecStop par contre lui a besoin d'attendre la fin de l'action (-w) et d'un timeout bcp plus long, il faut absolument que les VM soient toutes sauvergardés convenablement avant que la machine ne reboot.

Je l'ai corrigé sur une grappe de test chez nous et j'ai de bons résultats, toutes mes VM sont up après plusieurs reboot, je charge volontairement le noeud pour que la sauvegarde des VM soit la plus lente possible.

Révisions associées

Révision 340dd409 (diff)
Ajouté par Daniel Dehennin il y a plus de 6 ans

The VMs are not always resumes on reboot

The “libvirt-guests” service can conflict with “onevm-all” and we
don't need to wait for each VM to boot during start.

  • posttemplate/10-libvirt-guests: disable the “libvirt-guests” service.
  • init/onenode.service (ExecStart): use default wait timeout (60s).
    (TimeoutStartSec): wait for longer than the default timeout.
    (ExecReload): just try to resume any remaining VMs.
    (ExecStop): wait longer for VM to suspend.
    (TimeoutStopSec): wait for longer than the stop timeout.
  • scripts/onevm-all: schedule actions in parallel and wait globally
    for their executions.

Ref: #22155

Historique

#1 Mis à jour par Gérald Schwartzmann il y a plus de 6 ans

Bonjour,

Pour traiter votre demande nous avons besoin de la version du module utilisé.

Cordialement ^^

#2 Mis à jour par Daniel Dehennin il y a plus de 6 ans

  • Assigné à mis à Daniel Dehennin
  • Tâche parente mis à #22216

#3 Mis à jour par Scrum Master il y a plus de 6 ans

  • Statut changé de Nouveau à En cours
  • Restant à faire (heures) mis à 4.0

#4 Mis à jour par Daniel Dehennin il y a plus de 6 ans

  • Statut changé de En cours à Résolu
  • % réalisé changé de 0 à 100

#5 Mis à jour par Daniel Dehennin il y a plus de 6 ans

  • Restant à faire (heures) changé de 4.0 à 0.5

Paquet disponibles :

  • eole-2.6.2-proposed-updates
  • eole-2.6.1-proposed-updates

#6 Mis à jour par Philippe Caseiro il y a plus de 6 ans

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) changé de 0.5 à 0.0

Nous avons testé sur un de nos Hâpy et nous n'avons plus le problème avec les 5 minutes d'attente maxi.
C'est bon pour nous.

Formats disponibles : Atom PDF