J'ai un serveur CentOS 5.7 qui sauvegardera ses fichiers tous les soirs. Je crains que les visiteurs des différents sites hébergés par le serveur ne voient leurs performances se dégrader lors du transfert de la sauvegarde sur le réseau.
Est-il possible de limiter le débit maximum autorisé d'un processus à une interface réseau? J'aimerais limiter le transfert de fichiers basé sur SSH à la moitié de ma bande passante disponible. Cela pourrait être du côté serveur ou client; c'est-à-dire que je serais heureux de le faire sur le client qui initie la connexion ou sur le serveur qui reçoit la connexion.
(Malheureusement, je ne peux pas ajouter une interface à dédier aux sauvegardes. Je pourrais augmenter mon débit disponible, mais cela signifierait simplement que le transfert réseau s'achèverait plus rapidement, tout en maximisant la capacité totale de la connexion.)
Un peu de fond
Peut-être un peu de contexte est en ordre. En revenant en arrière, je n’avais pas assez d’espace local pour créer la sauvegarde elle-même. Entrez SSHFS! La sauvegarde est sauvegardée sur ce qui est apparemment un lecteur local, de sorte qu'aucun bit de sauvegarde ne soit jamais sur le serveur Web lui-même.
Pourquoi est-ce important? Parce que cela semblerait invalider l'utilisation du vénérable rsync --bwlimit
. rsync
ne fait pas le transfert ni ne peut le faire car je ne peux même pas ménager de l’espace pour sauvegarder le fichier de sauvegarde.
Je peux vous entendre demander: «Alors, attendez, pourquoi avez-vous même besoin de créer un fichier de sauvegarde? Pourquoi ne pas simplement rsync
les fichiers source et les dossiers?" Parce qu'une chose agaçante appelée "Plesk" est dans le mélange! Il s’agit de mon hébergeur web qui utilise Plesk pour plus de commodité. En tant que tel, j’utilise Plesk pour lancer les sauvegardes, car Plesk ajoute toutes sortes de magie supplémentaire à la sauvegarde, ce qui la rend très sûre lors d’une procédure de restauration.
visage triste
ionice
à limiter les écritures qu'un processus peut générer. Étant donné que j'écris sur un système de fichiers SSHFS, je peux laisser tomber la classe du processus de sauvegarde sur 3 pour le laisser complètement passer à tout autre processus qui souhaite écrire. De cette façon, je produis l'effet que je veux, à savoir ne jamais dégrader l'expérience d'un visiteur du site en raison de la bande passante accablante de sauvegarde.