Server primär als NAS Ersatz (VMware oder Proxmox)

@esquire1968: Zeig' bitte einmal den output von:

dladm show-phys
dladm show-link
ipadm

Dann kann man ggf. etwas besser erkennen, ob es in Solaris oder eventuell schon "vorher" (auf Ebene ESXi) irgendwo hakt.
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
dladm show-phys
LINK : vmxnet3s0
MEDIA : Ehternet
STATE : down
SPEED : 0
DUPLEX : full
DEVICE : vmxnet3s0


dladm show-link
LINK : vmxnet3s0
CLASS : phys
MTU : 1500
STATE : down
BRIDGE : --
OVER : --


ipadm : Hier fehlt offensicht noch ein Atrribut



//Edit: Nachdem ich die NW-Schnittstelle entfernt und neu hizugefügt habe passt es jetzt.

Macht es Sinn den MTU Wert zu erhöhen?
 
Zuletzt bearbeitet:
Ne, ipadm ohne Parameter listet dir sämtliche Konfigurationen auf, also u.a. IP-Adressen für IPv4 und IPv6. Ich kann grad nicht selbst schauen weil unterwegs, aber "normalerweise" sollten deine Adapter unter dladm show-link irgendeine Kurzbezeichnung wie z.B. "net0" "net1" "net2" usw. haben und dann dazu unter ipadm eine zugeordnete IP-Adresse.

Dabei zeigt "State:down" von "dladm show-link" dass vermutlich entweder die "NIC" noch nicht mit ipadm create-ip eingerichtet wurde und/oder im ESXi keine Verbindung konfiguriert ist.
 
Das Tool Midnight Commander zeigt bei mir statt Linien "x" an. Ich habe herausgefunden, dass dies mit der Einstellung locale zusammenhängt. Wie ändert man das bitte?

root@storage:~# locale
LANG=
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=
 
Googlen nach "set solaris locale" bringt Infos, z.B. How to change Locale settings on Solaris ? - UnixArena Für Illumos sind die Infos aus Solaris 10 bis Solaris 11.2 am passendsten

Grundsätzliches kann man einiges auch in napp-it (System > Localisation) einstellen.

Man muss aber aufpassen. Die Umstellung von Zeichensätzen oder Spracheinstellungen kann dazu führen dass napp-it z.B. in den Teilen nicht mehr funktioniert in denen ZFS Rückgaben z.B. das Datum ausgewertet werden. Ich fange zwar ein mai=may=Mai ab abder das geht nicht immer.

Update
Getting Midnight Commander line drawing to work with PuTTY | andremiller.net

Damit werden die Linien angezeigt.
Die korrekte Putty Einstellung für Windows Translation (Default UTF-8) musste ich auf ISO 8859 Latin-1, Western Europe umstellen
 
Zuletzt bearbeitet:
Wenn ihr über SSH den MC ausführt, dann liegt es sicher an abweichenden Charsets auf Host und SSH-Client-Konfiguration.
Als Beispiel mal eine korrekte Konfiguration von einem Debian Host:
Screenshot MC
Putty_same_charset.png
Screenshot Locales
locales.png
Screenshot Putty Charset
putty_charset.png

Wenn ich den Putty Charset nun z.B. auf ISO-8859-1 umstelle ohne die Locales anzupassen, sieht es so aus:
Putty_different_charset.png
Ob der PuTTY Charset auf C/POSIX umgestellt werden kann, weiß ich nicht. Müsste eigentlich mit ISO-8859-1 gehen. Wäre jedenfalls der einfachste Versuch.

Wenn das Problem auch lokal auftritt, würde ich mal versuchen, locales auf en_US.UTF-8 umzustellen. Wobei die Linien eigentlich im normalen ASCII Zeichensatz enhalten sind und auch im locale C gehen müssten.


