Tâche #34091
Scénario #34025: Hapy 2.8 : instance bloquée sur 'Disable and mask libvirt-guests service'
Revoir les dépendances des services libvirtd/libvirt-guests
Status:
Fermé
Priority:
Normal
Assigned To:
Target version:
Start date:
04/19/2022
Due date:
% Done:
100%
Remaining (hours):
0.0
Associated revisions
Démarre libvirt-guests après multi-user.target
Casse une dépendance circulaire systemd. De plus, libvirt-guests a besoin
de libvirtd et lbvirtd est démarré après multi-user.target...
Ref #34091
History
#1 Updated by Laurent Gourvenec over 1 year ago
- Status changed from Nouveau to En cours
#2 Updated by Laurent Gourvenec over 1 year ago
systemd-analyze verify default.target
montre bien le problème de dépendance circulaire comme présenté dans les journaux de systemd.
Avec l'aide de la commande systemctl show -p Requires,Wants,Requisite,BindsTo,PartOf,Before,After <service/target>
on peut voir les dépendances (notables) suivantes :
Multi-user.target: Before=bastion libvirtd <- défini par eole After=libvirtd-guests <- défini par le système libvirtd.service: Before=libvirt-guests <- défini par le système After=bastion libvirtd-tcp.socket multi-user.target <- défini par eole libvirt-guests: Before=multi-user.target <- défini par le système bastion: Before=libvirtd <- défini par eole After=multi-user.target <- défini par eole
On peut résoudre le problème en ajoutant un
After=multi-user.target
à libvirt-guests comme fait pour bastion#3 Updated by Laurent Gourvenec over 1 year ago
En rajoutant le fichier /etc/systemd/system/libvirt-guests.service.d/test.conf
[Unit] After=multi-user.target
il n'y a pas plus de soucis de dépendance circulaire. En revanche, le problème de timeout à l'instance se reproduit à 100% avec cette solution...
La commande qui hang est
systemctl stop libvirt-guests.service
qui appelle la commande
/bin/sh /usr/lib/libvirt/libvirt-guests.sh stop
qui appelle la commande
virsh connect
#4 Updated by Laurent Gourvenec over 1 year ago
- Status changed from En cours to À valider
- % Done changed from 0 to 100
#5 Updated by Ludwig Seys over 1 year ago
- Status changed from À valider to Résolu
#6 Updated by Joël Cuissinat over 1 year ago
eole-libvirt$ git tag --contains b653699e debian/eole/2.8.1-1 debian/eole/2.9.0-1 pkg/eole/eole-2.8/2.8.1-1 pkg/eole/eole-2.9/2.9.0-1
#7 Updated by Joël Cuissinat over 1 year ago
root@hapy:~# dpkg -S multi-user.conf eole-one-master: /etc/systemd/system/opennebula.service.d/multi-user.conf eole-libvirt: /etc/systemd/system/libvirt-guests.service.d/multi-user.conf eole-one-master: /etc/systemd/system/opennebula-flow.service.d/multi-user.conf eole-one-master: /etc/systemd/system/opennebula-sunstone.service.d/multi-user.conf eole-one-master: /etc/systemd/system/opennebula-scheduler.service.d/multi-user.conf
root@hapy:~# cat /etc/systemd/system/libvirt-guests.service.d/multi-user.conf [Unit] After=multi-user.target
#8 Updated by Joël Cuissinat over 1 year ago
- Status changed from Résolu to Fermé
- Remaining (hours) set to 0.0