Gehen wir auch mal davon aus das alle Sicherheitspatches runtergebaut wurden
Klar... ![]()
![]()
Gehen wir auch mal davon aus das alle Sicherheitspatches runtergebaut wurden
Klar... ![]()
![]()
Der /e Modifier ist einfach nur gruselig. Man reißt (unter Umständen) mit sowas Sicherheitslücken in den Code, die absolut nicht "lesbar" sind. Es fällt somit ultra schwer sowas zu finden. Weiß nicht was ich davon halten soll, dass eine so große Software sowas benutzt. Weder der /e Modifier noch preg_replace_callback sind notwendig. Das ließe sich auch anders und vor allem lesbarer lösen.
Dann guck mal in Deine Screenshots. Da steht PHP 7.
Der /e Modifier wurde mit PHP 7.0 (zurecht) entfernt, sollte aber in PHP 5.6 noch funktionieren.
Entweder die Funktion die das nutzt entfernen / updaten oder PHP 5.6 nutzen.
Selbst an sowas rumbasteln ist meistens nicht Zielführend, da es spätestens beim nächsten Update wieder "kaputt" ist.
Wo genau sieht der Code gruselig aus?
Das Original nutzt noch die alte MySQL Extension. Daher die Inkompatibilität zu PHP >= 7.0. Das Risiko irgendwo eine SQL Injektion zu finden ist also hoch. Ich habe mir den Code nur oberflächlich angesehen, aber das ganze ist maximal Chaotisch "entwickelt". Schau Dir einfach mal bei Gelegenheit zum Beispiel die "sql.php" an.
Das Ding ist ein klassisches "gewachsenes System". Und "gewachsenses System" und "nicht maintained" verträgt sich nicht.
Schmeiß das wieder von Deinem Webspace runter, wenn Du fertig bist. Der Code sieht einfach nur gruselig aus. Und gerade die Tatsache, dass da beim offiziellem Projekt seit 2011 nichts mehr passiert ist, macht es nicht besser.
Das lösen wir hier ganz pragmatisch:
Da wir nur ein kleines Rack haben, steht alles einfach auf nem Block der mit im Rack drin liegt.
Das Problem mit "liegt im Netz" hatte ich schon mit der Router Config. Die war glücklicherweise in unserem Git was auf einem externen VServer gehostet wird. ![]()
Deine Mails werden irgendwie an einen SMTP Server von netcup gesendet. Guck mal in den Einstellungen ob da irgendwas auf SMTP umgestellt wurde.
Würde einfach empfehlen auf ein no-reply Postfach zu versenden umzustellen. Bringt viel weniger Scherereien als die mail Funktion von PHP.
Ja, das wäre schön. Aber ist leider kein Enterprise sondern das Netz eines e.V. Was man evtl noch machen konnte wäre auf kabel und Gehäuse die ETH Nummern drauf schreiben. Und das auf der Produktiv- und Ersatzhardware.
Die Heutige Hobby-Linux-Admin-Lektion: https://anysrc.net/post/gnu-linux/dokumentation-ist-alles
Nutzt ihr Alternativen?
Check_MK von zuhause aus via VPN.
Die Netzwerkerreichbarkeit überwache ich nicht. Nur die Erreichbarkeit via VPN und dann natürlich die üblichen Systemchecks.
Uh, die neue ZFS Version ist beeindruckend (im Vergleich zu vorher):
Write benchmark with cache
17179869184 bytes (17 GB, 16 GiB) copied, 61.3081 s, 280 MB/s
Read benchmark without cache drop
Start 1 of 5...
17179869184 bytes (17 GB, 16 GiB) copied, 18.3681 s, 935 MB/s
Start 2 of 5...
17179869184 bytes (17 GB, 16 GiB) copied, 14.3496 s, 1.2 GB/s
Start 3 of 5...
17179869184 bytes (17 GB, 16 GiB) copied, 14.2988 s, 1.2 GB/s
Start 4 of 5...
17179869184 bytes (17 GB, 16 GiB) copied, 14.7273 s, 1.2 GB/s
Start 5 of 5...
17179869184 bytes (17 GB, 16 GiB) copied, 13.5013 s, 1.3 GB/s
Alles anzeigen
Mal abwarten wie das ist, wenn die Uptime wieder >30 Tage ist und sich die Caches gefüllt haben. Hatte gestern von Jessie auf Stretch und von Proxmox 4 auf Proxmox 5 aktualisiert.
Ich kann bisher auch keine Probleme mit ZFS feststellen. Gut 30 Minuten nach dem Start der ganzen VMs hat sich das System auch wieder beruhigt und läuft wieder normal.
Meine Datensicherungen laufen auf ein kleines 2-Bay QNAP welches mit 2 Etagen Abstand in meiner Wohnung angeschlossen ist. Der Server befindet sich im Keller. Auf das QNAP werden auch meine netcup vServer Backups via VPN transferiert.
Erinner mich nicht daran, ich muss neben meinem KVM-Host noch knapp zwei Dutzend VMs upgraden…
Die VMs und Container sind alle noch auf Jessie. Da hatte ich keinen Bock zu. Hab nur den Shutdown genutzt in allen VMs einfach mal nen Upgrade laufen zu lassen.
Wenn man alle VMs auf einmal startet ![]()
Upgrade von Jessie auf Stretch und von Poxmox 4 auf Proxmox 5 in einem Rutsch durchgeführt.
Keinerlei Probleme bisher.
Ich liebe Debian. Einfach nur gut.
Ein Bekannter von mir, welcher einen etwas größeren Fuhrpark hat, hat mit ZFS ein 50TB Volume aufgebaut. Die Maschine hat allerdings auch ein Doppel-CPU-Sockel Board und ist mit 128GB RAM ausgestattet. Das soll (hab wieder keine Benchmarks, muss evtl mal fragen) selbst mit deduplication richtig gut laufen. Das bestärkt mich in meinem Eindruck, dass mein System einfach zu klein für ZFS ist oder irgendwas ganz entscheidendes falsch ist bzw fehlt.
Ich würde zu gerne mal mit einem echten ZFS-Admin über das ganze quatschen. Leider ist mir noch keiner übern weg gelaufen. In meinem Bekanntenkreis haben die meisten mit eingekauften Storage Systemen bekannter Hersteller zu tun die immer etwas eigenes nutzen.
Mir fehlen leider die Messwerte von meinem leeren System. Auf die Idee Benchmarks zu machen bin ich leider erst gekommen, als die meisten VMs schon eingerichtet waren.
Zum Thema RAM + Strom weg + Datenverlust: Da gibt es, je nach dem wo man liest und welches Datum das Paper hat, krasse Unterschiede bei den Aussagen. Ich hab schon gelesen "da gehen x Sekunden Transaktionen verloren", aber auch "ZFS schafft es das zu restoren". Hängt auch von der Option "sync" in den Volume Einstellungen ab.
Hast Du ein wichtiges System, ist also in jedem Fall (egal ob ZFS oder nicht) eine kleine USV ratsam, die das System beim Stromausfall kontrolliert herunterfährt.
Fakt ist, dass es genau wie in anderen Dateisystem auch, einen Schreibcache im RAM gibt. Ansonsten würde ja alles synchron weggeschrieben werden und es wäre total langsam. Das ZIL wird übrigens auch nur verwendet, um synchrone Schreiboperationen schneller abzuarbeiten und die dann später auf die Platten zu schreiben. Bei asynchronen Operationen ist es mehr oder weniger egal ob man ein ZIL hat oder nicht. Deswegen kann es durchaus Anwendungsfälle geben, wo man mit ZIL überhaupt gar keinen Unterschied messen kann.
Übrigens kann es genau so zu einem gewissen Verlust an Schreibtransaktionen kommen, wenn das ZIL crasht. Deswegen habe ich das auf 2 SSDs gemirrored.
Unterm Strich sind meine Probleme mit ZFS: Entweder nicht ausreichend oder mit großen Widersprüchen beschriebene Funktionen/Funktionsweisen, teilweise Unterschiede zwischen der Linux- und der BSD/Oracle-Implementierung von ZFS. Das macht das ganze zu einem großen Abenteuer wo man sehr viel ausprobieren muss.
Wie gesagt, hätte ich die Hardware hätte ich schon lange LVM bzw LVM-thin ausprobiert.
Mein Setup daheim sieht wie folgt aus:
NAME STATE READ WRITE CKSUM
myraidz ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
ata-WDC_WD6002FFWX-68TZ4N0_NCGWBBPV ONLINE 0 0 0
ata-WDC_WD6002FFWX-68TZ4N0_NCGWL6DV ONLINE 0 0 0
mirror-1 ONLINE 0 0 0
ata-WDC_WD6002FFWX-68TZ4N0_NCGWW71V ONLINE 0 0 0
ata-WDC_WD6002FFWX-68TZ4N0_NCGWZ7DV ONLINE 0 0 0
logs
mirror-2 ONLINE 0 0 0
a36a90f5-12fe-424a-9a15-472068a04b15 ONLINE 0 0 0
b2103b6f-3140-4be5-94ec-7400256455e6 ONLINE 0 0 0
cache
65caeb14-1feb-4ca7-920c-8644e976e9a4 ONLINE 0 0 0
5b84f8ba-04f0-47de-8ea2-8cbec93c685b ONLINE 0 0 0
Alles anzeigen
Das der Pool "raidz" heißt, ist historisch. Es ist ein Verbund aus zwei Mirrors je 2x 6TB WD Red Pro die zu einem Pool zusammengefasst sind. Es stehen also 12TB Speicher zur Verfügung. Zusätzlich hängen noch 2 SSDs im Verbund auf der sich jeweils ein ZiL und ein L2ARC befinden.
ZiL ist 32GB (mirror) groß, L2ARC ist 2x 200GB groß. Bei mir darf ZFS 16GB von 64GB RAM als L1ARC nutzen.
Hier mal ein kleiner Benchmark mit 4GB Dateigröße:
Write benchmark with cache
4294967296 bytes (4.3 GB) copied, 1.19873 s, 3.6 GB/s
Read benchmark without cache drop
Start 1 of 5...
4294967296 bytes (4.3 GB) copied, 1.01986 s, 4.2 GB/s
Start 2 of 5...
4294967296 bytes (4.3 GB) copied, 0.314367 s, 13.7 GB/s
Start 3 of 5...
4294967296 bytes (4.3 GB) copied, 0.320347 s, 13.4 GB/s
Start 4 of 5...
4294967296 bytes (4.3 GB) copied, 0.342111 s, 12.6 GB/s
Start 5 of 5...
4294967296 bytes (4.3 GB) copied, 0.329427 s, 13.0 GB/s
Alles anzeigen
Der gleiche Benchmark mit 17GB Dateigröße:
Write benchmark with cache
17179869184 bytes (17 GB) copied, 90.9782 s, 189 MB/s
Read benchmark without cache drop
Start 1 of 5...
17179869184 bytes (17 GB) copied, 86.6509 s, 198 MB/s
Start 2 of 5...
17179869184 bytes (17 GB) copied, 137.462 s, 125 MB/s
Start 3 of 5...
17179869184 bytes (17 GB) copied, 154.108 s, 111 MB/s
Start 4 of 5...
17179869184 bytes (17 GB) copied, 161.695 s, 106 MB/s
Start 5 of 5...
17179869184 bytes (17 GB) copied, 151.517 s, 113 MB/s
Alles anzeigen
Für mich sieht es so aus, als ob die Performance radikal einbricht, wenn mehr Daten verarbeitet werden, als es RAM gibt. Schließlich bin ich weit unter dem, was mein Cache maximal abbilden kann. (Disclaimer: Es laufen noch mehrere VMs auf der Maschine, Benchmark also nur semi-repräsentativ)
Da es so viele unterschiedliche Meinungen zu ZFS im Web gibt, kann ich Dir leider keine verbindliche Aussage geben. Aber ich tippe drauf, dass es an zu wenig RAM oder am RaidZ liegt, dass es bei Dir zu langsam ist.
Ich würde es im ersten Schritt mit einem Mirror Setup probieren, wenn das nicht hilft die VMs ausschalten und ZFS mehr RAM zuweisen.
Hätte ich genug Hardware, hätte ich schon lange mal ein LVM Setup ausprobiert. Das müsste auf einem so "kleinen" System (auf Kosten der Funktionalität) eine bessere Performance liefern.
ZFS, und vor allem RaidZ sind RAM Fresser aus der Hölle.
16GB Ram sind viel viel zu wenig für das was Du da aufgebaut hast.
Du könntest es mit einem Mirror Setup probieren. Eventuell hilfts.
Aber Dein Hauptproblem ist zu wenig RAM. Im Standardsetup schnappt sich ZFS für den Lesecache 50% des RAMs, sofern so viel verfügbar ist. Sprich 8GB. Allerspätestens wenn man mehr als 8GB auf einmal verarbeitet schießt der IO Wait in die Höhe.
Checke auch mal ob deduplication und compression deaktiviert ist.
Auch atime/realatime kann man in reinen Datenspeicher Volumes deaktivieren.
Zu Visual Studio: In den wenigsten Fällen muss man das komplette Paket Installieren. Meistens reicht es aus, zum Beispiel nur die C# Umgebung zu Installieren. Und dann ist man bei (in meinem Fall C# + ASP.NET) 7 GB. ![]()
Hab den Snapshot Export schon länger nicht mehr gebraucht. Aber damals lief das erheblich schneller. Wäre schade wenn das mittlerweile so lange dauert.
Fürs nächste mal vielleicht eher mit CloneZilla und einem externen SFTP Server arbeiten.
So habe ich die letzte Windows Server Migration (nicht bei netcup) gemacht.