Duplicati in Ubuntu LXC - hohe CPU Last durch Mono

Lenny88

Lt. Commander
Registriert
Dez. 2002
Beiträge
1.863
Hallo zusammen,

ich habe hier einen Ubuntu LXC Container für Duplicati auf Proxmox laufen (Core i5 10400f mit 16 GB RAM). Zwei Kerne habe ich dem LXC zugewiesen.
Ziel ist auf Netzwerkfreigabe und Google Drive verschlüsselte Backups abzulegen.

Leider ist die Performance unterirdisch - Die Backups laufen mit max. 12-13 MB/s und laut TOP produziert der Prozess "mono-sgen" > 100% Last dabei.
Erst dachte ich es liegt an den Netzwerkfreigaben, aber das gleiche Problem zeigt sich wenn ich innerhalb des Containers (von SSD auf SSD) sichere.
Habt ihr eine Idee was ich probieren könnte? In Duplicati habe ich schon die Kompression ausgeschaltet. Keine Verbesserung.

Danke!
 

Anhänge

  • Screenshot 2022-12-29 19.17.22.png
    Screenshot 2022-12-29 19.17.22.png
    93,9 KB · Aufrufe: 138
Duplicati scheint auf Microsoft .NET zu basieren. .NET selber ist eine schnelles Framework, daran kann es nicht liegen. Für den Einsatz in Linux nutzen sie Mono. Wie gut Mono performt, weiß ich nicht aus eigener Erfahrung, aber das sieht schon ungewöhnlich aus.

Die Anwendung, selbst in der neuen v2.0 Version, basiert weiterhin auf dem alten .NET Framework v4.7.1 anstatt auf .NET 7 (oder ähnlich) mit nativer Linux Unterstützung. So oder so sollte es schon praktikabel laufen. Mono-sg ist offenbar der Garbage Collector, was das Problem noch komischer macht.

Aus neugier: welche Duplicati Version ist bei dir im Einsatz? Ich würde dir vermutlich empfehlen, dies in ihrem Github zu melden. Die werden dich dann sicherlich nach mehr Informationen und Logs fragen.
 
Was passiert denn, wenn du mehr lerne zuweist, rein aus Interesse. Wird es dann besser, oder lastet es dann weiterhin alle Kerne aus?
 
@andy_0
Ich nutze die 2.0.6.3.

@Innensechskant
Wenn ich einen Kern zuweise wird der Kern voll ausgelastet. Wenn ich 2 oder auch 4 Kerne zuweise liegt die Auslastung laut Übersicht in PVE zwischen 30-40%, an der Performance ändert sich aber nichts.
Ich vermute es wird so oder so nur ein Kern genutzt.

@Y-Chromosome
ich mag an Duplicati insbesondere die benutzerfreundliche GUI. Deswegen möchte ich nur sehr ungerne umsteigen.
 
Ich halte Borg auch für eine sinnvolle Lösung um Backups zwischen zwei Linux Maschinen auszuführen. Aber das ist ja ein anderes Thema.

Duplicati v2.x ist eine Beta. Womöglich kommt der Fehler daher. Deswegen solltest du testen, ob es auch mit v1.x auftritt. Sollte der Fehler / das Verhalten weiterhin reproduzierbar sein würde ich dir empfehlen eine Fehlermeldung auf Github (https://github.com/duplicati/duplicati/issues) zu erstellen.

[Nachtrag]
v1.x ist uralt, das noch zu nutzen hat keinen Sinn. Entsprechend hab ich mein Beitrag angepasst.
 
@andy_0
Es geht hierbei nicht um ein Backup zwischen zwei Linux Maschinen sondern um ein Backup auf eine USB Platte an einer Remote Fritzbox, wobei die Fritzboxen per LAN-LAN Kopplung miteinander verbunden sind.
Daher wird die die Performance langfristig auch kein Problem sein, da eh durch meinen Upload von 10 MBit/s beschränkt und die sich ändernden Datenmengen sehr überschaubar sind.
Nur das initiale befüllen der Platte mit ca. 5 TB bereitet mir gerade Kopfzerbrechen.

@Y-Chromosome
Danke, aber die GUI benötige ich auf verschiedenen OS - ich nutze auf meinem Dekstop Windows, dann Chrome-OS auf einem Chromebook und z.T. auch vom Handy aus.
Da ist das Webinterface von Duplicati schon ziemlich genial.
 
Ich würde es zwecks Falsifizierung einmal "richtig" installieren (ohne LXC), um den Container auszuschließen.

Ein schneller Blick mit 'strace' auf den Prozess könnte evtl. Erkenntnisse darüber liefern, woran er "herumdoktort".
 
Ich habe es nun noch einmal in einer Debian VM neu aufgesetzt. Leider keinerlei Besserung. D.h. Debian in VM zeigt das gleiche Verhalten wie Ubuntu in LXC.
 
Dann versuche mal (wie bereits oben schon erwähnt) die offiziellen Supportkanäle. Wobei ich eher mit dem Forum statt des Bugtrackers beginnen würde.
 
Hat sich hierfür eine Lösung gefunden? Kann es eventuell funktionieren, wenn dem Container eine GPU zugewiesen wird um den Job des Komprimierens zu übernehmen?
 
Meine Lösung war, auf Duplicacy umzusteigen. Kostet zwar ein paar Euro, läuft aber absolut problemlos und ist deutlich benutzerfreundlicher.
 
Zurück
Oben