Mein Teerbefehl
tar --remove-files -cvif 2011-08-02_14-05-09.tar 2011-08-02_14-05-09
Schreibt 80 MB / s. Dies übersteigt die Kapazität, die wir sparen können, da MySQL Schreibvorgänge in die Warteschlange stellt und schließlich Überwachungswarnungen angezeigt werden, da Systeme nicht ewig auf MySQL warten und eine Zeitüberschreitung aufweisen.
F: Kann ich tar
nur 20 MB / s drosseln ?
Ich habe nichts in der Manpage gefunden und wir haben es bereits mit der niedrigsten ionice
Klasse versucht : /usr/bin/ionice -c3 tar <...>
aber das hat keinen Einfluss auf die geschriebenen MBs und MySQL friert immer noch ein.
Vielleicht ionice
wird ignoriert, weil wir auf einem /dev/md0
Software-RAID-Gerät sind?
ionice
Möglicherweise haben Sie nicht für Sie gearbeitet, weil Sie mit dem falschen Scheduler ausgeführt wurden. Es funktioniert anscheinend nur mit dem CFQ-Scheduler.Antworten:
Sie können Ratepipe verwenden .
Ich habe es heruntergeladen und ausprobiert und es scheint DTRT. Es sollte für Sie funktionieren:
quelle
pv
( linux.die.net/man/1/pv ) gefunden, die in apt zu finden ist. Syntax würde werdentar --remove-files -cvif - 2011-08-02_14-05-09 | pv -L 20m > 2011-08-02_14-05-09.tar
Kann auch zB einen Fortschrittsbalkenpv
.ratepipe
Felsen.Sie könnten den Teer wahrscheinlich in stdout schreiben (mit -f - ) und ihn in etwas leiten, das drosselt. Ich werde sehen, ob ich schnell etwas finden kann.
Da tar nicht viel puffert, sollte es auf die Lesevorgänge warten.
Edit: MikeB hat mich geschlagen: ratepipe wird reichen.
quelle