ISPbackup

De ISPWiki.

ISPbackup est le programme permettant de sauvegarder des fichiers. Il est conçu pour être lancé sur le serveur séparément des backups qui traitent la majorité des travaux sans charger les serveurs.

Sommaire

Généralités

La fonctionnalité d'ISPbackup peut être séparée en trois parties:

  1. La partie du client collecte si cela est nécessaire la liste des fichiers ou données qui s'y trouvent.
  2. La partie du serveur crée des sauvegardes des fichiers.
  3. La troisième partie retire les fichiers des sauvegardes.

Le client et le serveur interagissent via un câble (pipe).

Le client envoie la liste des fichiers dans le câble. S'il y a un fichier de taille zéro, il attend la réponse d'entrée. Si la réponse est "data\n", le contenu du fichier sera invité à suivre les informations de celui:

[<N = taille de bloc (4 bytes)> <N bytes de données] ...

Le dernier bloc doit avoir la taille zéro. Si la taille des données n'est pas identique à celle spécifiée, la taille du fichier sera modifiée.

Le serveur reçoit un fichier de taille zéro et place le fichier précédent de la même taille et la date de modification. Si le fichier est trouvé, le lien au fichier placé dans le backup précédent sera mis dans le listing ou le fichier sera mis de ce backup et enregistré encore une fois. Le serveur enregistre les données et sauvegarde celles-ci dans les fichiers dépôt. La liste des fichiers et leurs attributs sont sauvegardés séparément. L'offset du fichier ne peut pas dépasser MAXOFFSET dans le fichier dépôt. S'il y a trop de données, un nouveau fichier sera créé. Si la taille des fichiers est supérieure à MINSIZE, ceux-ci seront enregistrés séparément. Si le dernier backup utilise le fichier dépôt entièrement, le lien matériel (hardlink) de ce fichier sera créé dans un nouveau backup. Si le fichier est utilisé partiellement, le fichier de ce fichier placé dans le backup précédent (s'il est autorisé à l'utiliser) sera mis dans le listing ou enregistré à nouveau dans un nouveau backup

Paramètres généraux

-g <fichier>     Le chemin au fichier de configuration. Les paramètres suivants: exclude, archives,
               minsize, maxoffset and timeout peuvent être placés dans ce fichier. Le fichier ne doit pas contenir des lignes vides,des espaces blancs et des commentaires.
               (Par défaut/usr/local/ispmgr/etc/ispbackup.conf) Exemple:
               exclude=./var/spool/mqueue
               archives=.tar.gz
               archives=.rar
               minsize=1048576
               maxoffset=100000000
               timeout=60
-C <catalogue>   change le catalogue du programme. Le catalogue se change en un instant, et la partie de la liste des paramètres où il est utilisé devient alors plus importante.
-D <fichier>      Le chemin au fichier où vous trouvez les informations de mise au point. (par défaut stderr)
-d <niveau>   Debug level. 0 - minimal (uniquement les erreurs fatales), 9 - maximal. (par défaut: 1)
-o <fichier>      utilisez ce fichier au lieu de stdout
-i <fichier>      utilisez ce fichier au lieu de stdin
-u <seconde>    >    timeout est destiné à lire. 0 - désactive le timeout (par défaut: 60)

Paramètres du client

-c Réalisez le programme sous régime du client afin de recevoir le listing des fichiers/données; -f N'attendez pas de réponse du serveur même si la taille de fichier est supérieure à 0. (afin de recevoir le listing des fichiers sans données); -x <chemin> Effacez les fichiers dont le nom commence de cette ligne "di listing" (mettre dans le fichier de configuration);

              Le paramètre peut être utilisé plusieurs fois.

Paramètres du serveur

-s <file> Réalisez le programme sous régime du serveur. 'File' est le chemin de commande (il doit être utilisé comme le câble d'entrée pour le client) -t <ext> Il s'agit des extensions des fichiers du listing (par défaut .lst) -l <path> Il s'agit du chemin au lisitng depuis le backup précédent. Si c'est le catalogue, tous les fichiers '.lst' seront vérifiés.

              Le dernier fichier sera utilisé.

-n <file> Il s'agit du chemin au premier fichier dépôt. Pour obtenir le nom de fichier suivant, les chiffres dans le nom seront augmentés de 1. Par exemple: 0000/99 -> 0001/00 . Si "//" est utilisé dans le chemin, aucuns lien aux dépôts précédents ne sera fait si le début du chemin n'est pas identique à celui de ce chemin.

-S <size> maxoffset. L'offset maximal du fichier dans le fichier dépôt. -m <size> minsize. La taille minimale de fichier qui peut être sauvegardé comme un fichier séparé. -A <ext> Il s'agit des extensions qui ne peuvent pas être enregistrées (archive dans le fichier de configuration). -R <file> Supprimez le backup précédent. 'File' est le fichier du listing. Aucuns lien au fichier dépôt de ce backup ne sera fait. Ce paramètre peut être utilisé afin de libérer l'espace en mode de sécurité. -r <count> Laissez le 'count' des backups (y compris un nouveau). Tous les backups précédents seront supprimés (voir. -R) -T Il s'agit du régime de vérification du dépôt. Aucunes données des backups précédents ne seront utilisées, mais tous les fichiers dont le nom/le temps de modification/la taille sont identiques seront égaux.


Retirez des backups

Si "ni -c ni –s" est utilisé, le programme fonctionnera en régime de restauration. Le premier paramètre est le chemin vers le listing. -F N'arrêtez pas en cas d'erreur. -B <dir> Ajoutez la ligne indiquée aux noms de fichiers dépôt. Il s'agit du chemin ou de l'url. -X <file> Les données retirées du backup seront mises dans l'archive 'tar' avec le nom file. -z L'archive 'Tar' (voir. -X) sera enregistrée à l'aide de gzip


Exemples

mkfifo cmd
cat cmd | ssh server '/usr/local/ispmgr/sbin/ispbackup -c -C /vs/private/1.1.1.1 .' |
      /usr/local/ispmgr/sbin/ispbackup -s cmd > 2009-01-01.lst

Faites le backup du catalogue /vs/private/1.1.1.1 sur le serveur "server". Le listing sera sauvegardé dans le fichier 2009-01-01.lst. Les fichiers du dépôt seront sauvegardés dans la catalogue actuelle avec les noms suivants 00000001, 00000002 etc. /usr/local/ispmgr/sbin/ispbackup -X backup.tgz -z 2009-01-01.lst ./home

retire le catalogue 'home' du backup avec le listing 2009-01-01.lst et met les données dans l'archive tar backup.tgz

Configuration

La distribution de VDSmanager a un script vdsbackup-remote-new.sh. Pour créer des backups il doit être lancé sur le serveur des backups. Ce script lit les paramètres du fichier ~/etc/vdsbackup-remote.conf: SERVERS="ip1 ip2 ip3" # la liste des adresses du serveur pour lequelles il faut créer des backups BACKUP_DIR="/backup" # le catalogue où les backups seront sauvegardés BACKUP_KEY="~/etc/backup" # la clé de ssh afin d'accéder comme le root au serveur SERVERS Le backup sera réalisé de tous les serveurs en même temps. Le binaire ispbackup doit être copié sur le serveur des backups dans /root/bin/backup.

Cet article vous a-t-il été utile? Oui | Non
Affichages
Outils personnels