Tâche #16862
Distribution EOLE - Scénario #16962: Traitement express MEN (36-38)
Erreur bizarre au reconfigure
Description
Je n'arrive pas a reproduire à chaque fois, mais j'ai eu plusieurs fois l'erreur suivante :
run-parts: executing /usr/share/eole/posttemplate/02-annuaire reconfigure Start Systemd service slapd [ OK ] Result: Other (e.g., implementation specific) error (80)
Une façon quasi sûr de reproduire :
- démarrage de aca.eolebase
- Maj-Auto D apt-get install eole-annuaire
- reconfigure
- instance (avec reboot)
- reconfigure
Associated revisions
gestion du redémarrage des services et de l'arrêt de slapd au moment du reconfigure (ref #16862 @1h)
ne remplacer /var/lib/ldap/DB_CONFIG que si le fichier est nouveau (évite le recovery de slapd) (ref #16862 @1h)
Modification du code pour le mode conteneur
- dicos/23_annuaire.xml : DB_CONFIG dans /tmp du maître
- posttemplate/00-annuaire :
- pas d'erreur si cible inexistante
- la cible est dans le conteneur
- à faire uniquement si annuaire local
Ref: #16862 @1h
History
#1 Updated by Emmanuel GARETTE about 7 years ago
- Tracker changed from Demande to Tâche
- Estimated time set to 2.00 h
- Parent task set to #16726
- Remaining (hours) set to 7.0
#2 Updated by Emmanuel GARETTE about 7 years ago
- Assigned To set to Emmanuel GARETTE
- % Done changed from 0 to 80
- Remaining (hours) changed from 7.0 to 1.0
J'ai fini par trouver pourquoi il y avait cette erreur.
En posttemplate, le script 00-annuaire lance le script ldap_pwd.py
Ce script "restart" slapd alors que celui-ci n'est pas démarré !
Le script posttemplate/02-annuaire supprime l'annuaire alors que le démon tourne. slapd doit ainsi corrrompre ces fichiers.
Deux choses à faire :
- ne pas démarrer le démon dans ldap_pwd.py s'il n'est pas déjà démarré ;
- arrêter les démons dans tous les cas dans 02-annuaire.
Voir sur quelle version il faut faire les changements.
#3 Updated by Emmanuel GARETTE about 7 years ago
Autre problème, à chaque templatisation du fichier, il y a un "recovery" qui est fait sur la base :
root@scribe:~# CreoleCat -t DB_CONFIG root@scribe:~# /usr/share/eole/posttemplate/02-annuaire reconfigure 57b6d533 bdb_db_open: DB_CONFIG for suffix "o=gouv,c=fr" has changed. 57b6d533 Performing database recovery to activate new settings. 57b6d533 bdb_db_open: database "o=gouv,c=fr": recovery skipped in read-only mode. Run manual recovery if errors are encountered. Start Systemd service slapd [ OK ]
Ce "recovery" n'est pourtant pas nécessaire la plupart des cas.
#4 Updated by Emmanuel GARETTE about 7 years ago
- Status changed from Nouveau to Résolu
- % Done changed from 80 to 100
#5 Updated by Emmanuel GARETTE about 7 years ago
- Remaining (hours) changed from 1.0 to 0.25
#6 Updated by Joël Cuissinat about 7 years ago
- Parent task changed from #16726 to #16720
#7 Updated by Joël Cuissinat about 7 years ago
Deux problèmes :
- warning à la 1ère instance
run-parts: executing /usr/share/eole/posttemplate/00-annuaire instance diff: /var/lib/ldap/DB_CONFIG: Aucun fichier ou dossier de ce type
- mode conteneur non géré (fichier envoyé dans le /tmp du conteneur...) !
root@amonecole:~# CreoleCat -dt DB_CONFIG Instanciation du fichier '/tmp/DB_CONFIG' depuis '/var/lib/creole/DB_CONFIG' Copie du template '/usr/share/eole/creole/distrib/DB_CONFIG' vers '/var/lib/creole' Traitement Cheetah : '/var/lib/creole/DB_CONFIG' vers '/var/lib/lxc/bdd/rootfs/tmp/DB_CONFIG' Changement des propriétés : chown root:root /tmp/DB_CONFIG Changement des propriétés : chmod 0644 /tmp/DB_CONFIG
#8 Updated by Joël Cuissinat about 7 years ago
- Parent task changed from #16720 to #16962
#9 Updated by Laurent Flori about 7 years ago
- Status changed from Résolu to Fermé
- Remaining (hours) changed from 0.25 to 0.0