Edit: Da habe ich wohl etwas zu lange mit meinen Screenshots rumgetrödelt und gea war schneller :(
 
locale hat funktioniert - danke sehr.
 
Zuletzt bearbeitet:
Wie kann ich herausfinden welcher Prozess/User versucht auf ein Share zuzugreifen. Hintergrund: Ich sehe auf der Konsole immer wieder den gleichen Eintrag:

Storage smbsrv: NOTICE: smbd[STORAGE\Thomas]: .sync share not found

Wobei "Thomas" ein Share ist.
 
Die Meldung sagt was anderes
Thomas versucht auf ein Share .sync zuzugreifen, z.B. via \\STORAGE\.sync

Das Share gibts nicht. Mehr weiß Solaris dazu dann auch nicht.
 
Soweit funktioniert jetzt fast alles mit napp-it. Tolle Sache!

Einzig FTP bzw. ProFTPD kann ich nicht aktivieren. Programm ist installiert (wget -O - http://www.napp-it.org/proftpd | perl). Ich kann allerdings FTP bei den einzelnen Shares nicht aktivieren, bzw. es bleibt immer auf "off".

Ausserdem gelingt es mir nicht vom iPhone zuzugreifen - gibt es da eine empfohlene Lösung?
 
Nutze aufm iPhone die App „FileBrowser“. Spielt mp3 und Videos ab. Gibt aber bestimmt noch andere Apps aber das doofe iPhone kann m.W. kein SMB oder NFS.
 
Verwende "FileExplorer" am iPhone - bekomme aber keine Verbindung hin.

FTP wäre eine Alternative. Es gelingt mir allerdings nicht es im napp-it zu aktivieren.
 
Nimm den Player von Luckysh0t. Hab den grad mal installiert und der findet sofort die SMB-Shared der Solaris Kiste.
 
Mit FileBrowser bekomme ich keine Verbindung hin!
"SMB Direct TCP invalid len of 0"

Luckysh0t finde ich nicht!
 
Zuletzt bearbeitet:
Huehuehue... den von Luckysh0t GENANNTEN: Player Xtreme
 
Ich kann mich ja mal gerne auf dein iPhone stellen, da mich ins iPhone zubringen schwer wird, aber viel helfen wird’s nicht ^^
 
Zuletzt bearbeitet:
Habe soeben in napp-it die Statusanzeige rechto oben entdeckt:

2018-02-16 01_33_13-storage __ ZFS appliance.jpg

Was bedeutet die Anzeige "gelb" bei Disk? Besteht Grund zur Beunruhigung?
 
Zuletzt bearbeitet:
Das ist die reine Last. Zieh mal die Maus drüber (ohne Click). Auch so bei net.

Gelb oder rot beim Pool bedeutet hingegen eher Handlungsbedarf.
 
Habe einen SMART Test über alle Platten durchgeführt. 5 der 6 Platten bringen dieses Ergebnis:

smartctl 6.6 2017-11-05 r4594 [i386-pc-solaris2.11] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, smartmontools

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 364 -

Eine allerdings zeigt folgendes Resultat - es erschein auch nicht die Info "without error"

smartctl 6.6 2017-11-05 r4594 [i386-pc-solaris2.11] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, smartmontools

=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA _of_first_error
# 1 Short offline Interrupted (host reset) 70% 364 -
# 2 Short offline Interrupted (host reset) 80% 364 -
# 3 Short offline Interrupted (host reset) 40% 364 -
# 4 Short offline Interrupted (host reset) 40% 364 -
# 5 Short offline Interrupted (host reset) 10% 364 -
# 6 Short offline Interrupted (host reset) 90% 363 -
# 7 Short offline Interrupted (host reset) 20% 363 -


Was bedeutet das?
 
Warum sehe ich das Problem nur bei einem Smart Test? Wenn die Platte z. B. ein Problem mit der Stromversorgung hätte, müsste ich doch irgendwo eine Fehlermeldung sehen?!

Gibt es eine Möglichkeit die Platte zu testen ohne diese auszubauen?
 
Ich werde es mit dem Programm mal probieren. Danke!

Wenn das Kabel oder die Stromversorgung ein Problem hat, so müsste doch das Pool einen Fehler melden, oder? Hat o. a. Fehler Einfluss auf die Performance? Soll ich dem Fehler gleich auf den Grund gehen, bzw. ist das ein kritischer Fehler?

Punkto Performance ist mir folgendes aufgefallen und auch unklar.

Bei meinem "alten" QNAP NAS (EXT4 Raid 5) schaffe ich folgende Durchschnittswerte: Write 208 Mbps/Read 426 Mbps
Der "neue" Server (ZFS Raid Z2) liefert nur Folgendes: Write 176 Mbps/Read 412 Mbps
(10x 1 GB File, GB LAN Verbindung jeweils auf ein Samba Share)

Sollte der Server nicht deulich schneller sein?

Noch eine Frage: Wo finde ich die akteullen Logs bei napp-it? Unter System/Log/log-0 finde ich nur Einträge im Zeitraum 6. bis 13. Februar, log-1 zeigt 9. November bis 6. Februar, log-2 und 3 sind leer.
 
Zuletzt bearbeitet:
Über 1Gbit-Lan? Ohne Wlan-Strecke dazwischen? Da muss ein substantielles Problem oder Engpass wo vorliegen. Ein Raidz2 aus 6 halbwegs aktuellen 4TB-Platten kann bei großen Files sequentiell bei einem einzelnen User durchaus 600+ Mbyte/s lesen und schreiben. (Über mein 10Gbit-Lan geht das auch definitiv zwischen Client und Nas4free-VM).

D.h. eine 1Gbit-Leitung sowas von vollständig sättigen. Da müssen 110-115 Mbyte/s gehen.

Um zu checken, ob das ein Problem mit dem Storagesetup ist oder vom Netzwerk kommt, solltest Du als erstes Benchmarks/Durchsatz direkt lokal am Pool durchführen. Napp-IT hat da glaub ich auch was übers Menü an Bord, ohne das man auf die Konsole muss.
 
Zuletzt bearbeitet:
Die Logs findet man im Menü System > Logs (/var/adm/*) oder System > Faults (Solaris Fault Management)

zur Performance
Was ist denn die Ausgabe vom Menü Pools > Benchmark?
Als Vergleich: http://napp-it.org/doc/downloads/optane_slog_pool_performane.pdf

btw
napp-it nutzt nicht SAMBA sondern den in ZFS und den Kernel integrierten SMB Server
 
Zuletzt bearbeitet:
Bennchmark filesystem: /tank/_Pool_Benchmark
begin test 3 ..randomwrite.f ..
begin test 3sync ..randomwrite.f ..
begin test 4 ..filemicro_seqwrite.f ..
begin test 4sync ..filemicro_seqwrite.f ..

set sync=disabled
begin test 7 randomread.f ..
begin test 8 randomrw.f ..
begin test 9 filemicro_seqread.f ..
pool: tank

NAME STATE READ WRITE CKSUM
tank ONLINE 0 0 0
raidz2-0 ONLINE 0 0 0
c0t5000C500A4D1390Ad0 ONLINE 0 0 0
c0t5000C500A4D15D91d0 ONLINE 0 0 0
c0t5000C500A4D15DC5d0 ONLINE 0 0 0
c0t5000C500A4D1653Ad0 ONLINE 0 0 0
c0t5000C500A4D16D14d0 ONLINE 0 0 0
c0t5000C500A4D16F17d0 ONLINE 0 0 0


hostname Storage Memory size: 16384 Megabytes
pool tank (recsize=128k, compr=off, readcache=none)
slog -
remark


Fb3 randomwrite.f sync=always sync=disabled
157 ops 128 ops
31.399 ops/s 25.599 ops/s
2544us cpu/op 7886us cpu/op
31.7ms latency 39.0ms latency
0.2 MB/s 0.0 MB/s

Fb4 filemicro_seqwrite.f sync=always sync=disabled
174 ops 1025 ops
34.798 ops/s 1024.970 ops/s
3329us cpu/op 818us cpu/op
28.7ms latency 0.1ms latency
34.6 MB/s 1024.0 MB/s
________________________________________________________________________________________

read fb 7-9 + dd (opt) randomread.f randomrw.f filemicro_seq
pri/sec cache=none 0.2 MB/s 0.4 MB/s 43.6 MB/s
________________________________________________________________________________________
 
Etwas schwer zu lesen da die Formatierung fehlt (besser als Code einfügen, dann bleiben die Spaces/Spalten erhalten)

Insgesamt sind die Werte bei den gewählten Workloads aber im Rahmen.
Für ein Verkaufsprospekt wäre natürlich sequentielles Schreiben ohne sync mit 1 Gbyte/s der Wert. Da spielt aber der ZFS RAM-Cache eine entscheidende Rolle. Mit 16GB RAM hat der immerhin schon 1,6 GB (10%). Ansonsten sind diese Testeinstellungen eher zum Optimieren von sehr schnellem Storage.

Der Syncwrite-Wert mit 34 Mbyte/s ist ein Hinweis auf die Schreibwerte ohne Schreib-Cache und mit kleinen Datenblöcken. 34 Mbytes/s ist für einen diskbasierten Z2 Pool eher ein guter Wert. Soll der Pool als ESXi Datastore dienen, würde hier ein Slog eine erhebliche Verbesserung bringen.

Bei den Lesewerten ist der RAM-Lesecache komplett deaktiviert (cache=none). Da in einem Z2 Raid die Daten ziemlich gleichmäßig über da svdev verteilt sind, gibt es kein echtes sequentielles Lesen (Daten am Stück auf der Platte). Der Wert zeigt also ziemlich brutal, wie schlecht ein Platten-Z2 Raid damit ohne Cache Unterstützung zurechtkommt. Immerhin hat ein Z2 vdev nur die iops einer Platte also ca 100. Zum Vergleich, eine gute Enterprise SSD hat 20-80k, eine große Intel Optane NVMe 500k iops.

Daher landet sequentielles Lesen auch nur bei 45 MBytes/s. Zufälliges Lesen kleiner Blöcke ist so schlecht wie erwartet. Dieser Test ist daher eher für SSD/NVMe interessant. Die tatsächlich zu erwartenden Werte würde eher ein Benchmark mit Lesecache=all liefern. Wenn es um größere Daten geht würde z.B. ein Workload wie singlestreamread, fivestreamread oder fileserver bessere Lesewerte für Normalbetrieb liefern. Damit sollten Lesewerte > 200 MB/s liegen. Tests die sehr stark vom Lesecache profitieren können sogar Lesewerte > 1GB/s zeigen. Diese Tests machen aber wenig Sinn wenn man den Pool selber einschätzen will und nicht die RAM Performance aus dem Cache.

Im aktuellen napp-it habe ich daher Readcache=all als default gesetzt.

Was noch interessant wäre ist die Frage ob alle Platten während des Tests eine gleiche Last (wait/busy) zeigen. Wenn da eine Platte deutlich schlechter ist als der Schnitt kann die komplett bremsen. (System > Basis Statistic > Disks oder Extension > Realtime Monitor > iostat (2))

Mit Schreib/Lese Ram-Cache aktiviert spricht aber nichts dagegen, dass der Pool ein 1G Netzwerk (> 100MB/s) lesend und schreibend auslasten kann. Schreib/ Lesewerte von 15-30 MB/s deuten auf ein anderes Problem (es sei denn man testet Performance bei kleinen Daten-Blöcken) oder auf aktiviertes Sync beim Schreiben.

Welches Tool wurde denn auf Windows benutzt?
Mein Lieblingstool für sequentielle Tests ist AJA. Damit kann man gut Videoperformance mit kleinen oder großen Einzelbildern testen (z.B. RGB, 4k Video)
 
Zuletzt bearbeitet:
Hi! Danke für die ausführliche Erläuterung. Ich habe folgende Tests auf Windows 10 heraus gemacht:

LAN Speed Test
Code:
100x 100 KB ... W  63 Mbps - R 285 Mbps
  1x   1 GB ... W 161 Mbps - R 389 Mbps

Windows Datei kopieren (cirka)
Code:
100x 100 KB ... W 109 MB/s - R 112 MB/s
  1x   1 GB ... W 108 MB/s - R 112 MB/s
write_100MB.jpg
read_100MB.jpg
write_1GB.jpg
read_1GB.jpg

AJA
Code:
265 MB ... W 23 MB/Sec - R 45 MB/Sec
  1 GB ... W 22 MB/Sec - R 45 MB/Sec
Anhang anzeigen AJA_256MB.pdf
Anhang anzeigen AJA_1GB.pdf

System - Basic Statistics - Disk
Stytem-Basic_Statistics-Disk.jpg

Hier nochmals der Benchmark in einem "ordentlichen" Format:
Code:
Bennchmark filesystem: /tank/_Pool_Benchmark
begin test 3 ..randomwrite.f ..
begin test 3sync ..randomwrite.f ..
begin test 4 ..singlestreamwrite.f ..
begin test 4sync ..singlestreamwrite.f ..

set sync=disabled
begin test 7 randomread.f ..
begin test 8 randomrw.f ..
begin test 9 filemicro_seqread.f ..
pool: tank

	NAME                       STATE     READ WRITE CKSUM
	tank                       ONLINE       0     0     0
	  raidz2-0                 ONLINE       0     0     0
	    c0t5000C500A4D1390Ad0  ONLINE       0     0     0
	    c0t5000C500A4D15D91d0  ONLINE       0     0     0
	    c0t5000C500A4D15DC5d0  ONLINE       0     0     0
	    c0t5000C500A4D1653Ad0  ONLINE       0     0     0
	    c0t5000C500A4D16D14d0  ONLINE       0     0     0
	    c0t5000C500A4D16F17d0  ONLINE       0     0     0


hostname                        storage  Memory size: 16384 Megabytes
pool                            tank (recsize=128k, compr=off, readcache=all)
slog                            -
remark                           


Fb3 randomwrite.f               sync=always                     sync=disabled                   
                                271 ops                         22443 ops
                                54.199 ops/s                    4488.496 ops/s
                                1730us cpu/op                   123us cpu/op
                                14.8ms latency                  0.2ms latency
                                0.4 MB/s                        35.0 MB/s

Fb4 singlestreamwrite.f         sync=always                     sync=disabled                   
                                180 ops                         2920 ops
                                35.999 ops/s                    583.978 ops/s
                                3551us cpu/op                   983us cpu/op
                                27.6ms latency                  1.7ms latency
                                35.8 MB/s                       583.8 MB/s
________________________________________________________________________________________
 
read fb 7-9 + dd (opt)          randomread.f     randomrw.f     filemicro_seq
pri/sec cache=all               284.8 MB/s       364.0 MB/s     5.1 GB/s                      
________________________________________________________________________________________

Ist daraus ersichtlich ob die eine Platte ein Problem hat?

Welche Verbesserungen kann ich vornehmen?

Readcache=all? ... Wie stelle ich das ein?
Eine SSD als Cache oder mehr als 16 GB RAM?

Danke!
 
Um einzelne Platten zu beurteilen muss man sie einzeln testen oder schauen ob sich die Last gleichmäßig verteilt. Wenn eine einzelne besonders viele wait in iostat zeigt, so muss der ganze Pool auf die eine Platte warten.

Man muss sich ansonst einfach mal die Extreme überlegen. Wenn ich bei einer Platte einzelne 4KB Datenblöcke lesen oder schreiben möchte die nicht am Stück vorliegen sondern verteilt auf der Platte liegen, so kann ich bei 100 iops nur 400 KB/s lesen oder schreiben.

Liegen die Daten aber am Stück hintereinander so müssen die Köpfe kaum neu positioniert werden. Je nachdem ob innen oder aussen auf der Platte kann diese dann durchaus 200-300 MB/s liefern. Baut man aus diesen Platten dann ein 6 Platten Raid-Z2 so bleibt der iops Wert wo er ist, also bei 400 KB/s, der sequentielle Wert skaliert aber mit der Anzahl der Datenplatten kann also 4 mal so hoch werden also bis zu 1 GB/s.

Wenn man Benchmarks fährt sollte man sich darüber bewusst sein, was man messen möchte oder für welchen Workload man optimieren möchte. Die obigen Werte bei sequentieller Last von mehreren Hundert MB/s sind für einen Filer ok bis sehr gut. Die 5 GB/s beim Filemicro ignoriere ich mal, das ist Schreiben + komplettes Lesen aus dem RAM Readcache. Readcache ist übrigens eine ZFS Eigenschaft und steht per default auf all (Metadata + Data).

Die typische Optimierung wäre 3 x Mirror statt einmal Raid-Z2 bei je 6 Platten. Das gäbe eine ähnliche sequentielle Leistung bei 3 x soviel Schreib-iops und 6 x soviel Lese-iops aber bei deutlich weniger Nutzkapazität. Eine andere Optimierung wäre eine Optane 900P als Slog aber nur wenn man crash-sicheres sync Write benötigt. Eine SSD oder besser NVMe als L2ARC (erweitert den RAM Lesecache) wird bei 16GB RAM nicht mehr soviel bringen ausser für sequentielle Workloads da man bei L2Arc read ahead aktivieren kann.

Ich würde den Z2 Pool so lassen (optimiert auf Sicherheit und Kapazität) und eventuell um einen zweiten kleineren SSD only Pool ergänzen wenn man iops z.B. für VMs braucht.

btw
Bei AJA sollte man RGB wählen sonst geht die CPU beim Wandeln mit ein. Beste Werte gibts mit großen Bildern (4k), schlechtere mit SD Video (kleine Einzelbilder). HD Video liegt dazwischen.
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh