Bonjour,
Je test backuppc pour réaliser des sauvegardes. Pour un serveur je l'ai paramétré pour utiliser rsyncd. La connexion se passe bien mais j'ai comme l'impression qu'il y a un blocage lors de la création de la liste de fichier. En gros 5h après toujours aucuns transfert de lancé.
Le dossier à sauvegarder contient 27019 fichiers et dossiers pour une taille de 2,3G.
Côté serveur à sauvegarder
# rsync -v
rsync version 3.0.6 protocol version 30
# vim /etc/rsyncd.conf
log file = /var/log/rsync.log
uid = root
gid = root
max verbosity = 9
[home]
path = /home/oracle
read only = true
# tailf /var/log/rsyncd.log
2013/10/09 11:45:29 [3320] connect from svxxxxx (192.168.xxx.xxx)
2013/10/09 11:45:29 [3320] rsync on . from svxxxxxx (192.168.xxx.xxx)
2013/10/09 11:45:29 [3320] building file list
#ps faux
root 3202 0.0 0.0 65584 456 ? Ss 11:11 0:00 /usr/bin/rsync --daemon
root 3320 0.5 0.0 69452 3956 ? S 11:45 1:04 \_ /usr/bin/rsync --daemon
# strace -p 3202
Process 3202 attached - interrupt to quit
select(6, [4 5], NULL, NULL, NULL
... 3 minutes plus tard rien de plus qui s'affiche
# strace -p 3320
Process 3320 attached - interrupt to quit
select(4, [3], [], NULL, {51, 64000}) = 0 (Timeout)
select(4, [3], [], NULL, {60, 0}) = 0 (Timeout)
select(4, [3], [], NULL, {60, 0}
...
Coté backuppc
# rsync -v
rsync version 3.0.7 protocol version 30
# tailf backuppc/pc/monserveur/LOG.102013
2013-10-09 11:45:29 full backup started for directory home; updating partial #2
J'ai monté le loglevel à 3 mais pas plus d'infos. J'ai essayé avec un répertoire contenant 1 fichier et la transfert marche sans problème. J'ai déjà utilisé rsync pour copier ce même dossier mais en passant par ssh et ça marche. Je suis un peu larguer…
# select... timeout...sgbd ?
Posté par ze_lionix (site web personnel) . Évalué à 2.
Salut,
Moi je remarque particulièrement les timeout que tu reçois dans le pid 3320 sur la fonction select…
Quand je regarde ce que cette fonction fait :
select() and pselect() allow a program to monitor multiple file
descriptors, waiting until one or more of the file descriptors become
"ready" for some class of I/O operation (e.g., input possible). A
file descriptor is considered ready if it is possible to perform the
corresponding I/O operation (e.g., read(2)) without blocking.
Cela me laisse penser qu'en fait il n'y a jamais un seul fd qui est "ready" durant la période de timeout de la fonction. Strange…
On devine que dès qu'un fd est disponible en lecture rsync fait sa cuisine dessus.
Par ailleurs j'ai noté cela dans ta configuration :
path = /home/oracle
Rassure moi tu n'est pas en train de faire un rsync sur un SGBD qui tourne ?
Cela expliquerai le fait notable du timeout…..
Si tu souhaites passer par rsync pour backup une base il faut
- soit stopper le sgbd durant le processus de sauvegarde
- soit passer par une partition snapshot, afin de figer les fichiers, et obtenir une sauvegarde cohérente et utilisable.
(Dans les deux cas il est important de tester une restauration)
Si on ne parle pas de sgdb, je suis plutôt perplexe, il y a quoi dans cette arbo ?
Fuse : j'en Use et Abuse !
[^] # Re: select... timeout...sgbd ?
Posté par Philippe M (site web personnel) . Évalué à 3.
Les fichiers qui servent à la base sont stocké dans un autre répertoire. /home/oracle est le répertoire d'installation, il y a des répertoires nécessaire à l'appli oracle :
Born to Kill EndUser !
[^] # Re: select... timeout...sgbd ?
Posté par Philippe M (site web personnel) . Évalué à 2. Dernière modification le 10 octobre 2013 à 11:15.
Un petit peu plus d'infos. J'ai essayé de lancer le strace tout de suite au lancement du processus
Au bout de 20mn j'ai arrêté le strace sur le pid 7067. J'ai l'impression qu'il bloc sur le fichier listener.log qui est le fichier log du processus oracle listener qui forcement n'est pas arrêté au moment de la sauvegarde. Par curiosité j'ai fais un rsync directement dessus
Pas d'erreur.
Born to Kill EndUser !
[^] # Re: select... timeout...sgbd ?
Posté par Philippe M (site web personnel) . Évalué à 2.
Bingo j'ai exclu le fichier listener.log et ça marche… jusqu'au prochain blocage. Maintenant bug ou comportement normal je sais pas trop.
Born to Kill EndUser !
# version rsync
Posté par ranDom (site web personnel) . Évalué à 3.
J'ai eu des problèmes similaires avec la version de rsync fournis par rhel, qui est la même que celle que tu utilise.
L'installation d'une version plus récente (3.0.8) a apporté de notables gains de performance surtout dans la phase de génération de liste de fichiers.
Mes 2¢
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.