J'ai un cron qui fait essentiellement un simple "tar zcf" dans la nuit.
Le serveur a:
- 8 cœurs - Processeur Intel (R) Xeon (R) E5606 à 2,13 GHz
- 25 Go de RAM
- Ubuntu 12.04.2 LTS
- RAID 1 matériel (LSI Logic / Symbios Logic MegaRAID SAS SMC2108) avec deux disques durs de 2,728 To
Comme vous pouvez le voir sur l'hôte d'écran de surveillance:
Pendant presque tout le temps du tar, les E / S du disque vont à> 90% et ralentissent beaucoup toutes les autres applications (mysql, apache).
2 questions:
- Est-il normal d'avoir des E / S de disque aussi élevées pendant la sauvegarde?
- Existe-t-il un moyen de limiter les E / S du disque pour que les autres applications puissent continuer à fonctionner correctement?
Je vous remercie!
ubuntu
backup
performance
io
hard-drive
acemtp
la source
la source
find
sans (par exemple)-perm
n'accèdera pas au fichier inode, cependant. Mais cela permet à l'optimisation d'utiliser deuxfind
appels. Si vous effectuez le mêmefind
appel deux fois (avec peu de temps entre les deux), le second va généralement se terminer en quelques secondes (ou moins). Selon la quantité de mémoire libre et la quantité de données mises en cache à un certain point, les données sont rejetées hors du cache. Trop lire peut donc ralentir l'opération. Si vous pouvez alimenter le programme de sauvegarde avec des noms de fichiers via stdin, vous pouvez empêcher cela en lisant par exemple des blocs de 100 fichiers.Il est prévu que les E / S soient élevées pendant les sauvegardes, car elles sont généralement réalisées sur de grandes arborescences de fichiers avec de gros fichiers. Vous pouvez utiliser
ionice
pour hiérarchiser les travaux d'E / S sous Linux avec des classes et des niveaux. IIRC, classe 2, niveau 7 est le niveau le plus bas et non affamé qui le rendra pratiquement invisible pour les autres charges d'E / S et les utilisateurs. Voirman ionice
pour l'utilisation et les détails.la source
Je recommanderais d'abandonner le goudron et d'aller avec rsync (comme mentionné par Dogsbody). J'utilise BackupPC pour sauvegarder des fichiers sur mes systèmes Windows et Linux et il prend en charge l'utilisation de tar ainsi que rsync et prend automatiquement en charge la liaison matérielle pour vous ainsi que fournit une interface Web agréable.
http://backuppc.sourceforge.net/
la source
Comme d'autres l'ont répondu, oui, c'est normal et
ionice
c'est un bon moyen générique de ne pas le laisser affecter votre système.Un certain nombre de fois, j'ai vu des gens faire des
tar
choses alors qu'ils n'en avaient pas besoin. Si un pourcentage des données que vous copiez n'a pas changé depuis la dernière copie, je vous suggère d'rsync
essayer.Cela réduira les E / S en copiant uniquement les fichiers qui ont été modifiés depuis la dernière copie. vous ne pourrez pas réduire l'E / S de plus de la moitié car toutes les données devront encore être lues, mais vous réduirez considérablement la quantité de données écrites (ce qui, en fonction de votre matériel, peut également être plus lent).
Si vous souhaitez des copies / sauvegardes distinctes à chaque exécution, l'option la plus puissante est –link-dest qui vous permet de lier en dur des fichiers inchangés à une sauvegarde précédente. Cela économise d'énormes quantités d'espace sur le serveur de sauvegarde. Par exemple, je sauvegarde une machine (Fred), Fred a un disque dur de 20 Go et je sauvegarde / copie l'intégralité du disque à l'exception de / proc et / dev. J'ai maintenant un répertoire de 20 Go sur mon serveur de sauvegarde. Le lendemain, je sauvegarde à nouveau Fred et –link-dest vers la sauvegarde d'hier. Rsync compare les fichiers distants avec la copie locale et si exactement la même chose ne dérangera pas de les transférer mais liera durement le nouveau fichier au fichier d'hier. Tous les fichiers qui ont été modifiés sont copiés vers le bas (ou partiellement copiés en utilisant la sauvegarde d'hier si possible). Si seulement 100 Mo de fichiers ont changé depuis hier, j'ai maintenant deux répertoires avec 20 Go de fichiers mais seulement 20.
J'espère que cela aide et répond toujours à votre question.
la source