Project

General

Profile

Actions

Backup du serveur LDAP

  • Production de fichiers de backup sur Rigel dans /var/backups/ldap/, sauvegardés ensuite par backuppc
  • Procédure de restauration d'un serveur à partir de la sauvegarde

Sauvegarde

Pour sauvegarder entièrement le serveur, il faut sauvegarder:

  • la configuration du serveur: branche cn=config (base de données # 0)

- export ldif de cn=config: je n'ai pas encore trouvé comment s'en servir ensuite pour restaurer la configuration à l'aide d'un simple import ldif. Ce n'est peut être pas possible.

- répertoire /etc/ldap/slapd.d: les données de cn=config y sont stockées. Il suffira ensuite de les copier pour restaurer la configuration du serveur. (droits: openldap:openldap, fichiers en 600, dossiers en 770)

  • les données: branche o=ILLYSE,l=Villeurbanne,st=RHA,c=FR (base de données # 1)

- export ldif de o=ILLYSE,l=Villeurbanne,st=RHA,c=FR: une fois le nouveau serveur configuré, il suffira d'importer le fichier ldif pour peupler l'annuaire.

Après restauration de la configuration et des données, il faudra penser à reconstruire les index.

Dans un contexte de réplication, il suffit de sauvegarder les données sur un des serveurs. Par contre, la configuration du serveur maître et des serveurs esclaves diffèrent. Il faut au moins disposer d'une sauvegarde à jour de la configuration d'un des serveurs esclaves.

Script de backup sur Rigel

/usr/local/sbin/ldap-backup

#!/bin/bash

DATE=$(date +%Y%m%d)
LDIF0=ldap-config-$DATE.ldif
LDIF1=ldap-illyse.villeurbanne.rha.fr-$DATE.ldif
SLAPDD=ldap-slapd.d-$DATE.tar
BACKUPS=/var/backups/ldap
ARCHIVE=ldap-$DATE.tar.bz2

if [ ! -d /var/backups/ldap ]; then
        mkdir -p /var/backups/ldap
fi

# export de cn=config (database #0)
/usr/sbin/slapcat -n 0 -l $BACKUPS/$LDIF0
# export de o=ILLYSE,l=Villeurbanne,st=RHA,c=FR (database #2)
/usr/sbin/slapcat -n 1 -l $BACKUPS/$LDIF1
# backup de cn=config via /etc/ldap/slapd.d
tar cf $BACKUPS/$SLAPDD -C /etc/ldap/ slapd.d

tar cjf $BACKUPS/$ARCHIVE --remove-files -C $BACKUPS $LDIF0 $LDIF1 $SLAPDD
chmod 600 $BACKUPS/$ARCHIVE

find /var/backups/ldap/ -type f -mtime +10 -exec rm -f {} \;

exit $?

Restauration

FIXME A mettre au propre

Restauration de la conf et des données sur le serveur maître (provider).

Fermer les ports pour empêcher le réplication vers les serveurs esclaves tant que la restauration n'est pas terminée avec succès.

En tant que root, dans un répertoire de travail, exécuter tout ou partie des manipulations suivantes, selon les besoins:

# réinstallation d'openldap
/etc/init.d/slapd stop
apt-get purge slapd
apt-get install slapd
# (entrer un mdp vide)

# purge de la base et de la config actuelles
/etc/init.d/slapd stop
rm -r /var/lib/ldap/*
rm -r /etc/ldap/slapd.d

# récupérer la sauvegarde
# scp user@host:/(...)/ldap-20110926.tar.bz2 .
tar xjf ldap-20110926.tar.bz2

# restauration de la configuration d'openldap
tar xvf ldap-slapd.d-20110926.tar -C /etc/ldap/

# restauration des données de o=ILLYSE,l=Villeurbanne,st=RHA,c=FR
slapadd -v -n 1 -l ldap-illyse.villeurbanne.rha.fr-20110926.ldif
# installer le certificat et la clé privée du serveur ldap
# FIXME
# reconstruction des index
sudo -u openldap slapindex -v
# sans sudo: su openldap -c slapindex
# redémarrage de slapd
/etc/init.d/slapd start

Autoriser à nouveau la réplication.

Updated by Pierre-Arnaud Poudret over 7 years ago · 1 revisions