RS100G9 - ClamAV sehr langsam

  • Hallo,


    ich habe mal eine Frage...

    Ich bin grundsätzlich mit dem Server und der Geschwindigkeit des Servers sehr zufrieden, auch Benchmarks fallen so aus wie ich es erwarten würde.

    Allerdings dauert ein Virenscan mit ClamAV in meinen Augen extrem lange und das kann ich mir nicht erklären....


    Hier der Benchmark des RS1000 G9:

    Hier ein Auszug aus dem ClamAV Log:

    Die Scandauer mit 273Minuten, also 4,5 Stunden finde ich für die überschaubare Datenmenge extrem langsam...


    Ich habe noch einen VPS bei einem anderen Anbieter. Die SSD Geschwindigkeit lt. Benchmark ist deutlich langsamer insgesamt, aber der Scan dauert bei etwas größerer Datenmenge nur halb so lange... :/


    Hier der Benchmark:

    und das ClamAV Log:

    Beide Server laufen mit Debian 10.8, die Daten sind nahezu identisch, da ich von dem "anderen Anbieter" weg wollte und die Dateien und Einstellungen auf beiden Servern gleich sind.

    Warum ist der Netcup Server lt. Benchmark deutlich schneller, aber beim Scannen per ClamAV deutlich langsamer...??


    Ich verstehe es leider nicht, hat hier vielleicht jemand eine Idee woran das liegen kann?


    Vielen Dank und viele Güße

    Alex :)

  • Die CPU Power von deinem zweiten Server ist sehr viel größer wie es mir scheint. bei Geekbench v4 7k vs 14k

    Auf Festplattengeschwindigkeit kommt es ja hier nicht wirklich an, 6GB könnten beide Server in wenigen Sekunden übertragen.


    Was bei der Verteilung der Dateien auch nicht hervorgeht, ist, wo in den 3 Verzeichnissen die meisten Dateien liegen.

    Ich vermute zwar, dass die meisten Dateien unter /home/users zu finden sind, aber zumindest bei meinen Server Setups liegen /tmp und /var/tmp komplett im RAM wodurch die IOPS der verbauten SSDs wiederum keine Rolle spielen.


    Allerdings denke ich, dass es bei deinem Setup vermutlich nur an der CPU Leistung liegt.

    Könntest du mir vielleicht per PN schreiben was für ein Server das ist, von dem du kommst?

  • Server 2 ist doppelt so schnell im Benchmark (Multi Core) und doppelt so schnell im Virenscan. Klingt schon deutlich danach als bestünde genau dort der Zusammenhang.

    Hallo,


    das stimmt, das er Multicore doppelt so schnell ist.

    Aber ClamAV nutzt von zu Hause ja grundsätzlich nur 1 Core. Der Scan in beiden Beispielen ist nur auch über 1 Core gelaufen.


    Man kann mit clamdscan --multicore usw. auch alle Kerne nutzen, aber das habe ich jeweils nicht gemacht.


    Daher verwirrt mich das etwas und ich kann es nicht deuten, den im SingleCore ist der Netcup schneller


    CPU bei Netcup ist der

    Code
    1. AMD EPYC 7702P 64-Core Processor

    CPU beim Mitbewerber

    Code
    1. AMD EPYC 7282 16-Core Processor

    Viele Grüße

    Alex :)

  • Sorry aber mal langsam.

    Ich habe geschrieben, dass clamdscan automatisch im multithread modus läuft, da du von clamdscan gesprochen hast und jetzt redest du von clamscan.


    Und merkwürdig ist da garnix. Dein Scan lief im multithread modus und der Netcup RS hat deutlich weniger multicore power. Ferddig

  • Sorry aber mal langsam.

    Ich habe geschrieben, dass clamdscan automatisch im multithread modus läuft, da du von clamdscan gesprochen hast und jetzt redest du von clamscan.


    Und merkwürdig ist da garnix. Dein Scan lief im multithread modus und der Netcup RS hat deutlich weniger multicore power. Ferddig

    Hallo,


    ich habe geschrieben, daß es mit clamdscan die Möglichkeit gibt mehr Kerne (alle) zu nutzen. Ich habe auf beiden Servern den identischen clamscan (1 Kern) laufen lassen. Der Scan lief auf beiden definitiv nicht im Multithread Modus.


    Das es einen Unterschied macht, ob ich 2 Kerne oder 6 miteinander vergleiche ist mir schon klar, ich habe daher extra auf beiden nur 1 genutzt. War vielleicht im ersten Beitrag etwas unglücklich ausgedrückt X/


    Äpfel mit Birnen vergleichen ist ja doof...


    Wie gesagt, beide nur mit clamscan (ohne d) und auf 1 Kern. Und dafür ist der Unterschied (für mich) nicht verständlich...


    Viele Grüße

    Alex :)

  • Ich denke trotzdem, dass das an der CPU liegt.

    Lass einfach mal den scan laufen und schau nach wie die Auslastung der CPU Kernen ist, dann siehst sofort ob das wirklich nur einen Kern verwendet.

    Die clamdscan multi funktion lässt einfach nur mehrere Scans parallel laufen um das System 'mehr' auszulasten, sprich es verwendet nicht gezielt alle bzw mehr cores.

  • Ich verwende Clamav nicht. Deswegen kommen jetzt u.U. auch dämliche Fragen


    - mal abgesehen von dem ersichtlichen "UPDATE VIRUS DATABASE", greift clamav sonst noch auf das Netzwerk zu, z.B. indem es manchmal Dateien an virustotal schickt, oder so?


    - wie ist die RAM Auslastung ? Muss der RS evtl swappen? Der andere hat ja mehr Cores. Hat er auch mehr RAM ?

    u.U. auch mehr Dateien im Cache, so dass er nicht mehr auf die SSD zugreifen muß?


    - Kannst Du mal iotop o.ä. verwenden, um zu sehen ob es an der SSD liegt?


    - Kannst Du mal nur eine haargenau identische Teilmenge testen, nur um auf Nummer sicher zugehen?


    - Der RS hat mehr Known viruses: 12805986. Der andere hat nur Known viruses: 12781884

    Kannst Du hier mal mit dem gleichen Dataset arbeiten ? Evtl durch gleichzeitiges startet?


    - Wie ist die CPU Auslastung während des gesamten Vorgangs ? Also nicht nur punktuell. Ist der Kern die ganze Zeit zu 100% ausgelastet, bei beiden VMs,

    oder muss der RS auf irgendeine Ressource warten?

  • Ich hatte mich mit bori per PN ausgetauscht, weil mich interessiert hat welcher Server des dann sei und in diesem Zuge ist mir durch Hinweis von bori erst aufgefallen, dass Wörter wie con-tabo (zusammengeschrieben), tatsächlich Zensiert sind und man nicht mal eine Private Nachricht mit diesen versenden kann - wie lächerlich ist das denn?


    Andi22

    - nein clamav arbeitet komplett offline

    - der andere Server hatte 16GB RAM vs 8GB von dem Netcup server, aber VPS. Bei so geringen Datengrößen glaube ich nicht, dass geswapt wird, außer der Server ist falsch konfiguriert

    - an der SSD kanns kaum liegen, außer wenn sie vom Host System her schon ausgelastet ist (ist aber ein RS hier, heißt zwar nix, wäre aber eher ungewöhnlich)

  • Hallo,


    ich hatte auch beim Mitbewerber den Befehl clamdscan --multiscan --fdpass /... getestet.


    Da war der Scan in knapp 30 Minuten durch bei identische Datenmenge.


    Also Single Core bei Con-tabo 130 Minuten

    Multicore bei Con-tabo 30 Minuten


    Bei netcup Single Core 270 Minuten

    Multicore konnte ich leider nicht testen, da der Befehl abbricht und ich aus der SSH Sitzung fliege 8|


    Irgendwas ist da merkwürdig...

    Die Leistungsdaten, auch von den Benchmarks sind ja beim Netcup echt gut, daher verstehe ich den "Einbruch" bei identischem Setup nicht.


    Betriebssystem identisch, Software, Datenmenge bis auf minimal weniger bei netcup alles gleich.


    Viele Grüße

    Alex :)

  • ----------- SCAN SUMMARY -----------

    Known viruses: 8521265

    Engine version: 0.102.4

    Scanned directories: 931707

    Scanned files: 688185

    Infected files: 0

    Data scanned: 37821.33 MB

    Data read: 81878.22 MB (ratio 0.46:1)

    Time: 4712.512 sec (78 m 32 s)


    habs gerade bei mir laufen lassen. In meiner Datenbank sind weniger Einträge, aber sie ist komplett aktuell (freshclam)

    Mein Befehl:

    Code
    1. clamscan -r -i -l clamav.log /path/to/data 

    bei mir wurden (wohlgemerkt) über 6 mal soviele Dateien gescannt und 20 mal soviele Daten eingelesen.

    VPS 4000 G9

  • Hi,


    Habe den identischen Befehl auch endlich beendet...


    9 Minuten fehlen, dann hätte ich 5 Stunden voll bekommen =O||


    Keine Ahnung was es ist, aber definitiv nicht RS würdig.... Da läuft ja ben virenscan auf nem 486er schneller :|


    Hat denn noch irgendjemand eine Idee?


    Viele Grüße

    Alex :)

  • Hi,


    die CPU ist mit 1 Socket, 2 Kerne eingestellt...


    Viele Grüße

    Viele

  • Sinnvoll wäre es natürlich auch mit BEFEHL nur den Scan eines Subsets zu haben der nur ein paar Minuten dauert, wo aber der Zeitunterschied zwischen den Servern trotzdem deutlich nachvollziehbar ist.

    Überhaupt ists wichtig sicherzustellen dass die Versionen (von clamav und der Signaturdatenbank) möglichst genau gleich sind. Ein nachvollziehbarer Testcase der möglichst klein ist und evtl. auch von anderen zum Testen verwendet werden könnte wäre auch noch schön. Und frische Croissants jetzt zum Frühstück. Aber da würd ich mich selbst drum kümmern :-)


    PS: strace mit Time tracing könnte man auch noch dagegen werfen. Einmal detallierte Zeiten und einmal cumuliert. Und dann könnten wir am Ende noch BPF auffahren und den Prozess so richtig nackig machen. Denke aber nicht dass wir soweit gehen müssen.