Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Kan zijn dat de owncloud package niet aanwezig is; die wordt van remote server gedownload. Je kunt via SSH het installatiescript eens draaien voor meer informatie:
/services/owncloud/service_install.sh

Acties:
  • 0 Henk 'm!
YouTube: ZFS Performance Analysis and Tools

Ik zit even dit filmpje te kijken over DTrace icm ZFS, en daar roept die guru heel hard dat disks keihard tegen ZFS moeten zeggen dat er fouten zijn, wat dus duidelijk betekend: Gebruik TLER, want dan weet ZFS tenminste dat de disk iets verkeerd doet...

Even niets...


Acties:
  • 0 Henk 'm!

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

Verwijderd schreef op maandag 11 november 2013 @ 18:06:
Ik dacht misschien aan een systeem waarbij mijn pc een backup stuurt naar de nas en de nas die dan weer doorstuurt naar de 2e nas via internet.
Een groot nadeel is dat een mislukte backup naar de eerste NAS keurig doorgestuurd wordt naar de 2e NAS. Je moet dus wel je backups fatsoenlijk valideren.
Zelf heb ik een dergelijke opzet maar dan met een dedicated server ipv een 2e NAS. Via Windows Backup wordt alle data naar mijn eigen NAS gestuurd en via Crashplan gaat het ook nog eens naar m'n dedicated Server 2008 R2 systeem die in een datacenter draait.
Voordeel van Crashplan is een makkelijke interface voor het recoveren van losse bestanden en de data staat enkel encrypted op de dedicated.

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk,

ken je klassiekers! Dit is de oorspronkelijke clip waar Brendann echt schreeuwt. YouTube: Shouting in the Datacenter Zie je nu ook wat een waanzinnige analyzes je kan maken met DTrace. Voor mij is het een onmisbaar stukje gereedschap geworden. Deze man, Brendann Gregg, is weer zo'n koning. Er zijn veel video's met presentaties van hem te vinden op youtube. Allemaal even de moeite waard. Vooral om in te zien hoe krachtig en waardevol DTrace is. Het is voor performance vraagstukken zeer waardevol, nee .. onmisbaar.

Je hoeft niet eens te schreeuwen, ik heb dit effect (minder dramatisch) ook waargenomen toen ik 8 disken in twee van die 4 in 3 bays had zitten zonder ophanging of demping. Alles koud aan elkaar gekoppeld. twee van de 8 waren een mirror, de rest een raidz1. De raidz was lekker aan het streamen tijdens een test. Tegelijk begon er een random i/o op de mirror, vanuit een cron job. De mirror zorde voor vibraties die de andere disken oppikten. Die vibratie zag ik terug komen in de dtrace resultaten. Nu waren dit wel budget desktop drives.

Er zijn twee standaard boeken van de man uit de video:
-DTrace dynamic tracing in oracle solaris, mac os x, and freebsd
-Solaris Performance and Tools

Het laatste boek is niet alleen voor Solaris, het geeft ook algemene methodes voor performance diagnose en analyse.

Acties:
  • 0 Henk 'm!
Dat clipje kende ik inderdaad al, geniaal :+

Even niets...


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk,

sorry voor mijn verwarrende post. Ik las "roept ... keihard .. tegen disken". Ik dacht dat je "shouting in the DC" clip bedoelde ipv van deze. Mijn fout.

Ik hoop dat lezers de adviezen van de "guru" uit de video ter harte nemen.
WEL TLER
GEEN DESKTOP DRIVES
De ellende door voortdurende retries is soms niet te overzien. Precies wat Firedrunk schreef, de disk moet domweg vertellen dat er iets is misgegaan en dan kan ZFS wat "self healing" gaan doen. Dat de fabrikanten om reden van doelgroep segmentatie TLER uit de desktop drives hebben gehaald is puur economisch. Vroeger zat het wel op de meeste drives. Dit wil nog niet zeggen dat een disk met TLER een enterprise disk is. Want die drives zijn echt anders gebouwd.

Acties:
  • 0 Henk 'm!
Inderdaad, er was hier recentelijk een discussie over TLER, en het is in mijn ogen zo dat we dus beter onze adviezen aan kunnen passen om dus juist bijvoorbeeld WD Red schijven te adviseren ipv Green's omdat Red's redelijk fatsoenlijke TLER hebben. Het blijven geen Enterprise schijven, maar het is een beetje "as-good-as-it-gets" in mijn ogen.

Even niets...


Acties:
  • 0 Henk 'm!

Verwijderd

analog_ schreef op maandag 11 november 2013 @ 19:04:
Lees eens over zfs send/receive, ssh en mbuffer, ik zou in dit topic er een link over gepost hebben een tijd terug.
Dat lijkt me een solide methode! Ik zag op deze en deze links die je gepost had dat je zo incrementeel backups kunt doorsturen met dit command: zfs send -R -i tank@today tank@tomorrow. Hierbij vergelijkt hij dus de snapshot die je gisteren gemaakt had met die van vandaag en stuurt hij enkel de data die gewijzigd is. Ik vroeg me nu af of hij ook incrementeel kan vergelijken met data die niet voorheen via een snapshot overgezet geweest is? Data, identiek aan data op de 1e nas, die niet via een send/receive snapshot is overgezet dus maar bijvoorbeeld via samba van een pc. Misschien kan ik hier voor de eerste backup dan vergelijken met een snapshot die ik op de 2e nas gemaakt heb om daarna dan gewoon dat script te laten runnen? Hoop dat het duidelijk is.

Acties:
  • 0 Henk 'm!

Verwijderd

Tsurany schreef op dinsdag 12 november 2013 @ 12:47:
[...]
Je moet dus wel je backups fatsoenlijk valideren.
[...]
Zelf heb ik een dergelijke opzet maar dan met een dedicated server ipv een 2e NAS. Via Windows Backup wordt alle data naar mijn eigen NAS gestuurd en via Crashplan gaat het ook nog eens naar m'n dedicated Server 2008 R2 systeem die in een datacenter draait.
Mag ik je vragen waar je deze dedicated server draait? Ben benieuwd naar prijzen hiervoor. Ik veronderstel dat Windows Backup dan wel een goed systeem van validatie ingebouwd heeft?

Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
Ik las net een leuke study over de te verwachten levensduur van harddisken

http://blog.backblaze.com...long-do-disk-drives-last/

Ik geef toe dat het me allezins meevalt. Wel wil ik alvast opmerken dat nergens is opgegeven hoeveel en welke load de drives te verduren krijgen. Het zou mij niet verbazen als de load redelijk licht is. Als de load inderdaad licht is zal dat de levensverwachting positief beinvloeden.

Acties:
  • 0 Henk 'm!
tvwes schreef op dinsdag 12 november 2013 @ 15:37:
Ik las net een leuke study over de te verwachten levensduur van harddisken

http://blog.backblaze.com...long-do-disk-drives-last/

Ik geef toe dat het me allezins meevalt. Wel wil ik alvast opmerken dat nergens is opgegeven hoeveel en welke load de drives te verduren krijgen. Het zou mij niet verbazen als de load redelijk licht is. Als de load inderdaad licht is zal dat de levensverwachting positief beinvloeden.
Cool artikel! Ze hebben er ook echt over nagedacht hoe ze deze data naar buiten moeten brengen zonder dat mensen te snel conclusies trekken :)

Even niets...


Acties:
  • 0 Henk 'm!

  • FREAKJAM
  • Registratie: Mei 2007
  • Laatst online: 10-10 16:39

FREAKJAM

"MAXIMUM"

tvwes schreef op dinsdag 12 november 2013 @ 13:50:
@Firedrunk,

sorry voor mijn verwarrende post. Ik las "roept ... keihard .. tegen disken". Ik dacht dat je "shouting in the DC" clip bedoelde ipv van deze. Mijn fout.

Ik hoop dat lezers de adviezen van de "guru" uit de video ter harte nemen.
WEL TLER
GEEN DESKTOP DRIVES
De ellende door voortdurende retries is soms niet te overzien. Precies wat Firedrunk schreef, de disk moet domweg vertellen dat er iets is misgegaan en dan kan ZFS wat "self healing" gaan doen. Dat de fabrikanten om reden van doelgroep segmentatie TLER uit de desktop drives hebben gehaald is puur economisch. Vroeger zat het wel op de meeste drives. Dit wil nog niet zeggen dat een disk met TLER een enterprise disk is. Want die drives zijn echt anders gebouwd.
Ben ik blij dat ik toch die rode rotzakken van WD heb gekocht ipv die groentjes :+

is everything cool?


Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Maar, het is toch juist zo dat nu ZFS of je Host kan kiezen dat een drive niet meer reageert of iets niet kan vinden in plaats van dat de disk dit (eventueel te snel) voor je doet?

Het probleem van het missen van TLER is als je er een controller aan hebt hangen die niet weet wat er gebeurt en denkt dat de disk gewoon niet meer reageert. Als ik het goed begrepen heb is dat niet het geval bij ZFS en die snapt dat het commando wat naar de disk is gestuurd niet lukt en kan daar vervolgens alternatieve acties voor ondernemen en dropt niet meteen de gehele disk zoals een 'domme' hardware controller dat wel zou doen.

Dat maakt de WD green schijven dan juist ideaal? Goedkoper, spindown met wdidle3 uit te zetten en TLER is niet nodig dus hoeven we ook niet voor te betalen.

Wellicht bestaat er de kans dat de disks vervolgens nooit meer reageert, hoe ZFS daar mee omgaat weet ik ook niet.

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • ]Byte[
  • Registratie: April 2000
  • Laatst online: 13-09-2020
de checksum van owncloud zou niet kloppen... :?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[root@zfsguru ~]# /services/owncloud/service_install.sh 
* installing service owncloud
* installing packages
* package mp3info
note: package mp3info is already installed; skipping...
* package php5-ctype
note: package php5-ctype is already installed; skipping...
* package php5-curl
note: package php5-curl is already installed; skipping...
* package php5-dom
note: package php5-dom is already installed; skipping...
* package php5-fileinfo
note: package php5-fileinfo is already installed; skipping...
* package php5-hash
note: package php5-hash is already installed; skipping...
* package php5-iconv
note: package php5-iconv is already installed; skipping...
* package php5-json
note: package php5-json is already installed; skipping...
* package php5-mbstring
note: package php5-mbstring is already installed; skipping...
* package php5-mysql
note: package php5-mysql is already installed; skipping...
* package php5-pdo
note: package php5-pdo is already installed; skipping...
* package php5-pdo_mysql
note: package php5-pdo_mysql is already installed; skipping...
* package php5-pdo_sqlite
note: package php5-pdo_sqlite is already installed; skipping...
* package php5-simplexml
note: package php5-simplexml is already installed; skipping...
* package php5-sqlite3
note: package php5-sqlite3 is already installed; skipping...
* package php5-xml
note: package php5-xml is already installed; skipping...
* package php5-zip
note: package php5-zip is already installed; skipping...
* package php5-zlib
note: package php5-zlib is already installed; skipping...
* executing post-installation script
* downloading Owncloud version 5.0.12
/tmp/owncloud.tbz                             100% of   14 MB  255 kBps 00m58s
* checking SHA256 hash to verify integrity of downloaded tarball

ERROR: Owncloud tarball fails SHA256 checksum; installation failed!
ERROR: script returned error code 1
ABORTING installation of own cloud


Is er een manier om de package handmatig te downloaden en nogmaals installeren?

[update]
Als ik zoek op de sha256 sum in google lijkt deze wel te kloppen...
code:
1
2
[root@zfsguru ~]# sha256 /tmp/owncloud.tbz 
SHA256 (/tmp/owncloud.tbz) = b1aafcba4823c011b19b60353394d81455e2b3e9c169d4e444b27c740695ed7a


[update 2]
Okay... Ik had niet goed gekeken.
De VM draait op 9.1-006 en gebruikt owncloud 5.0.9 8)7
9.2-001 gebruikt owncloud 5.0.12
Dit lijkt issue te zijn met 9.2-001 / owncloud 5.0.12

Heeft iemand al owncloud in 9.2-001 werkend draaien?

[update ...]
Tnx CiPHER.
Ik lees net je post van 17:14 uur.

De manual install liep bij mij minder goed af...
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
config.status: linking src/makefiles/Makefile.freebsd to src/Makefile.port
===>  Building for postgresql90-client-9.0.14
prereqdir=`cd parser/ >/dev/null && pwd` && \
  cd ../../src/include/parser/ && rm -f gram.h && \
  ln -s "$prereqdir/gram.h" .
prereqdir=`cd utils/ >/dev/null && pwd` && \
  cd ../../src/include/utils/ && rm -f fmgroids.h && \
  ln -s "$prereqdir/fmgroids.h" .
gmake -C utils probes.h
gmake[1]: Entering directory `/usr/ports/databases/postgresql90-client/work/postgresql-9.0.14/src/backend/utils'
dtrace -C -h -s probes.d -o probes.h.tmp
dtrace: failed to compile script probes.d: "/usr/lib/dtrace/psinfo.d", line 88: failed to resolve type kernel`struct thread * for identifier curthread: Module is no longer loaded
gmake[1]: *** [probes.h] Error 1
gmake[1]: Leaving directory `/usr/ports/databases/postgresql90-client/work/postgresql-9.0.14/src/backend/utils'
gmake: *** [utils/probes.h] Error 2
*** [do-build] Error code 2

Stop in /usr/ports/databases/postgresql90-client.
*** [install] Error code 1

Stop in /usr/ports/databases/postgresql90-client.
*** [lib-depends] Error code 1

Stop in /usr/ports/databases/php5-pdo_pgsql.
*** [run-depends] Error code 1

Stop in /usr/ports/www/owncloud.
[root@zfsguru /usr/ports/www/owncloud]#

[ Voor 32% gewijzigd door ]Byte[ op 12-11-2013 18:10 ]


Acties:
  • 0 Henk 'm!
Quindor schreef op dinsdag 12 november 2013 @ 16:37:
Maar, het is toch juist zo dat nu ZFS of je Host kan kiezen dat een drive niet meer reageert of iets niet kan vinden in plaats van dat de disk dit (eventueel te snel) voor je doet?

Het probleem van het missen van TLER is als je er een controller aan hebt hangen die niet weet wat er gebeurt en denkt dat de disk gewoon niet meer reageert. Als ik het goed begrepen heb is dat niet het geval bij ZFS en die snapt dat het commando wat naar de disk is gestuurd niet lukt en kan daar vervolgens alternatieve acties voor ondernemen en dropt niet meteen de gehele disk zoals een 'domme' hardware controller dat wel zou doen.

Dat maakt de WD green schijven dan juist ideaal? Goedkoper, spindown met wdidle3 uit te zetten en TLER is niet nodig dus hoeven we ook niet voor te betalen.

Wellicht bestaat er de kans dat de disks vervolgens nooit meer reageert, hoe ZFS daar mee omgaat weet ik ook niet.
Nope, ZFS beslist niet zelf of een disk vaker dan eens 'te traag' reageert. Er zit gewoon een harde timeout op en niet meer. ZFS verwacht ook gewoon dat een disk werkt, of niet werkt, en bevat geen speciale (vooral menselijke) intelligentie die snapt dat een disk bezig is met recovery.

Enige vorm van TLER is dus wel degelijk nodig.

Even niets...


Acties:
  • 0 Henk 'm!

  • Mafketel
  • Registratie: Maart 2000
  • Laatst online: 17-10-2023
Verwijderd schreef op dinsdag 12 november 2013 @ 14:52:
[...]
Ik vroeg me nu af of hij ook incrementeel kan vergelijken met data die niet voorheen via een snapshot overgezet geweest is? Data, identiek aan data op de 1e nas, die niet via een send/receive snapshot is overgezet dus maar bijvoorbeeld via samba van een pc.
duidelijk ja mogelijk nee.
De reden is dat alleen het verschil van de twee snapshots wordt verstuurt en de harde eis aan de ontvangende kant is dat deze in de ongewijzigde originele snapshot versie draait.... ik hoop dat dat zo duidelijk is.

Anders gezegd als je een bitje veranderd op de ontvangende schijf en deze niet meer identiek is aan de snapshot, kun je niet meer incremental zfs versturen.

p.s. Edit je post de volgende keer ;) als je wat wil toevoegen.

Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

FireDrunk schreef op dinsdag 12 november 2013 @ 19:37:
[...]


Nope, ZFS beslist niet zelf of een disk vaker dan eens 'te traag' reageert. Er zit gewoon een harde timeout op en niet meer. ZFS verwacht ook gewoon dat een disk werkt, of niet werkt, en bevat geen speciale (vooral menselijke) intelligentie die snapt dat een disk bezig is met recovery.

Enige vorm van TLER is dus wel degelijk nodig.
Ok, en kan dat ook zijn in de vorm van de timeout die je kunt instellen in bijvoorbeeld de M1015? Aangezien ik juist WD Green's heb gekocht in de veronderstelling dat het niet (iig niet zo belangrijk) nodig was met ZFS gebaseerde systemen en dat die het juist waarderen dat er langer dan 7 seconden gekeken word of het probleem op te lossen is. En daarbij niet klakkeloos de eerste disk die eventjes een probleem heeft eruit flikkeren.

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Zo, even mijn backlog wegwerken... :7
Indeed it is! LZ4 maakt compressie weer interessant. Na het debacel van deduplication waar veel thuisgebruikers uiteindelijk weinig aan hadden, is dit een veel interessantere manier om wat extra opslag te genereren, zonder veel negatieve bijeffecten. Geen lagere disk I/O, geen absurde RAM-eisen en goed schaalbare CPU-load. Bijna perfecte compressie zou ik zeggen.
Compizfox schreef op vrijdag 08 november 2013 @ 00:37:
@CiPHER hoe benchmark je dat LZ4 nu dan? Aangezien er in de ZFSGuru benchmarkfunctie geen support voor is.
Gewoon door er data naartoe te kopiëren van de ene naar de andere pool, en dan met gstat en top de disk I/O en CPU load bekijken. Oldschool. 8)
FireDrunk schreef op vrijdag 08 november 2013 @ 13:39:
Iemand hier die weet hoe je performance statistieken uit istgt(onder FreeBSD) kan krijgen?
Zie boven; gewoon een benchmark starten en met gstat de disk load bekijken. Client-side benchmarks zoals CrystalDiskMark zou ook kunnen, maar dan zou ik één grote testrun doen ipv 5 met een veel hogere testsize. Helaas gaat CDM maar tot 4GB ofzo. Dus misschien is een groot bestand van lokale SSD naar iSCSI-netwerkvolume kopiëren wel een betere handmatige methode.
FireDrunk schreef op zaterdag 09 november 2013 @ 08:37:
ZFS' ZIL is een single queue synced operatie. Daarmee haal je dus nooit het maximale van je SSD. Je kan beter CrystalDiskMark benchmarks opzoeken, en kijken naar de rechterkolom, 3e vakje van boven, dat is 4K Random Write Q=1, dat zijn benchmarks die het dichtst tegen de daadwerkelijke snelheid van je ZIL aan gaan komen, maar verwacht in de praktijk nog minder.
Zeker nog minder. Want writes met qd=1 kunnen nog steeds gebuffered worden. Hardeschijven doen dit ook; random writes met qd=1 zijn om die reden sneller dan random reads met qd=1. SSDs doen dit door in één erase block een heleboek 4K/8K-writes te proppen, en dit remappen in de mapping tables. Hoppa, zo jas je die IOps er lekker doorheen!

Alleen dat trucje gaat dus niet op als je na elke write een FLUSH request (=sync) gaat sturen; dan moet de SSD ofwel gaan liegen en stiekem toch een hele batch wegschrijven (en dus per badge gaat 'syncen') ofwel de SSD doet wat het hoort te doen en doet een 4K-write met lagere performance/throughput/IOps ten gevolg. Ik verwacht dat Intel het laaste doet, terwijl Samsung wel eens met botte hamer kan omgaan met zoiets als FLUSH.

Dus als het een 'goede' SSD is zou ik zeggen dat je log write nog flink lager moet zijn dan wat je in die CrystalDiskMark benchmarks kunt zien. Nog even afgezien van het feit dat het vaker om 512 byte writes gaat dan 4K/8K.
syl765 schreef op zaterdag 09 november 2013 @ 20:48:
@CiPHER
Bedoel je de nieuwe camlock infrastructuur geschreven door Alexander Motin?
Als dat zo is, dan is dit niet beschikbaar in 10.0, maar word deze code pas gemerged na de release van 10.0.
Ehh, nee. Waar jij op doelt is een optimalisatie van de geom infrastructuur. Dit maakt het mogelijk IOps te schalen boven de 1 miljoen IOps - iets wat voorheen niet kon vanwege een bottleneck in de geom_up en geom_down modules. Nu er wordt bespaard op locks door een patch, is die bottleneck grotendeels weggenomen en kunnen IOps veel verder schalen.

Leuk leuk... maar als je een miljoen IOps wilt voor je NAS thuis, dan heb je echt geen leven. ;)

Waar ik op doel is de ouderwetse ATA en SCSI infrastructuur die veel operating systems hebben, met veel oude vieze code erin die nog heel erg legacy is. Zaken als UNMAP en TRIM en CFERASE ondersteunen gaat dan niet zo makkelijk. Maar ik geloof sinds 9.0 of 9.1 heeft FreeBSD ATA-on-CAM enabled en dat betekent dat ATA en SCSI onder één gemeenschappelijke toegangsmethode (CAM=Common Access Method). Dit maakt bijvoorbeeld TRIM-ondersteuning mogelijk zonder hackwerk, maar gewoon netjes via abstracte BIO_DELETE commando's die ZFS uitspuugt naar lagere GEOM modules stromen. Zoals ZFS->high availability->label->partitie->disk. Elke keer wordt de BIO_DELETE doorgegeven aan de volgende/lagere module in de GEOM-stack. Pas bij de disk driver wordt bepaald of het een ATA TRIM, SCSI UNMAP of CFERASE voor flashmedia wordt.

Dit soort dingen is FreeBSD goed in; ik ken ook geen OS met een storage infrastructuur wat kan tippen aan FreeBSD. Waar andere operating systems allemaal hardcoded hackwerk gebruiken, probeert FreeBSD dingen op de juiste manier te doen.

Dat heeft echter ook keerzijdes. Een tijd geleden nog wilde iemand een 'mooi' temp/voltage sensor monitoring framework in FreeBSD migreren, maar werd keihard afgewezen omdat het niet aan de kwaliteitseisen deed voor FreeBSD code. Ze wilden geen 'pile of junk' in hun sourcetree. Ohh ijdelheid. B-)

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
En dan apart nog even de discussie over ZFS met TLER
FireDrunk schreef op dinsdag 12 november 2013 @ 12:34:
YouTube: ZFS Performance Analysis and Tools

Ik zit even dit filmpje te kijken over DTrace icm ZFS, en daar roept die guru heel hard dat disks keihard tegen ZFS moeten zeggen dat er fouten zijn, wat dus duidelijk betekend: Gebruik TLER, want dan weet ZFS tenminste dat de disk iets verkeerd doet...
Volgende keer liever een index, hoef ik niet 40 minuten te kijken. ;)

Het probleem met veel van dit soort 'ZFS' talks is dat ze een Solaris-derived operating system veronderstellen. Ik heb vaak gezien dat Solaris-specifieke adviezen als algemene ZFS adviezen worden gegeven, terwijl de beperkingen niet gelden voor de ZFS-implementatie onder BSD. Ik heb het gevoel dat dit nu ook het geval is.
tvwes schreef op dinsdag 12 november 2013 @ 13:50:
De ellende door voortdurende retries is soms niet te overzien. Precies wat Firedrunk schreef, de disk moet domweg vertellen dat er iets is misgegaan en dan kan ZFS wat "self healing" gaan doen. Dat de fabrikanten om reden van doelgroep segmentatie TLER uit de desktop drives hebben gehaald is puur economisch. Vroeger zat het wel op de meeste drives. Dit wil nog niet zeggen dat een disk met TLER een enterprise disk is. Want die drives zijn echt anders gebouwd.
TLER heb je niet nodig als je een goede implementatie heeft. Het is aan de host om de disk te resetten als het vindt dat het te lang duurt. Het recovery-by-default is dus een goed design technisch bekeken.

Het probleem is waarschijnlijk, dat Solaris OS minder fraai omgaat met disk timeouts. FreeBSD gebruikt incremental timeouts met soft timeouts en dat werkt volgens mij best goed. De laatste keer dat ik hiermee testen deed was onder 8.0 of misschien wel eerder; dus er kan het e.e.a. veranderd zijn.

Maar de denkfout is in mijn ogen: de disk moet domweg vertellen dat er iets is misgegaan en dan kan ZFS wat "self healing" gaan doen. De disk praat niet direct met ZFS; daar zit het operating system tussen. Het OS bepaalt hoe er wordt omgegaan met disk timeouts. Het OS kan er voor kiezen om zelf alles te gaan retry-en en ZFS doodleuk minuten te langen 'hangen' op de dataaanvraag; die staat dan gewoon op pauze zeg maar.

Als dit van toepassing is op Solaris, dan is dat de zoveelste bevestiging dat ik het juiste OS heb gekozen (FreeBSD) voor gebruik met ZFS. Solaris is oud. En ja er zijn een aantal initiatieven en forks en derivatives die nog wat leven in de 'OpenSolaris' community brengen. Maar de onderliggende tekortkomingen van Solaris worden daarmee niet weggenomen. En een OS op de been houden alleen of hoofdzakelijk voor ZFS is denk ik een aflopende zaak; vroeg of laat gaan de knappe koppen iets anders doen en vervalt het zaakje. Volgens mij is dat een redelijke doch ietwat pessimistische blik op wat er gaande is met OpenSolaris (jaja.. IllumOS, OpenIndiana, Illumian, SmartOS, OmniOS, Dyson en nog wat meuk). De fragmentatie zegt genoeg eigenlijk.

En hacked ZFS binaries gebruiken om de ashift goed te krijgen omdat het operating system geen fatsoenlijke sectorsize ondersteuning heeft; tja.. Dan gaat de verotte architectuur zich tonen en dat patch je dan met een binary. Oke er is nu een command line ashift parameter. Maar dat is een hackerige workaround; het OS moet goed kunnen omgaan met sectorsizes.

Dat gezegd, het is niet alsof ik Solaris liever in de grond verdwenen zie. Het is immers waar ZFS vandaan kwam. Alleen heb ik wel moeite als Solaris-specifieke dingen als algemene ZFS waarheden worden gepresenteerd. Is dat met de TLER discussie het geval? Laten we het daar over hebben. :)

Oh en tvwes, ik heb soms een afwijkende danwel pikante mening over dingen. Zo heb ik niet zo'n hoge dunk van Solaris zoals je vast hebt begrepen. Maar probeer dat los te zien van jezelf. Ik juich het juist toe dat je je begeeft in het wespennest - want hier wordt veelal ZFS op BSD gebruikt. Ook Linux wel, Solaris weer een stuk minder. Maar mijn punt is dat meer diverse meningen en invloeden juist goed zijn. En discussies over de noodzaak voor TLER evenzeer.
FireDrunk schreef op dinsdag 12 november 2013 @ 14:01:
Inderdaad, er was hier recentelijk een discussie over TLER, en het is in mijn ogen zo dat we dus beter onze adviezen aan kunnen passen om dus juist bijvoorbeeld WD Red schijven te adviseren ipv Green's
Voordat er zo'n 180-graden gedraaid advies uit zou rollen, zouden we toch eerst meer duidelijkheid moeten krijgen of wat die knakker in dat youtube-filmpje roept ook allemaal van klopt. In het bijzonder, of het ook van toepassing is op FreeBSD operating systems. Want dat waag ik dus te betwijfelen. En als dat klopt, dan hoeven we het advies helemaal niet aan te passen en is het uitschakelen van TLER nog steeds de juiste keuze voor een thuis NAS waarbij een korte service interruption ondergeschikt is aan het intact houden van je data bij verlies van redundancy.

Wellicht kunnen we zelf een test draaien. Enige wat we nodig hebben is een disk met Current Pending Sectors nadat er een ZFS pool op staat, en er ook geen redundancy aanwezig is. Althans, dat zou je moeten testen, wel redundancy (soft timeout->weinig problemen) - geen redundancy (hard timeout - kans op recovery). Dat is althans wat je zou moeten zien. Als dat klopt, dan kun je nog steeds beter TLER disablen. Tenzij je misschien voor Solaris platform kiest, de test kan ook op Solaris en Linux platforms getest worden stel ik zo voor.

Het probleem is alleen dat je een disk niet zomaar onleesbare sectoren kunt laten maken nadat je die plekken door ZFS hebt laten beschrijven. Je hebt dus niets aan een disk die nu een paar pending sectors hebben; die worden door ZFS gelijk overschreven en gefixed dus dat werkt niet voor deze test. De pending sectors moeten er komen nadat je een ZFS pool hebt. Liefst helemaal gevuld met data dat maakt de kans het grootste dat een bad sector ook 'gevoeld' wordt door ZFS. Als de bad sector zich bevindt in metadata dan is ook bij een enkele disk zonder redundancy nog een ditto block kopie. Hierdoor worden deze bad sectors ook gefixed, alleen user data kan ZFS niet eerder ingrijpen. Bij dat laatste geval wil je dus juist de 120 seconden wachten en is je disk de laatste defensielinie. In andere situaties wil je juist dat de (soft) timeout zo kort mogelijk duurt, zodat ZFS het snelst zijn redundancy kan raadplegen. TLER doet het laatste nog prima (al is 7 seconden nog erg lang) maar sloopt daarmee ook de 120seconden recovery time wanneer je hem nodig hebt. Ik ben daar geen voorstander van. Als je OS/controller/RAID-engine TLER nodig heeft, is dat een zwakte. TLER is een hack.

Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Tja, wat is een hack? I denk dat het een ontwerpkeuze is geweest van de diskfabrikanten destijds omdat het OS/drivers geen timeouts ondersteunen.
Wat is dan erger, misschien een sector kwijtraken of je hele systeem laten hangen? Verder gaat het alleen maar fout bij sectors die na 7 seconden nog steeds niet goed gelezen worden maar binnen 120 seconden wel. Ik verwacht een e-curve voor de leeskans in de tijd, dus hoeveel % van de sectoren kan je dan uiteindelijk zonder TLER wel lezen?
En denk je dat de fabrikanten de TLER timeout hier niet op hebben afgestemd?

Blijkbaar is data integriteit nooit zo'n punt geweest want BRTFS en ZFS beginnen nu pas populair te worden.
En vergeet niet dat het eigenlijk nooit een probleem is geweest maar een feature. Je kon tot voor kort TLER nog gewoon aan en uitzetten op elke disk. Blame WD en Seagate voor dit probleem omdat ze geld belangrijker vinden dan je data.

Ik zou wel willen weten hoe Linux hier mee omgaat.
Dus, hoe maak je bad sectors op een disk zonder hem finaal kapot te maken?
Dat ding is een kooi van Farraday dus daarmee valt een hoop af.

[ Voor 21% gewijzigd door Durandal op 13-11-2013 10:06 ]


Acties:
  • 0 Henk 'm!

  • duramen
  • Registratie: Maart 2006
  • Laatst online: 02-10 10:54
Een paar vragen.

Ik wil mijn huidige windows thuis server migreren naar een ZFS systeem. (snapshot, betere robustness, eenvoudiger te beheren grote storage pool)
Opslag zal bestaan uit 6 2TB schijven. 12GByte geheugen, AMD 3 core 64 bit processor.
Ik gebruik een backup systeem op een andere locatie voor het geval van bliksem, brand, diefstal etc.


De server draait 24/7 en zal naast cifs/samba en iscsi (file en backup server voor een aantal windows 7 systemen) ook 2 kleine VM's moeten draaien met windows/linux (home automation en kleine web server)

De eerste lastige keuze is:
1: type 1 hypervisor (ESXi) en dan alles in VM's
2: File server native en dan KVM/Virtualbox VM's voor het kleine spul.

Optie 1 lijkt erg leuk maar heeft problemen.
De raw disk access via een vmkfstools -z geeft om onduidelijke reden een disk met 0 GB, vmkfstools -r werkt wel maar dan is de SMART data niet meer beschikbaar.
Als je een zvol aan een VM wil geven via iscsi dan moet je de VM's in de goede volgorde starten. Je kunt niet kleine VM's direct raw de zvol's laten benaderen omdat esxi ze verwijderd na reboot omdat dan de file server nog niet gestart is.
ESXi werkt het mooiste met een aparte file en vm machine.

Optie 2 is voor mij eenvoudiger.

De tweede moeilijke keuze is de zfs OS.
1: Solaris varianten. Ik heb OmniOS, Napp-it met Omnio, openindiana, nexenta en solaris geprobeerd.
2: Freebsd varianten: Ik heb Freenas en NAS4free geprobeerd.
3: ZFS on Linux: ik heb debian en ubuntu geprobeerd.

De solaris varianten draaien prima maar hebben voor mij een erg steile leer curve. System administration op een kaal solaris systeem kost me veel leer tijd, nexenta is erg eenvoudig maar gesloten dus ik zie niet hou ik de VM's kan draaien. SmartOS zou alles moeten kunnen wat ik wil maar is voor mij helemaal lastig om te leren.

De freebsd varianten werken prima maar USB doorgeven naar de virtuele machine in Virtualbox werkt niet voor USB2.0 (nodig voor de home automation)
Het lukt me ook niet om FreeBSD onder ESXi snel te laten werken. Max write speed via Gigabit Ethernet vanaf een win7 client is 35MByte/s, max read speed is 60MByte/s terwijl alle andere oplossing de GB link makkelijk vol trekken.

Ik ben nu Debian met ZoL aan het proberen. Alles lijkt te werken, snel, eenvoudig via cli te administreren. Alle sw beschikbaar. Zeer eenvoudig om Virtualbox er op te laten draaien
bonnie++ benchmarks draaien zoals verwacht met volle single disk write speed en zeer hoge read speed.

Eerste vraag: Is er een reden waarom Debian met ZoL NIET gebruikt zou moeten worden?

Dan wat betreft de disk setup.
Max lees/schrijf snelheid word beperkt door GBit ethernet dus raidz2 met 6 schijven lijkt een goede keus.

Tweede vraag: Is er een reden om naar 2 keer raidz1 met 3 schijven te gaan i.p.v. raidz2 met 6 schijven?

Voor boot van het system zijn er 2 varianten.
1: 256MB SSD (had ik nog liggen) met een kleine boot partitie, rest als LARC bruikbaar. Heb geen supercap SSD dus geen ZIL
2: partitioneer de 2TB schijven allemaal identiek met een 10GByte boot partitie en de rest voor ZFS (wel 4k alignment van de ZFS partitie goed doen), Zet de 10GByte partities in RAID1, boot van RAID1, SSD alleen voor LARC.

Optie 2 heeft de mogelijkheid om debian van een RAID1 met 1 spare te booten. Kan netjes disks er uit trekken en het systeem boot nog steeds. 3 schijven voor RAID1 boot+spare en 3 schijven voor swap indien nodig.
Een mogelijk nadeel is dat het geheel wat trager word door het mengen van systeem en file server access.

Vraag 3; Zijn er nog andere redenen waarom ik niet de RAID1 boot partities zal gebruiken?

Acties:
  • 0 Henk 'm!

  • syl765
  • Registratie: Juni 2004
  • Laatst online: 12-09 14:47
@CiPHER

Het SAN dat wij gebruiken bestaat uit een 16 bay supermicro server. Om presies te zijn deze
http://www.twp.nl/server-TWPSS1204886890
Hierin zit een LSI 9211-8i HBA in IT modus, firmware versie 13.xx
De bays zijn gevult met 12 15k 300GB sas schijven van Seagate in een mirror config.
Het OS is FreeBSD 9.0

Nu liep alles prima toen op een ochtend de telefoon ging dat men niet kon inloggen.
Ik via ssh op het SAN gekeken, en zag dat zfs hing.
In het console via IPMI was te zien dat da5 niet lekker zijn ding deed.
Allerlei timeouts en dat bleef maar scrollen.
De schijf er uit, getest en er leek in eerste instantie helemaal niets mis mee.
Tegen beter weten in deze terug geplaatst en na een week presies hetzelfde, gelukkig vlak voor ik naar huis zou gaan, dus mooi even de tijd om te kijken of FreeBSD hem zelf zou verwijderen.
Na twee uur toch maar zelf verwijdert, disk vervangen en geen probelemen meer.
Later de firmware geupdate van de LSI kaart

De machine bleef hier wel op hangen, dus het verhaal dat FreeBSD hier beter mee om gaat valt te betwijfelen.
Er zijn op de mailings list meer van dit soort zaken te vinden.
Volgens mij word wel gewerkt aan een dead disk detection.

Ik werk nu sinds 4.2 met FreeBSD, en heb nog nooit getwijfelt aan FreeBSD maar een heilige graal is het nu ook weer niet.

Wat ik echt mis binnen FreeBSD is het feit dat het heel lastig is het fault ledje voor een dode disk te laten branden. Op de sas expander van Supermicro zitten mooie rode ledjes, maar het is een drama deze te koppelen aan een disk, en als je het dan werkend hebt, dan moet er geen disk meer bijkomen want dan is alles weer verschoven.
Een tweede gemis is nog steeds de niet al te beste score van samba op een FreeBSD bak.
Het is mij nog nooit gelukt met samba om een 1Gbit lijn dicht te trekken.
En ik heb onderhand heel wat getweakt en gedaan maar het lijkt bijna hopeloos.
Installeer ik een Linux machine met samba of een Windows machine, dan lurk ik gelijk een bestand op volle 1 Gbit snelheid naar binnen.
Dat zijn zaken waar FreeBSD zich wat meer op zou kunnen focussen.
Opslag servers is wat we de aankomende jaren nodig hebben en FreeBSD zou daar een hele mooie rol in kunnen spelen. Maar ik denk niet dat een beheerder dagen lang wil lopen tweaken om een knappe snelheid met samba te krijgen.

Een gemiste kans !

gr
Johan

Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
duramen schreef op woensdag 13 november 2013 @ 10:10:
Een paar vragen.

Ik wil mijn huidige windows thuis server migreren naar een ZFS systeem. (snapshot, betere robustness, eenvoudiger te beheren grote storage pool)

Eerste vraag: Is er een reden waarom Debian met ZoL NIET gebruikt zou moeten worden?

Tweede vraag: Is er een reden om naar 2 keer raidz1 met 3 schijven te gaan i.p.v. raidz2 met 6 schijven?

Vraag 3; Zijn er nog andere redenen waarom ik niet de RAID1 boot partities zal gebruiken?
1) Niet voor mij. Er wordt wel gesuggereerd dat ZoL niet zo volwassen is als de BSD versie omdat de laatste zich langer bewezen heeft, maar dat is een argument dat je nooit kan winnen. Je moet je afvragen waar de grens ligt en wanneer iets bewezen stabiel is. Voor mij draait het een jaar zeer stabiel onder Ubuntu.

2) Ja, kansberekening.
Aannemende dat je met 2x(2+1) 2 vdevs in 1 pool bedoelt (optie 2) vs 1x(4+2) (optie 1).
Aannemende dat de faalkans per disk 10% per jaar is.
Aannemende dat je de disks gedurende het jaar NIET vervangt na falen. Dit is tricky want je gaat natuurlijk een alarmeringssysteem gebruiken. Desalniettemin kan de boel tegelijkertijd falen. Vraag is dan of de oorzaak dan nog willekeurig genoeg is dat die aanname van 10% per jaar nog valide is. Anyway..
optie 1: array faalt als 3 disks falen
P ok = 0.9x0.9.x0.9 = 0.729
P faal = 1 - P ok = 0.271
array faal kans is 27% (dus bij niet vervangen disks)
optie 2: array faalt als 2 disks van vdev A faalen, OF als 2 disks van cdev B falen
P ok-vdev-A/B = 0.9x0.9 = 0.81
P faal-vdev-A/B = 0.19
P faal-vdev-A-OF-B = 0.19+0.19 = 0.38
array faal kans is 38%
2 vdevs is dus minder veilig dan alles in 1 vdev

3) ik zou gaan voor je OS op je SSD en de data-disks ZFS only houden. Dan heb je ook geen ingewikkelde dingen waar je rekening mee moet houden als je een disk moet vervangen.
Van je OS kan je een backup maken en mee nemen met je automatische backups.
Je kan ook van een LIveCD starten om bij je data te komen. OS kan je opnieuw installeren maar je data is te belangrijk om risikos te nemen

[ Voor 15% gewijzigd door Durandal op 13-11-2013 10:51 ]


Acties:
  • 0 Henk 'm!

  • Kortfragje
  • Registratie: December 2000
  • Laatst online: 04-10 17:36

Kortfragje

......

duramen schreef op woensdag 13 november 2013 @ 10:10:
Een paar vragen.

Ik wil mijn huidige windows thuis server migreren naar een ZFS systeem. (snapshot, betere robustness, eenvoudiger te beheren grote storage pool)
Opslag zal bestaan uit 6 2TB schijven. 12GByte geheugen, AMD 3 core 64 bit processor.
Ik gebruik een backup systeem op een andere locatie voor het geval van bliksem, brand, diefstal etc.


De server draait 24/7 en zal naast cifs/samba en iscsi (file en backup server voor een aantal windows 7 systemen) ook 2 kleine VM's moeten draaien met windows/linux (home automation en kleine web server)

De eerste lastige keuze is:
1: type 1 hypervisor (ESXi) en dan alles in VM's
2: File server native en dan KVM/Virtualbox VM's voor het kleine spul.
Ik had exact dezelfde vragen en ook mijn hardware is vergelijkbaar. Ik heb zelf voor Linux (ubuntu 12.04.3 / debian) gekozen ivm flexibiliteit en community. ZoL voldoet prima voor mij. Ik heb (daar een x3 het ondersteunt ) ook voor ecc ram gekozen.

Het opzetten van de server (inc gevirtualiseerde firewall) heb ik beschreven op mijn blog (inclusief kleine probleempjes waar ik tegen aanliep).
Deel 1 (opzet server + virtuele firewall)
http://blog.gjpvanwesten....-server-with-zfs-and.html
Deel 2 (opzet ZFS)
http://blog.gjpvanwesten....e-server-zfs-virtual.html
Deel 3 (opzet harware monitoring en rapporten per email)
--> zodra ik tijd heb.. :X


Specs:
Ubuntu 12.04.03 LTS
ZFS on Linux (6 disk RAIDZ2 , double parity)
Virtual firewall (IpFire) running through Virtualbox
DHCP / DNS / samba file sharing
LAN runs in the 192.168.10.xxx range.

Running on:
Athlon II X3
16 GB ECC RAM
3 Ethernet adapters (2 for the firewall and 1 for the host OS)
6 WD 2 TB disks (mix of Green and Red)
500 GB bootdrive (2.5 " WD / had ik nog liggen)

http://www.gjpvanwesten.nl


Acties:
  • 0 Henk 'm!

  • analog_
  • Registratie: Januari 2004
  • Niet online
syl765 schreef op woensdag 13 november 2013 @ 10:43:
@CiPHER

Het SAN dat wij gebruiken bestaat uit een 16 bay supermicro server. Om presies te zijn deze
http://www.twp.nl/server-TWPSS1204886890
Hierin zit een LSI 9211-8i HBA in IT modus, firmware versie 13.xx
De bays zijn gevult met 12 15k 300GB sas schijven van Seagate in een mirror config.
Het OS is FreeBSD 9.0

Nu liep alles prima toen op een ochtend de telefoon ging dat men niet kon inloggen.
Ik via ssh op het SAN gekeken, en zag dat zfs hing.
In het console via IPMI was te zien dat da5 niet lekker zijn ding deed.
Allerlei timeouts en dat bleef maar scrollen.
De schijf er uit, getest en er leek in eerste instantie helemaal niets mis mee.
Tegen beter weten in deze terug geplaatst en na een week presies hetzelfde, gelukkig vlak voor ik naar huis zou gaan, dus mooi even de tijd om te kijken of FreeBSD hem zelf zou verwijderen.
Na twee uur toch maar zelf verwijdert, disk vervangen en geen probelemen meer.
Later de firmware geupdate van de LSI kaart

De machine bleef hier wel op hangen, dus het verhaal dat FreeBSD hier beter mee om gaat valt te betwijfelen.
Er zijn op de mailings list meer van dit soort zaken te vinden.
Volgens mij word wel gewerkt aan een dead disk detection.

Ik werk nu sinds 4.2 met FreeBSD, en heb nog nooit getwijfelt aan FreeBSD maar een heilige graal is het nu ook weer niet.

Wat ik echt mis binnen FreeBSD is het feit dat het heel lastig is het fault ledje voor een dode disk te laten branden. Op de sas expander van Supermicro zitten mooie rode ledjes, maar het is een drama deze te koppelen aan een disk, en als je het dan werkend hebt, dan moet er geen disk meer bijkomen want dan is alles weer verschoven.
Een tweede gemis is nog steeds de niet al te beste score van samba op een FreeBSD bak.
Het is mij nog nooit gelukt met samba om een 1Gbit lijn dicht te trekken.
En ik heb onderhand heel wat getweakt en gedaan maar het lijkt bijna hopeloos.
Installeer ik een Linux machine met samba of een Windows machine, dan lurk ik gelijk een bestand op volle 1 Gbit snelheid naar binnen.
Dat zijn zaken waar FreeBSD zich wat meer op zou kunnen focussen.
Opslag servers is wat we de aankomende jaren nodig hebben en FreeBSD zou daar een hele mooie rol in kunnen spelen. Maar ik denk niet dat een beheerder dagen lang wil lopen tweaken om een knappe snelheid met samba te krijgen.

Een gemiste kans !

gr
Johan
Probeer NexentaStor eens, je hardware is zelfs certified volgens die site.

Acties:
  • 0 Henk 'm!

  • idef1x
  • Registratie: Januari 2004
  • Laatst online: 10-10 12:40
Durandal schreef op woensdag 13 november 2013 @ 10:45:
[...]

3) ik zou gaan voor je OS op je SSD en de data-disks ZFS only houden. Dan heb je ook geen ingewikkelde dingen waar je rekening mee moet houden als je een disk moet vervangen.
Van je OS kan je een backup maken en mee nemen met je automatische backups.
Je kan ook van een LIveCD starten om bij je data te komen. OS kan je opnieuw installeren maar je data is te belangrijk om risikos te nemen
Ik zit een beetje met hetzelfde te dubben eigenlijk. Ja je OS kun je weer opnieuw installeren, maar een redundant OS op RAID1 lijkt me dan eigenlijk best handig. Ik kan niet echt vinden waarom een ZFS only disk beter is dan een boot partitie waar het gehele OS op staat op RAID1 en een partie voor ZFS?

Ik wil best in uiterst geval (liever niet) een USB boot diskje maken ofzo (zoals FreeNas), maar dan moet het wel opwegen tegen de voordelen van ZFS only disk

edit: En nu ik toch aan het vragen stellen ben: hoe non optimaal is het om met 4x 2TB schijven in RAIDZ1 te draaien? Voor zover ik het begrijp is dit meer performance technisch dan diskspace beschikbaarheid?

[ Voor 9% gewijzigd door idef1x op 13-11-2013 15:17 . Reden: toevoeging ]


Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Ik heb ook mijn OS op raid 1, maar ik had 2 disks over, dus dan wordt het iets makkelijker. Ik weet of er iets op tegen is om partities te gebruiken op je ZFS disks (misschien interoperabiliteit) maar ik weet wel dat ik geen gehannes wil hebben met partities aanmaken als ik een ZFS disk moet vervangen.
Ik wil gewoon nieuwe disk er bij, replace commando, kapotte disk er uit.

Je kan je OS overigens ook backuppen en indien nodig restoren. Ik gebruik mondo rescue en die maakt recovery CD images van je OS, automatisch via cron, en die boot ik dan van van m'n Zalman virtual CD drive.

Vwb suboptimaal aantal disks; daar was een paar weken geleden nog iets over in dit forum. Uit mijn hoofd: behalve prestatieverlies raak je ook nog extra ruimte kwijt, vooral bij 4k sectors.

Acties:
  • 0 Henk 'm!

  • Extera
  • Registratie: Augustus 2004
  • Laatst online: 05-05 16:02
Zojuist 2 oude 4Gb Fibrechannel kaartjes gevonden op m'n werk.
Ik ga eens kijken of ik een SAN op kan zetten met een 1:1 FC verbinding naar mijn ESXi bak.

Voor zover ik kan vinden zijn Openindiana en Nexentastor de enige distro's welke FC target ondersteunen.

Leuk om mee te spelen, en als het werkt schaf ik wellicht 2 8Gb kaartjes aan.

Mijn Serverrack - iRacing Profiel


Acties:
  • 0 Henk 'm!

  • Kortfragje
  • Registratie: December 2000
  • Laatst online: 04-10 17:36

Kortfragje

......

Waarom volledige disks te gebruiken, zie ook de ZFS best practices guide (http://www.solarisinterna...tices_Guide#Storage_Pools)

For production systems, use whole disks rather than slices for storage pools for the following reasons:
  • Allows ZFS to enable the disk's write cache for those disks that have write caches. If you are using a RAID array with a non-volatile write cache, then this is less of an issue and slices as vdevs should still gain the benefit of the array's write cache.
  • For JBOD attached storage, having an enabled disk cache, allows some synchronous writes to be issued as multiple disk writes followed by a single cache flush allowing the disk controller to optimize I/O scheduling.
  • Separately, for systems that lacks proper support for SATA NCQ or SCSI TCQ, having an enabled write cache allows the host to issue single I/O operation asynchronously from physical I/O.
  • The recovery process of replacing a failed disk is more complex when disks contain both ZFS and UFS file systems on slices.
  • ZFS pools (and underlying disks) that also contain UFS file systems on slices cannot be easily migrated to other systems by using zpool import and export features.
  • In general, maintaining slices increases administration time and cost. Lower your administration costs by simplifying your storage pool configuration model.

http://www.gjpvanwesten.nl


Acties:
  • 0 Henk 'm!
1) Onder FreeBSD heb je (vanwege GEOM) gewoon disk write cache (inc flushes) op partities, dus dat is geen issue.
2) zie boven
3) NCQ werkt gewoon op partities
4) Correct, maar als je goed labelt met GPT labels maakt het niets meer uit, of je nou ada0 / ada1 hebt, of gpt/disk0, gpt/disk1
5) Onzin als je BSD / Linux gebruikt, je kan zfs pools die op GPT labels gebaseerd zijn gewoon verhuizen (zelf getest).
6) Tuurlijk kost het *iets* meer moeite, maar je krijgt er ook wat voor terug... En je kan in theorie alles automatiseren... En op de manier waarop bijvoorbeeld ZFSguru het doet (via een webinterface) is het zelfs makkelijker dan veel andere oplossingen...

Even niets...


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Die argumenten tellen alleen voor Solaris OS; niet voor ZFS onder FreeBSD. FreeBSD heeft een veel moderner storage framework. Partities gebruiken met write cache is geen enkel probleem; dat doen andere OS al decennia.

Verder, als je ook UFS partities hebt moet je bij het 'vervangen' daar ook rekening mee houden. Niet dat je UFS wilt, maar dat lijkt me duidelijk. Zonder redundancy ben je die gegevens dan ook gewoon kwijt.

Verder, gestegen kosten en meer tijd kwijt door het gebruiken van partities? Ik zou zeggen andersom; dat disk6 gefaald is lijkt me makkelijker dan /dev/c0d0s0f1zd09849. Oke ik overdrijf, maar je begrijpt mijn punt. ;)

Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@CiPHER

Goedemorgen,
fijn dat je even lekker alles van af hebt kunnen schrijven. Ik doe het dat nu ook even. Het is een goede zaak dat je een eigen mening hebt en dat je opkomt voor je misschien wel afwijkende mening. Waar mensen afwijkende meningen hebben ontstaat een discusie. Professionals voeren zo'n discussie op basis van feiten en respectvol. Waar ik echt niet tegen kan is iemand met een geweldige staat van dienst als "knakker" aan duiden. Het is respectloos en getuigd van de nodige zelfoverschatting. Als jij net zo'n sympatieke "knakker" bent en een paar boeken, gewild trainer, super blog en baan hebt, biedt ik bij deze mijn excuses aan. Een pikante mening prima maar dan met feiten, het liefst met een verwijzing naar code, maar niet dit soort kwalificaties gebruiken. Totdat iemand hier enkele tientallen ZFS commits op z'n naam heeft staan denk ik we allemaal een beetje voorzichtiger met de uitspraken moeten aangaande kennis van ZFS, mijzelf inbegrepen.

Ik zou het op prijs stellen als we het topic niet gaan vervuilen met (onjuiste) reclame voor OS's. Er is helemaal niks mis met de meeste OS's, en al helemaal niet met de BSD familie waar FreeBSD en Solaris en afgeleiden toe behoren. Ik ben een groot voorstander van het juiste gereedschap voor de klus. Soms is dat illumos en soms is dat FreeBSD. FreeBSD is nog steeds enorm schatplichtig aan illumos. Heel veel patches komen van illumos ontwikkelaars waaronder DTrace en ZFS.
Laat onverlet dat FreeBSD ook allerlei prachtige ontwikkelingen heeft, zoals GEOM maar ook een research project als VALE. Ja, ik volg FreeBSD best goed.
Jouw zeer beperkte kennis van het Solaris en afgeleiden landschap is mij inmiddels wel duidelijk.
Als dit van toepassing is op Solaris, dan is dat de zoveelste bevestiging dat ik het juiste OS heb gekozen (FreeBSD) voor gebruik met ZFS. Solaris is oud. En ja er zijn een aantal initiatieven en forks en derivatives die nog wat leven in de 'OpenSolaris' community brengen. Maar de onderliggende tekortkomingen van Solaris worden daarmee niet weggenomen. En een OS op de been houden alleen of hoofdzakelijk voor ZFS is denk ik een aflopende zaak; vroeg of laat gaan de knappe koppen iets anders doen en vervalt het zaakje. Volgens mij is dat een redelijke doch ietwat pessimistische blik op wat er gaande is met OpenSolaris (jaja.. IllumOS, OpenIndiana, Illumian, SmartOS, OmniOS, Dyson en nog wat meuk). De fragmentatie zegt genoeg eigenlijk.
Er zijn ook bedrijven die SDN (switches en stacks) op basis van illumos maken vanwege de hele goede netwerk stack. Dan komen er zijn nog wat initiatieven die in stealth zijn die ook op basis van illumos. Heel knap dat jij weet wat die knappe koppen zometeen gaan doen. Al deze bedrijven hebben miljoenen per bedrijf hierin gestoken, denk je dat ze dat zomaar afboeken?

Terug naar ZFS.
Ik weet niet wat je bedoelt met die ashift rant. Maar illumos, het zat al in opensolaris volgens mij, kan probleemloos omgaan met disken met afwijkende sector sizes. Dat drives rotte firmware hebben en dat sommige gebruikers geen geld over hebben voor goede drives wil niet zeggen dat er iets mis is met ZFS of een implementatie op een bepaald OS. Een gepatchte zpool of de linux zpool met de create optie voor ashift is pas een hack. Of dat je dat via GEOM gaat regelen. (Ik vind het een fantastische feature van GEOM overigens, maar alleen voor test of research)

Nu TLER. Misschien moeten we eerst vaststellen hoe en door wie de in de zpool opgeslagen data wordt gebruikt? Heel veel hangt daarvan af. Op het moment dat er na de zpool nog een hele keten als bijv netwerk -> hypervisor -> virtual disk -> os is het een ander verhaal dan een desktop met een user. Op zich kan ZFS een uur wachten tot de read succesvol is. Alleen zullen de meeste andere componenten dat niet leuk vinden. Deze nuance wordt volgens mij wel eens vergeten in het verhaal. ZFS probeert een constant niveau van service aan te bieden aan de afnemers. Deze afnemers zijn, vanuit het perspectief van de ZFS ontwikkelaars destijds, allemaal toepassingen die niet houden van 120 sec timeouts. Stel je maar eens voor heb je een ZFS gebaseerde storage oplossing die 1 miljoen iops kan leveren. "sorry de komende twee minuten even niet, een disk is even aan het retryen" Het is ook niet zo dat als je de data nu niet kan lezen dat je het de volgende keer weer niet kan lezen.
Tweede belangrijke punt om niet te vergeten is dat ZFS niet is gemaakt voor 1 disk toepassing. Het kan maar dat is nooit de bedoeling geweest. Misschien dat met 1 disk in je zpool TLER uitzetten een goed optie is en dat beter af bent met een desktop drive.
Maar zelfs hier heeft bijna niemand zo'n zpool. De meeste mensen hebben meerdere disken en gebruiken de host met ZFS als NAS. Voor diegene die hun ZFS NAS gebruiken als fileserver, via SMB, AFP of NFS. Het hangt van de client af (OS + applicatie) of die het leuk vinden om 2 minuten te moeten wachten op een antwoord. Ik weet niet of het uberhaubt kan, wel weet ik dat mijn klanten dat niet zouden accepteren. Een paar seconden een hik maar niet een minuut. Het zou kunnen dat het voor sommige werkt en acceptabel is, prima geen TLER nodig.
Voor diegene die hun ZFS NAS gebruiken met clients (bijv esxi) die wel verwachtingen hebben over de tijd waar binnen io's worden afgehandeld denk ik dat TLER wel toegevoegde waarde heeft. Jouw 120 seconden timeout betekent in de praktijk dat de gehele io pipeline van die zpool vastzit. Ik haal niet uit je betoog waarom er perse moet 120 sec moet worden geprobeerd? Misschien kan je dat nog eens duidelijk uitleggen. Mijn kijk, en die van de ZFS ontwikkelaars, op een die read niet lukt, snel opgeven, data ergens anders lezen en doorgaan. Deze strategy leidt er niet toe dat drives bij het minste of geringste als "faulty" worden gemarkeerd. Een timeout op een TLER enabled drive leidt er niet toe dat de drive direct als faulty wordt aangemerkt. Bijv in illumos is het FMA wat bepaalt of de drive offline wordt genomen of niet. Ik meen me te herinneren 2 of 3 fouten binnen tien minuten voor dat de drive offline wordt genomen. Misschien dat er er nog een reset wordt gedaan en als het dan nog een keer misgaat wordt de drive offline genomen, maar ik ken die code minder goed want het is geen beslissing van ZFS.
De disk praat niet direct met ZFS; daar zit het operating system tussen. Het OS bepaalt hoe er wordt omgegaan met disk timeouts. Het OS kan er voor kiezen om zelf alles te gaan retry-en en ZFS doodleuk minuten te langen 'hangen' op de dataaanvraag; die staat dan gewoon op pauze zeg maar.
ZFS is in-kernel en maakt daarmee onderdeel uit van het OS. Niet het OS bepaalt hoe er wordt omgegaan met disktimeouts wat eigenlijk io timeouts zijn. Hele specieke modules en drivers van het OS bepalen dat. Sommige modules en drivers bieden tuneables aan om timeout's en retries te regelen.
Misschien is het ook een goed idee om even in de code te kijken. Als ZFS een fout tegenkomt zal het een ereport posten via zfs_ereport_post in zfs_fm.c Het is aan de FMA om te bepalen wat de gevolgen zijn. ZFS neemt niet zelf een disk offline. ZFS krijgt opdracht om de disk offline te nemen. ZFS zelf heeft geen IO timeouts, en ook geen retries. De enigzins gerelateerde timer is de zfs_deadman_* timer. Die ervoor waakt dat de hba gaan io's kwijt raakt. Als dat gebeurt zou ZFS blijven hangen. Als de hba de io kwijt raakt komt er geen error terug en zou ZFS blijven hangen. Als de deadman timer zou elapsen krijg je standaard een panic. De afhandeling (oa timeouts) van fouten zit in SD(7) en de hba driver. En FreeBSD, lijkt het op het eerste gezichte hetzelfde te werken, read()->disk driver->XPT->SIM. Maar daar ken ik de code niet van. ZFS krijgt een EIO terug een bubbelt dat door naar boven. Indien er redundancy is zal er een poging worden ondernomen om de ontbrekende data ergens anders vandaan te halen. Zie bijv vdev_mirror_io_done () in vdev_mirror.c of vdev_raidz_io_done(zio_t *zio) in vdev_raidz.c

Samenvatting voor de eindgebruikers.
Ja, je kan drives gebruiken zonder TLER. Als je een zpool hebt met een enkele disk zonder copies=2 of meer kan je zelfs beter een disk nemen zonder TLER.
Nee, je kan beter drives gebruiken met TLER. (dit is een advies geen verplichting)
Als je afnemers (bijv ESXi) buiten je NAS hebt kunnen die een stall van 120 seconden of meer misschien niet leuk vinden. Nu kun je die wel gaan zitten tweaken en in ESXi en je guest OS's allemaal timeouts gaan ophogen maar dadelijk mis je wat en ben je de bok. De meeste OS's geven een panic bij een io timeout op hun root bijv. TLER helpt dat te voorkomen. Lees fout? Laat maar, ik haal de data ergens anders vandaan en klaar. Misschien was het een eenmalig fout en heb je 120 seconden verspild terwijl je het block zo ergens anders vandaan had kunnen halen. Iets anders, niet ZFS, bepaalt wanneer de disk faulty is. Iets anders is bijv in illumos FMA. Doe maar man fmstat of run het om de zfs engines te zien.

Ik vind je voorstel om hier wat mee te testen op zich een leuk idee. De uitdaging zal zijn om het betrouwbaar te maken. Wat je al schreef je kan niet zomaar bad sectors te voorschijn toveren. Daarnaast heb ik ik ook niet al te veel disken MET bad sectors liggen. Wat ik wel heb is die oude ten dode opgeschreven meuk namelijk illumos. Daarin zit een compleet fault injection framework om dit allemaal te testen op een gecontroleerde wijze.

Ik nodig een ieder uit om inhoudelijke, het liefste met code verwijzing, te reageren op het TLER gedeelte. Een pissing contest over wat het beste OS is kan in een ander topic gestart worden.

PS
@CiPHER
Sommige zaken was ik met je eens maar heb ik genuanceerd in bovenstaande post. Ik hoop dat je dat er in terug kan lezen.

Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
Omdat ik lekker opgewarmd ben wil ik nog even wat nieuwe datapunten aanreiken die de noodzaak van ECC aantonen. ECC is net als TLER niet verplicht. Alleen kan de hinder / ellende tgv bitflips wat groter zijn dan een fout tgv een io timeout. Nog even de vorige ECC post samenvaten: geen ECC hoeft niet te leiden tot datacorruptie. Maar kan wel leiden tot corruptie en instabiliteit. Ook code en kernel data kan getroffen worden.
Robert Stucke heeft op DefCon 21 een presentatie gegeven over bitsquatting. De oorzaak zijn bitflips. Buitengewoon goede presentatie. Die wederom aantoont dat bitflips geen zeldzame kans zijn maar een dermate frequent probleem dat een ieder met een 24/7 computer een reeele kans heeft om hinder te ondervinden. Ook het aanbrengen van ECC en pariteit ondersteuning in alle nieuwe server ethernet nics door intel wijst er op dat er wel degelijk een probleem.
De klassieke google paper kennen we hopelijk allemaal. De Tezzaron semi paper is nieuw voor mij. En geeft een samenvatting van BER van diverse componenten.

Het lastige van ECC is validatie van de werking ervan. Net als validatie van de afhandeling van diskfouten door ZFS lastig is met real hardware. Bitflips hebben diverse oorzaken maar praktisch zijn (over)temperatuur en (onder)voltage de meest voorkomende en meest toegankelijke. Ik heb zelf een poging ondernomen destijds met een dimbaar halogeen lampje en een tweede met wat electronica. Het lampje werkte op zich wel. De hitte zorgde op een gegeven moment voor fouten. Maar het ontaarde elke keer, het was of niets of meer dan een recoverable single bitflip. De elektronica bestond uit een korte puls op een datalijn. Maar dat kreeg ik niet goed in sync. Memtest en OS gaven het in ieder geval aan dat er iets mis was. Maar het OS deed elke keer een panic vanwege het grote aantal fouten. Memtest telt lekker door.
Het belang van validatie is belangrijk om je niet weet of alles (OS, bios en hardware) daadwerkelijk samenwerken en het gewenste doen bij detectie van ECC fouten. Zeker bij een AMD bordje.

Ik ben erg benieuwd of iemand hier op tweakers een test kan bedenken en uitvoeren die niet-destructief een gecontroleerde bitflip kan veroorzaken. Iemand werkzaam in de halfgeleider industrie?

Bronnen
YouTube: DEFCON 21 - DNS May Be Hazardous to Your Health - Robert Stucke
YouTube: Defcon 19: Artem Dinaburg - Bit-squatting: DNS Hijacking Without Exploitation
http://rot26.net/stucke.pdf de paper van defcon 21
http://www.tezzaron.com/a...oft_errors_1_1_secure.pdf
http://www.cs.utoronto.ca/~bianca/papers/sigmetrics09.pdf
http://www.servethehome.c...er-buffer-ecc-comparison/

Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Voor wat betreft het inserten van die bitflip denk ik aan wat electronica rond een latch maar het zal in ieder geval neerkomen op het modden van je Dimm.
Pootje op een geheugen IC lossolderen. XOR poortje er tussen en timing met een one-shot aan het kloksignaal hangen. Dus met zoiets.
Allemaal met niet te veel propagation delay.

Maar het moeilijke is de conrole. Wat vindt je gecontroleerd? Wil je de timing op een specifiek moment hebben? Dan wordt het moeilijk; je moet dan een trigger hebben en als je niet-destructief wilt dan moet je zeker zijn dat die trigger triggert op een niet kritiek moment; in een stuk io data dus.
Je komt dus niet weg met een drukknopje.

Ik zie nog steeds het nut niet zo overigens; Ja je data kan corrupt weggescheven worden, maar zoals al eerder is aangevoerd kan je data ook al corrupt worden aangeleverd door je clients die geen ECC hebben. Heb je 9 clients en een server dan lost je met ECC op je server maar 10% van het probleem op.
Ik zie ECC meer nut hebben bij de algehele stabiliteit van je systeem.

[ Voor 78% gewijzigd door Durandal op 13-11-2013 21:42 ]


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Durandal,
wat betreft alles buiten de box heb je helemaal gelijk. Ik heb dat weggelaten omdat het al eerder is genoemd door iemand. Vooral TCP is zwak, ethernet is sterker maar zelfs samen is corruptie prima mogelijk. Amazon is daardoor eens langdurig plat gegaan.

Ik heb geen toegang tot apparatuur die kan triggeren op een (adres)mask op de dimm. Daarmee zou je de fout kunnen injecteren op een specifiek moment. Je kan opdracht geven aan de kernel om een bepaald stuk (physiek) geheugen uit te lezen. Als jij op dat adres kan triggeren en een puls op een datalijn zet. Zou je denk ik een enkele bitflip moeten kunnen simuleren.
Ik had destijds iets in elkaar gebeund op basis van een LT1721 de puls was voldoende kort en had ook de juiste rise en fall time. De puls generator was via een stukje coax aangesloten op een datalijn. Geen mod alleen blanke kern tegen het kontakt houden. De puls generator kon via een button een enkele puls vuren.

Voor mij is gecontroleerd in deze, 1 enkele bitflip. Die zou gedetecteerd EN gecorrigeerd moeten worden. Multibit is alleen detectie. Zonder de trigger op een adres is het lastig te bepalen wat en wanneer je iets aan het verpesten bent.

Nog even over je opmerking van de clients, hoe waar ook, een nuance. De ZFS NAS staat 24/7 aan je clients meestal niet. De ZFS NAS heeft op de lange termijn meer kans op een bitflip dan de clients die minder lang aanstaan. Echter de kans dat een bitflip aan de client zijde zal optreden is groter in jouw voorbeeld als je aanneemt dat de 9 clients kantoortijden maken. Maar vermoedelijk zal je meer hinder ondervinden van een NAS die plat gaat dan een van je clients. Gezien de geringe meerprijs denk ik dat het erg onverstandig is om geen ECC te nemen. Maar dan moet het wel bewezen werken. En dat kan ik niet.
Als iemand een beter plan heeft dan hoor ik dat graag.

  • Extera
  • Registratie: Augustus 2004
  • Laatst online: 05-05 16:02
Hmmz, ik begrijp er niets van...

Ik heb Nexentastor geinstalleerd (community versie).
Ik heb een 2tal guides gevonden om mijn FC HBA in Target mode te zetten (andere driver laden).

Echter, wanneer ik via SSH inlog, herkent de CLI geen van de commando's.

Het zal wel iets stoms zijn :) morgen verder.

Mijn Serverrack - iRacing Profiel


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Poeh, wat een posts vandaag.

Ik denk dat we er nog lang over kunnen discuseieren maar dat er uiteindelijk meerdere mening zijn en die hangen om 2 verschillende zaken:

1. Is ZFS net als een Hardware RAID controller afhankelijk van TLER voor het afhandelen van disk fouten
2. Is het acceptabel dat de disk de tijd krijgt om zijn uiterste best te doen om een blok nog proberen te lezen of moet dat zeer snel al getracht worden vanaf een andere disk zodat de productie niet gestoord word

Mijn mening over die zaken is niet zo ingewikkeld, maar, iedereen mag daar zijn eigen mening over hebben uiteraard.

ZFS is bewezen minder afhankelijk van TLER dan een Hardware RAID controller. Veelal heb je bij een hardware RAID controller last van 'false dropped disks' omdat de disk er te lang over doet om te reageren (Voor wat voor reden dan ook). Dit is al vele jaren een probleem en pas sinds de laatste jaren bekend en regelbaar, vandaar ook bijvoorbeeld de WD RED serie die deze 'Enterprise' feature nu ook op de consumenten markt mogelijk maakt (Althans, bewust aanwezig heeft, andere merken hebben ook disks die dit gewoon kunnen).

Maar, vervolgens kom je in de situatie dat alle IO's kunnen freezen zo lang 1 disk hier mee bezig is. Die is wat lastiger te beantwoorden aangezien er scenario's te bedenken zijn waarbij het niet uitmaakt, of juist waarbij het heel wel gewenst is. Als je een gezond array hebt en 1 disk kan eventjes een bepaald blokje niet lezen, prima, dat blokje kunnen we berekenen. Het probleem is echter dat de kans groot is dat dit gebeurt als bijvoorbeeld het array al degraded is en deze zijn RAID opnieuw aan het opbouwen is. Op dat moment, zeker bijvoorbeeld bij een RAIDz1 wil je juist heel graag dat de disk zijn uiterste best gaat doen om dat blokje te lezen aangezien je anders je complete array en dus je data kwijt bent.

Moet dit oneindig duren? Nee, dat nou ook weer niet, maar de disk moet wel genoeg tijd krijgen om dit voor elkaar te krijgen, 7 seconden is dan niet heel erg lang als je data er vanaf hangt.

Idealiter komt er een functionaliteit in het onderliggende host OS dat een reset stuurt naar de disk na enkele seconden. Deze zou dan vervolgens met ophogende timeout het enkele malen opnieuw moeten proberen en pas op het moment dat het echt niet gelezen kan worden trachten het blokje vanaf een andere disk te lezen en de disk droppen en deze als 'bad' aanmerkt. Op die manier weet je zeker dat je disk inderdaad een probleem heeft en kan het hopelijk opgevangen worden door een andere disk. De feature heet niet voor niets "Time Limited Error Recovery", er zijn echter situaties dat deze time liever wel gespendeerd word aangezien je anders tegen data verlies zit aan te kijken.

Ik verwacht ook dat CiPHER dat bedoelt met dat de onderliggende laag van FreeBSD een stuk moderner en robuster aan het worden is dan systemen die vasthouden aan de oudere varianten die inderdaad veelal in het tijdperk van het oude SCSI of zelfs MFM geschreven zijn. Dat is bijvoorbeeld ook 1 van de redenen waarom een PCIe SSD een stuk sneller met een lagere latency kan zijn dan een SAS/SATA SSD aangezien deze niet via de standaard storage laag aangesproken hoeven worden.

De ideale wereld is er dus naar mijn mening nog niet, maar als FreeBSD het grondwerk aan het herschrijven is om te trachten dit wel beter te maken tegenover hoe het traditioneel in elkaar zat, gecombineerd met "Domme" HBA's en ZFS die alle RAID logica op zich neemt dan is dat zeker revolutionair te noemen.

Ook ben ik het er dan mee eens dat voor een ZFS gebaseerd systeem TLER minder/niet belangrijk is dan voor andere type systemen. Of je het nodig hebt op dit moment is dan meer een keuze die je zelf moet maken.

Ook moet je daarbij niet vergeten dat bijvoorbeeld de IBM M1015 (LSI) controller een instelbare timeout heeft in IT mode. Persoonlijk heb ik deze 'IO Timeout for Block Devices' op 120 seconden geconfigureerd, is de response snelheid voor jou belangrijker dan de eventuele data in een dergelijk blokje moet je deze wellicht inderdaad op 5 seconden zetten bijvoorbeeld. Zelfs sommige 'Enterprise' class storage controllers hebben niet zoveel controle over de onderliggende disks namelijk.

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


  • analog_
  • Registratie: Januari 2004
  • Niet online
Extera schreef op donderdag 14 november 2013 @ 00:39:
Hmmz, ik begrijp er niets van...

Ik heb Nexentastor geinstalleerd (community versie).
Ik heb een 2tal guides gevonden om mijn FC HBA in Target mode te zetten (andere driver laden).

Echter, wanneer ik via SSH inlog, herkent de CLI geen van de commando's.

Het zal wel iets stoms zijn :) morgen verder.
Je hebt twee logins, admin en root. De ene heeft de CLI de andere niet. Ik dacht dat als je echt root wilt spelen je zelfs beter als admin inlogde en vervolgens de boel sudo su'en.
Verwijderd schreef op woensdag 13 november 2013 @ 06:30:
Wellicht kunnen we zelf een test draaien. Enige wat we nodig hebben is een disk met Current Pending Sectors nadat er een ZFS pool op staat, en er ook geen redundancy aanwezig is. Althans, dat zou je moeten testen, wel redundancy (soft timeout->weinig problemen) - geen redundancy (hard timeout - kans op recovery). Dat is althans wat je zou moeten zien. Als dat klopt, dan kun je nog steeds beter TLER disablen. Tenzij je misschien voor Solaris platform kiest, de test kan ook op Solaris en Linux platforms getest worden stel ik zo voor.
Ik heb een disk met current pending sectors. Ik ben er heilig van overtuigd dat als ik daar een pool op aanmaak en 3TB aan data schrijf dat die count omhoog gaat na een paar keer de disk weer volledig ingelezen te hebben...

Wat wil je dat ik doe?

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
Sommige zaken kan je niet met een paar regels afdoen.
Ik denk dat we er nog lang over kunnen discuseieren maar dat er uiteindelijk meerdere mening zijn en die hangen om 2 verschillende zaken:

1. Is ZFS net als een Hardware RAID controller afhankelijk van TLER voor het afhandelen van disk fouten
Nee
2. Is het acceptabel dat de disk de tijd krijgt om zijn uiterste best te doen om een blok nog proberen te lezen of moet dat zeer snel al getracht worden vanaf een andere disk zodat de productie niet gestoord word
In iedere productie omgeving wil je niet dat de storage minuten blijft hangen. Als je een desktop hebt met 1 drive zonder redundancy is het anders. Ook heb ik uitgelegd dat andere componenten als ESXi en guest OS's niet goed reageren op lang io timeout's, zonder allerlei tweaks.
ZFS is bewezen minder afhankelijk van TLER dan een Hardware RAID controller.
Ik hoop dat je mijn uitleg nogmaals wil lezen. Want de meeste FS zijn niet afhankelijk van timeouts, net als ZFS.
Veelal heb je bij een hardware RAID controller last van 'false dropped disks' omdat de disk er te lang over doet om te reageren (Voor wat voor reden dan ook). Dit is al vele jaren een probleem en pas sinds de laatste jaren bekend en regelbaar, vandaar ook bijvoorbeeld de WD RED serie die deze 'Enterprise' feature nu ook op de consumenten markt mogelijk maakt (Althans, bewust aanwezig heeft, andere merken hebben ook disks die dit gewoon kunnen).
N
Dit is al heel lang instelbaar. Alleen werd het vaak via custom firmware door de array fabrikant geregeld. Zakelijke gebruikers, kopen niet WD of Seagate. Maar kopen een totaal product van EMC of NetApp. Zij gaan niet zelf arrays samenstellen.
Maar, vervolgens kom je in de situatie dat alle IO's kunnen freezen zo lang 1 disk hier mee bezig is. Die is wat lastiger te beantwoorden aangezien er scenario's te bedenken zijn waarbij het niet uitmaakt, of juist waarbij het heel wel gewenst is. Als je een gezond array hebt en 1 disk kan eventjes een bepaald blokje niet lezen, prima, dat blokje kunnen we berekenen.
Ja, het stallen van io pipeline klopt. Ik heb hierboven en eerder een voorbeeld gegeven waar het wel degelijk iets uitmaakt. En ook gezegd dat het misschien niets uitmaakt, dat moet jij als gebruiker uitzoeken en testen. Bij standaard ESXi en guest OS's maakt het WEL wat uit.
Het probleem is echter dat de kans groot is dat dit gebeurt als bijvoorbeeld het array al degraded is en deze zijn RAID opnieuw aan het opbouwen is. Op dat moment, zeker bijvoorbeeld bij een RAIDz1 wil je juist heel graag dat de disk zijn uiterste best gaat doen om dat blokje te lezen aangezien je anders je complete array en dus je data kwijt bent.
Kies maar: of betere redundancy (triple mirrors ofraidz2 of raidz3) OF allemaal ellende omdat je zpool minuten lang hangt.
Moet dit oneindig duren? Nee, dat nou ook weer niet, maar de disk moet wel genoeg tijd krijgen om dit voor elkaar te krijgen, 7 seconden is dan niet heel erg lang als je data er vanaf hangt.
Heeft niks met ZFS te maken. Wordt geregeld in de disk en hba drivers. Zie eerdere post voor meer details.
Idealiter komt er een functionaliteit in het onderliggende host OS dat een reset stuurt naar de disk na enkele seconden. Deze zou dan vervolgens met ophogende timeout het enkele malen opnieuw moeten proberen en pas op het moment dat het echt niet gelezen kan worden trachten het blokje vanaf een andere disk te lezen en de disk droppen en deze als 'bad' aanmerkt. Op die manier weet je zeker dat je disk inderdaad een probleem heeft en kan het hopelijk opgevangen worden door een andere disk. De feature heet niet voor niets "Time Limited Error Recovery", er zijn echter situaties dat deze time liever wel gespendeerd word aangezien je anders tegen data verlies zit aan te kijken.
Retry strategieen zitten in de disk en hba driver en drive firmware. De drivers zijn open source, als jij een eigen strategie wil toepassen, ga je gang. Dat is het mooi van open source. Maar denk even goed na voordat je daaraan begint. Kan jij een betere strategie ontwikkelen dan de duizenden mensen die zich de laatste 20 jaar hiermee bezig hebben gehouden. Je data verlies los je op met een extra drive en daarna eventueel betere drives. Voor iets meer dan 100 euro ben je klaar. En wat als je je zpool verliest? Je hebt toch backups? ;)
Ik verwacht ook dat CiPHER dat bedoelt met dat de onderliggende laag van FreeBSD een stuk moderner en robuster aan het worden is dan systemen die vasthouden aan de oudere varianten die inderdaad veelal
in het tijdperk van het oude SCSI of zelfs MFM geschreven zijn.
Die onderliggende lagen zijn GEOM en CAM. GEOM is al heel oud, FreeBSD 5.0. CAM pas sinds FreeBSD 8.0 Beide zijn goede frameworks. Persoonlijk denk ik dat CAM een hogere waarde heeft dan GEOM. CAM heb je altijd nodig GEOM niet. CAM houd net zo vast aan SCSI als wie dan ook. Die oude systemen zijn een stuk robuster dan CAM en GEOM als je kijk naar de hoeveelheid fixes. De oude systemen krijgen geen fixes omdat ze goed zijn, CAM en GEOM hebben nog lang niet dat niveau bereikt.
Iets anders is dat deze nieuwe frameworks nieuwe ontwikkelingen mogelijk maken en geen erfenis hebben van 20 jaar.
Dat is bijvoorbeeld ook 1 van de redenen waarom een PCIe SSD een stuk sneller met een lagere latency kan zijn dan een SAS/SATA SSD aangezien deze niet via de standaard storage laag aangesproken hoeven worden.
Dit is kul. Verdiep je er wat meer in voordat je dit soort uitspraken doet. Een PCIe SSD kan lagere latency en kan hogere doorvoersnelheden bereiken omdat het op de PCIe bus zit, die sneller is dan SAS of SATA en geen hba nodig heeft. Maar al deze apparaten hebben een driver die het als disk laat verschijnen. En hoe spreek je die aan? Via je storage laag.
De ideale wereld is er dus naar mijn mening nog niet, maar als FreeBSD het grondwerk aan het herschrijven is om te trachten dit wel beter te maken tegenover hoe het traditioneel in elkaar zat, gecombineerd met "Domme" HBA's en ZFS die alle RAID logica op zich neemt dan is dat zeker revolutionair te noemen.

Ook ben ik het er dan mee eens dat voor een ZFS gebaseerd systeem TLER minder/niet belangrijk is dan voor andere type systemen. Of je het nodig hebt op dit moment is dan meer een keuze die je zelf moet maken.
Lees bovenstaande nog eens. Ik schreef dat voor de meeste mensen TLER wel van meerwaarde is. En ja het is een keuze die je zelf moet maken. Ik heb alleen uitgelegd wat de gevolgen zijn voor diverse setups als je wel of geen TLER hebt.
Ook moet je daarbij niet vergeten dat bijvoorbeeld de IBM M1015 (LSI) controller een instelbare timeout heeft in IT mode. Persoonlijk heb ik deze 'IO Timeout for Block Devices' op 120 seconden geconfigureerd, is de response snelheid voor jou belangrijker dan de eventuele data in een dergelijk blokje moet je deze wellicht inderdaad op 5 seconden zetten bijvoorbeeld. Zelfs sommige 'Enterprise' class storage controllers hebben niet zoveel controle over de onderliggende disks namelijk.
Alleen zal die timeout een hele kostbare device reset tot gevolg hebben. Het is niet hetzelfde als TLER. TLER is alleen een verkorte timeout voor lezen en schrijven. Die 'enterprise controllers' hebben dit soort settings ook niet nodig. De drives hebben aangepaste firmware en het OS regelt de rest.
Wat voor mij nog steeds een beetje een vaag stuk is (Durandal), als je disks op 120 seconden timeout zet, hoe denk je dan ooit dat dat ding gaat recoveren? Want FreeBSD heeft in de tussentijd allang opgegeven...

Dus je disk kan aan het einde van die 120s misschien wel iets van de data gerecovered hebben, maar terugleveren aan het OS kan (denk ik) helemaal niet meer, omdat FreeBSD allang de device entry verwijderd heeft, en het commando allang niet meer in de queue zit...

Dus ja, je disk gaat misschien in een heel zeldzaam geval recoveren, maar als je OS die IO niet accepteerd, ben je hem nog steeds kwijt...

Even niets...


  • EnerQi
  • Registratie: Maart 2011
  • Laatst online: 10-10 12:23
leuke inhoudelijke discussies maar de conclusie is mij nog niet duidelijk:

Je gebruikt TLER om een resposive systeem te houden (7 sec recovery ipv meer), daarna gaat ie een andere disk proberen.
Mijn vraag is wanneer de disk als "bad" aangemeld wordt. Na 1x een block niet kunnen lezen? Als dit namelijk bij 1x niet lezen gebeurd, vind ik het een groot risico. 1 fout komt "regelmatig" voor op een grote disk (soft error / niet kunnen lezen door demagnetisering) en zou hiermee de hele disk offline halen. Effectief heb je dus meer kans je array te verliezen.

Of kun je ergens instellen (nu of toekomst) wanneer ie als "bad" aangemerkt moet worden zonder programmeur te zijn ;)

[ Voor 9% gewijzigd door EnerQi op 14-11-2013 10:57 ]


  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk
dat is instelbaar bij de disk drivers, SD bij Solaris en DA bij FreeBSD
Even in de manpage kijken:
http://www.freebsd.org/cgi/man.cgi?query=da&sektion=4
En daar staat alles uitgelegd ook hoe je retries en timeout kan instellen
bijv
# sysctl kern.cam.da.default_timeout=120
# sysctl kern.cam.da.retry_count=10

Dit is ook het precies het argument wat ik heb voor TLER. Zonder TLER moet je gaan tweaken om deze ellende (die jij noemt in je post) te voorkomen. Bij windows krijg je een "delayed write" of erger bij unix een panic op je root etc. Tenzij je dit allemaal gaat oprekken. Je moet het zelfs heel ver oprekken ivm mogelijke device resets etc.

@EnerQi
Dit zijn mijn conclusies: ZFS kan eeuwig over een io lan doen. De disk driver heeft wel timeouts. En clients hebben timeouts. Zonder TLER kan je over standaard timeouts heen gaan. Als je die niet aanpast heb je alsnog ellende. Zonder TLER is nuttig als je geen redundancy hebt. Met TLER hoef je, in mijn ervaring, niks aan te passen aan welke timeout dan ook. Niet op het OS waar ZFS op draait, niet op ESXi, niet op guest OS's. Standaard werkt het allemaal.

Goede vraag, wanneer wordt een drive in ZFS als faulty aangemerkt? Ik hoop dat je mijn eerdere post hebt gelezen of dat in ieder geval nog wilt doen want daar leg ik het uit. Heel kort ZFS doet dat niet. ZFS krijgt een signaal van een ander component in het OS dat de disk er niet meer is of te veel fouten heeft. In illumos is daar een framework voor wat FMA heet. Dat krijgt van diverse bronnen signalen binnen en stelt op basis daarvan een diagnose. In het geval van ZFS is het standaard 3 fouten binnen 10 minuten en de disk wordt als faulty aangemerkt. Hoe FreeBSD dit precies regelt wil ik graag van iemand anders horen, het liefste met code verwijzing.
Ik vermoed dat FreeBSD ook niet de een drive direct als faulty zal aanmerken maar ik weet niet hoe het daar geregeld omdat FreeBSD niet iets heeft als FMA.

  • Bigs
  • Registratie: Mei 2000
  • Niet online
EnerQi schreef op donderdag 14 november 2013 @ 10:55:
leuke inhoudelijke discussies maar de conclusie is mij nog niet duidelijk:

Je gebruikt TLER om een resposive systeem te houden (7 sec recovery ipv meer), daarna gaat ie een andere disk proberen.
Mijn vraag is wanneer de disk als "bad" aangemeld wordt. Na 1x een block niet kunnen lezen? Als dit namelijk bij 1x niet lezen gebeurd, vind ik het een groot risico. 1 fout komt "regelmatig" voor op een grote disk (soft error / niet kunnen lezen door demagnetisering) en zou hiermee de hele disk offline halen. Effectief heb je dus meer kans je array te verliezen.

Of kun je ergens instellen (nu of toekomst) wanneer ie als "bad" aangemerkt moet worden zonder programmeur te zijn ;)
Bij reguliere (hardware) RAID heb ik altijd gezien dat bij 1 leesfout de hele disk wordt afgeschreven en direct opnieuw wordt opgebouwd. Dit is wel een proces wat bij een RAID 1 array op een low-end LSI controller zich een aantal keer per dag afspeelde trouwens. ZFS schrijft de disk ook direct af en doet de resilver (out-of-the-box in FreeBSD iig) automatisch, maar er is niets dat je tegenhoudt om de disk in kwestie opnieuw op te nemen in de array.

Als een schijf 1 leesfout geeft is hij in principe niet meer te vertrouwen (al is het maar omdat hij de prestaties van je array omlaag trekt), dus de enige juiste actie is om hem dan uit de array te verwijderen.

[edit]
Correctie n.a.v. post van tvwes hierboven, kennelijk gooit ZFS de disk er niet direct bij de eerste overtreding uit.

[ Voor 4% gewijzigd door Bigs op 14-11-2013 11:33 ]


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Het is niet mijn bedoeling om een hele flameware te starten maar ik wil toch eventjes inhoudelijk reageren op deze reactie. Het was naar mijn mening ook het idee een discussie te voeren en niet een betoogreden waarom of hoe slecht iets wel niet is.
tvwes schreef op donderdag 14 november 2013 @ 09:35:
Sommige zaken kan je niet met een paar regels afdoen.
Uiteraard, maar dat is vaak helemaal niet zo erg, zo lang het meer informatie of meningen aan het onderwerp toevoegt, alleen maar goed! Enigszins geïnformeerd zijn is daarbij wel zo fijn. Wel vind ik je vorm van schrijven enigszins dwingend overkomen, maar dat kan ook aan mij liggen.
Nee
Fijn, daar gaat de hele discussie om, maar naar mijn mening is het antwoord niet dermate simpel.
In iedere productie omgeving wil je niet dat de storage minuten blijft hangen. Als je een desktop hebt met 1 drive zonder redundancy is het anders. Ook heb ik uitgelegd dat andere componenten als ESXi en guest OS's niet goed reageren op lang io timeout's, zonder allerlei tweaks.
We hebben het hier dan ook niet om een zakelijke productie omgeving maar om 'huis' servers. Dan nog is de discussie ook voor de professionele wereld uiteraard interessant, maar het zijn 2 verschillende gebieden die wellicht een ander antwoord krijgen op dezelfde vraag. Ik ben blij dat je ons eventjes hebt uitgelegd hoe ESXi en een guest OS werkt, naar mijn mening heeft een draaiende VM en ESXi niet zoveel last van een tijdelijk hangend storage systeem zolang deze daar eventjes niets van vraagt of op staat te wachten. ESXi heeft juist heel erg goede recovery mechanismes tegen tijdelijk wegvallende disks. Maar dat het niet ideaal is, sure. :)
Ik hoop dat je mijn uitleg nogmaals wil lezen. Want de meeste FS zijn niet afhankelijk van timeouts, net als ZFS.
Waarom je het hier over een FileSystem hebt terwijl ik het over een hardware RAID controller heb weet ik niet helemaal. Timeouts zijn hoe dan ook nooit ideaal.
Dit is al heel lang instelbaar. Alleen werd het vaak via custom firmware door de array fabrikant geregeld. Zakelijke gebruikers, kopen niet WD of Seagate. Maar kopen een totaal product van EMC of NetApp. Zij gaan niet zelf arrays samenstellen.
Heel goed, zo werken professionele systemen inderdaad al jaren, daarnaast is de SCSI/SAS instructie set een stuk uitgebreider. Maar, uiteindelijk zitten er dezelfde disks in, ze vragen er alleen 5x zoveel voor. Ook is het zo dat op de meeste consumenten schijven het tot voor kort instelbaar was via smartctl en dergelijke maar dat dit een reboot niet overleefde. Op Linux/BSD gebaseerde systemen is dat gelukkig niet zo erg omdat het tijdens elke boot opnieuw ingesteld kan worden.
Ja, het stallen van io pipeline klopt. Ik heb hierboven en eerder een voorbeeld gegeven waar het wel degelijk iets uitmaakt. En ook gezegd dat het misschien niets uitmaakt, dat moet jij als gebruiker uitzoeken en testen. Bij standaard ESXi en guest OS's maakt het WEL wat uit.
Ik heb nooit beweerd dat dit niet uitmaakt, uiteraard is dat vervelend/naar. Maar zoals ik schreef zijn er situaties denkbaar waarbij het toch wenselijk is tegenover de andere optie, data verlies. Dus?
Kies maar: of betere redundancy (triple mirrors ofraidz2 of raidz3) OF allemaal ellende omdat je zpool minuten lang hangt.
Volledig afhankelijk van de situatie en de waarde die je aan je data hecht. Voor thuis of in de zakelijke markt zijn die eisen compleet anders, mede met het prijskaartje wat er aan vast hangt. Koop dan een mooi HDS array met 100% uptime garantie! :*)
Heeft niks met ZFS te maken. Wordt geregeld in de disk en hba drivers. Zie eerdere post voor meer details.
Ja, en, dan, dus? Daar hebben we het toch juist over? Zeker als we kijken dat veelal ZFS word gezien als vervanging van een hardware RAID controller. Dat het in de werkelijkheid een filesystem is die ook voor bepaalde RAID functionaliteit zorgt is bijkomstigheid en niet zoals veel mensen het bekijken.
Retry strategieën zitten in de disk en hba driver en drive firmware. De drivers zijn open source, als jij een eigen strategie wil toepassen, ga je gang. Dat is het mooie van open source. Maar denk even goed na voordat je daaraan begint. Kan jij een betere strategie ontwikkelen dan de duizenden mensen die zich de laatste 20 jaar hiermee bezig hebben gehouden. Je data verlies los je op met een extra drive en daarna eventueel betere drives. Voor iets meer dan 100 euro ben je klaar. En wat als je je zpool verliest? Je hebt toch backups? ;)
Dude, daar gaat de complete discussie toch niet over? Het gaat erover dat met de hardware die gemiddeld genomen gebruikt word door de mensen op dit forum (en de thuis ZFS situatie) hoe daar het beste mee om te gaan. Compleet nutteloze opmerking om dan te gaan roepen dat iemand maar zelf eventjes een AHCI driver moet gaan herschrijven. :F
Die onderliggende lagen zijn GEOM en CAM. GEOM is al heel oud, FreeBSD 5.0. CAM pas sinds FreeBSD 8.0 Beide zijn goede frameworks. Persoonlijk denk ik dat CAM een hogere waarde heeft dan GEOM. CAM heb je altijd nodig GEOM niet. CAM houd net zo vast aan SCSI als wie dan ook. Die oude systemen zijn een stuk robuster dan CAM en GEOM als je kijk naar de hoeveelheid fixes. De oude systemen krijgen geen fixes omdat ze goed zijn, CAM en GEOM hebben nog lang niet dat niveau bereikt.
Iets anders is dat deze nieuwe frameworks nieuwe ontwikkelingen mogelijk maken en geen erfenis hebben van 20 jaar.
De oude systemen krijgen geen fixes omdat ze OUD zijn, zo werkt dat overal in de professionele wereld, zegt over het algemeen vrij weinig of niets over de kwaliteit ervan. Bewezen is wat anders dan kwaliteit overigens. Ook moeten bepaalde technieken met de tijd mee door immer groeiende capaciteit en I/O behoeften.
Dit is kul. Verdiep je er wat meer in voordat je dit soort uitspraken doet. Een PCIe SSD kan lagere latency en kan hogere doorvoersnelheden bereiken omdat het op de PCIe bus zit, die sneller is dan SAS of SATA en geen hba nodig heeft. Maar al deze apparaten hebben een driver die het als disk laat verschijnen. En hoe spreek je die aan? Via je storage laag.
Pardon? :( Dat ligt eraan over wat voor markt we praten. Praten we FusionIO of bijvoorbeeld een Violin Memory dan zijn er andere technieken nodig om een hogere performance te kunnen halen. http://www.fusionio.com/white-papers/beyond-ssd/ . Overigens is bij een PCIe SSD die kaart zelf de HBA. Verder is dit type PCIe controller sterk in opkomst voor bijvoorbeeld host based caching, of in nieuwere storage arrays zoals Pure Storage. Met de tijd mee gaan, SAS is leuk, maar zeker niet het einde.
Lees bovenstaande nog eens. Ik schreef dat voor de meeste mensen TLER wel van meerwaarde is. En ja het is een keuze die je zelf moet maken. Ik heb alleen uitgelegd wat de gevolgen zijn voor diverse setups als je wel of geen TLER hebt.
Exact het is een keuze die afhankelijk is van een mening wat er belangrijker is, dat zijn we aan het discussiëren.
Alleen zal die timeout een hele kostbare device reset tot gevolg hebben. Het is niet hetzelfde als TLER. TLER is alleen een verkorte timeout voor lezen en schrijven. Die 'enterprise controllers' hebben dit soort settings ook niet nodig. De drives hebben aangepaste firmware en het OS regelt de rest.
Zeker, helemaal waar. Gelukkig hebben we het nu over een discussie qua ZFS en de hier geregeld gebruikte hardware.

Maar eventjes zonder gekkigheid, we hebben hier een discussie over een bepaalde situatie. Is TLER nodig voor in de thuis situatie met ZFS of niet. Verder valt er natuurlijk te discussiëren over wat het ook in andere situaties moet zijn, daar is niets mis mee.

Dat TLER is bedrijfs situaties IO stalls kan voorkomen is uiteraard een goed argument, maar we zijn meer op zoek naar de gevolgen daarvan en wat de gevolgen zijn van dergelijke keuzes. Is het zonder TLER bruikbaar of is dat eigenlijk echt niet te doen.

Persoonlijk voor mij is het zo dat ik het de premium van een RED tegenover een Green niet waard vind voor in een thuis situatie. Verder heb ik mijn data ingedeeld in verschillende classificaties. Laag 1 is puur unieke content die veelal zelf gegeneerd is (Foto's, video's, e-mail, etc.) deze staat op de RAID set, met een kopie op nog een aparte mirror en deze data zit in CrashPlan die elk kwartier een backup maakt (Op dit moment nog 18.9 dagen resterend voor de initiale full). Laag 2 staat op de RAIDz1 en dat wil ik graag behouden, zou dat worst case ooit weg zijn, nou ja, jammer. En Laag 3 staat nu ook op de RAIDz1 maar als dat weg zou zijn, dan download ik het weer opnieuw. Er zitten hier genoeg mensen die redelijk wat van storage afweten, waaronder mezelf die toch al zo'n 16 jaar met huis/tuin en keuken storage spul werkt tot aan de grote enterprise systemen. Dus wellicht is het een idee om de discussie iets meer open te houden? :)

p.s. Ik ben overigens al vele jaren bezig met dit probleem/topic, zie ook bijvoorbeeld mijn posts op een ander forum hierover uit 2010: http://forums.storagerevi.../28333-tler-cctl/?hl=tler . Toen was dat allemaal nog makkelijk aan te passen. :D

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


  • Extera
  • Registratie: Augustus 2004
  • Laatst online: 05-05 16:02
analog_ schreef op donderdag 14 november 2013 @ 03:05:
[...]

Je hebt twee logins, admin en root. De ene heeft de CLI de andere niet. Ik dacht dat als je echt root wilt spelen je zelfs beter als admin inlogde en vervolgens de boel sudo su'en.
bedankt!

Ik was ingelogd via ssh als root, maar je moet er inderdaad als admin in, en dan su
De rest van de setup was echt een eitje, alles werkt nu.

Ik heb deze guide gevolgd

Nadat de FC kaart in target mode staat op de nexenta, en een LUN is toegewezen, ziet ESXi de nexenta direct.

Performance testen heeft helaas weinig zin, de disk in mijn nexenta testbak is veel trager dan de verbinding :P

[ Voor 3% gewijzigd door Extera op 14-11-2013 14:37 ]

Mijn Serverrack - iRacing Profiel


  • EnerQi
  • Registratie: Maart 2011
  • Laatst online: 10-10 12:23
@tvwes

Bedankt voor je antwoord, de lange uitleg snapte ik niet goed en/of te snel gelezen.

Uiteindelijk gaat het erom dat de storage betrouwbaar is met bekende/geaccepteerde risico's :)

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Quindor
Geen flame bedoeld. En de "dwingende" schrijfstijl is puur vanwege mijn werk, niks persoonlijks. Ik werk ook voor Amerikaanse ondernemingen en die zijn niet zo informeel. Alles moet je onderbouwen en als ik te wijfelend overkom dan kan ik direct vertrekken.

Ik heb alleen getracht met voorbeelden die op de gemiddelde tweaker hier van toepassing zijn te laten zien wat de voordelen en nadelen zijn van TLER alsmede de risico's op het ontbreken ervan.
Mijn advies aan de mensen die een ZFS NAS hebben, en vooral diegene met ESX datastores erop is wel te kiezen voor drives met TLER. Ik heb uitgebreid uitgelegd waarom en meerdere malen herhaald dat het niet hoeft. Daarna is het aan een ieder om zelf een keuze te maken.
Jij hebt zelf een prima strategie ontwikkeld en hebt de afweging gemaakt en gekozen voor Green drive's zonder TLER. Als dat voor jouw werkt dan prima en respecteer ik je keuze volledig.
Lang niet iedereen kan zo'n weloverwogen strategie en keuze maken. Om die mensen te helpen heb ik een uitgebreide post geschreven met uitleg en onderbouwing inclusief source verwijzingen en ook een advies. Mijn advies, vooral aan diegene met ESXi, was dat de premie van TLER opweegt tegen de ellende door timeouts. Iedereen is vrij om daarmee te doen wat hij wil. Ik zal niemand aanspreken als die mijn advies naast zich neer legt.

Twee vragen:
Dat TLER is bedrijfs situaties IO stalls kan voorkomen is uiteraard een goed argument, maar we zijn meer op zoek naar de gevolgen daarvan en wat de gevolgen zijn van dergelijke keuzes. Is het zonder TLER bruikbaar of is dat eigenlijk echt niet te doen
Ik durf het bijna niet te vragen, maar dat heb ik toch uitgelegd? Als je het niet terug kan vinden of een samenvatting wil dan hoor ik het wel.
Wat bedoel je met open houden van discussie?

Overigens heb ik prive en implementeer ik vaak bij organisaties verschillende zpool's net als jij om net als de data op te slaan in een passend storage profiel. (jij noemt het lagen ik profielen)
Ik heb dat wel eens voorgesteld in:
tvwes in "Het grote ZFS topic"
FF zonder gekheid. Los van hoe de discussie misschien loopt voel ik hier nu wel wat Tweaker bloed harder gaan stromen :)

@tvwes, jouw plan om data te classificeren is zeker valide, maar zelfs dat is voor veel mensen te duur. Die kunnen niet meerdere zpools gaan draaien met verschillende disk configuraties. Die willen gewoon met "The bare minimum" het onderste uit de kan halen. Natuurlijk mogen ze/we dan niet klagen. Maar we zijn wel Tweakers, en willen toch hier er dan met andere mensen over praten waardoor we misschien net wat meer snelheid behalen.

Vooral in mijn performance geval: Er klopt gewoon iets niet. Ik snap dat ik geen 90000 iops uit mijn ssd haal om diverse redenen, maar ik snap niet dat ik maar 8MB/s sequentieel haal.

De TLER discussie valt hier ook onder: Is het verplicht voor mensen die een bare minimum zpool (3-9 disks in 1 vdev) draaien met misschien een ZIL of L2ARC?

Even niets...


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Ok, dat kan ik wel begrijpen, sommige bedrijven werken erg apart op die manier.

Het moeten onderbouwen van beslissingen en andere zaken vind ik dan weer heel normaal. Ik ben zelf een Storage en Backup consultant dus daar weet ik alles van. ;) Maar ook dat vak gebied is al breed genoeg, een Netapp man is over het algemeen geen EMC man en andersom. :P

Over de IO stalls, wat ik daarmee bedoel is, wat gebeurt er echt in de praktijk. Er zit nog een smaak van Host OS tussen (Solaris afgeleide, BSD, Linux) een disk layer zoals GEOM En CAM en ook nog een hardware controller (Veelal een LSI in IT modus) die ook zijn eigen timeouts kan bevatten. Dus wat er nu werkelijk gebeurt als er een disk een probleem heeft vind ik persoonlijk nog niet helemaal beantwoord. FreeBSD kan daar wellicht heel anders mee omgaan dan Solaris. En is het wellicht mogelijk dat een dergelijke tussenlaag (Zoals de LSI kaart die ook een reset kan sturen) het deels oplost wat voor in thuis situatie acceptabel zou zijn?

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

FireDrunk schreef op donderdag 14 november 2013 @ 15:39:
FF zonder gekheid. Los van hoe de discussie misschien loopt voel ik hier nu wel wat Tweaker bloed harder gaan stromen :)

@tvwes, jouw plan om data te classificeren is zeker valide, maar zelfs dat is voor veel mensen te duur. Die kunnen niet meerdere zpools gaan draaien met verschillende disk configuraties. Die willen gewoon met "The bare minimum" het onderste uit de kan halen. Natuurlijk mogen ze/we dan niet klagen. Maar we zijn wel Tweakers, en willen toch hier er dan met andere mensen over praten waardoor we misschien net wat meer snelheid behalen.

Vooral in mijn performance geval: Er klopt gewoon iets niet. Ik snap dat ik geen 90000 iops uit mijn ssd haal om diverse redenen, maar ik snap niet dat ik maar 8MB/s sequentieel haal.

De TLER discussie valt hier ook onder: Is het verplicht voor mensen die een bare minimum zpool (3-9 disks in 1 vdev) draaien met misschien een ZIL of L2ARC?
Bedoel je wellicht de 8MB/sec waarde qua schrijven naar de L2ARC? Dat is een default waarde, die kun je aanpassen middels de volgende commando's: (Eventjes uit mijn eigen pruts documentatie gehaald van mijn implementatie van vorige week)

sysctl -a | grep l2arc
No streaming read cache: sysctl vfs.zfs.l2arc_noprefetch=1 (Media bestanden komen dus niet op je L2ARC terrecht, alleen random spul)

Normal write speed 30MB/sec: sysctl vfs.zfs.l2arc_write_max=31457280 (Waarde dat er naar de L2ARC geschreven mag worden, word gelimiteerd omdat reads in principe belangrijker zijn, maar de standaard 8MB/sec is niet meer van deze tijd, ik vind 30MB/sec een goede waarde. Ik heb ook speculaties gelezen dat het deels gedaan word om writes op de SSD te besparen, maar dat vind ik een beetje kul, aangezien het er uiteindelijk toch wel komt, snel of niet.)

Boosted write speed 100MB/sec: sysctl vfs.zfs.l2arc_write_boost=104857600 (De boost speed mag gebruikt worden na een boot om de L2ARC weer zo snel mogelijk gevuld te krijgen)

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED

Nee, die had ik al gevonden, thanks ;)

Ik haal echt via NFS vanuit ESXi maar 8MB/s (dus vanuit een VM die op een NFS datastore staat).
HyperBart haalt met bijna exact dezelfde hardware gewoon dik 80MB/s.

Dingen die ik heb geprobeerd:

Compleet nieuwe installatie van: FreeBSD 9.2, ZFSguru, FreeBSD 10.0-BETA3, TrueOS. (Hiermee resetten dus ook alle tunables, dus daar kan het ook eigenlijk niet aan liggen)
Compleet nieuwe pool aangemaakt met andere schijven, met en zonder ZIL/L2ARC.
Nieuwe installatie ESXi 5.5.
Andere cluster nodes (eerste was een ASrock H77 bord met een G1610, later een Intel DQ77MK met een i5-3550 getest).

Als ik *in* een VM een NFS mount doe naar mijn ZFS bak, haal ik dik 110MB/s lezen. (maar dat is wel async, en iets anders dan ESXi zelf doet natuurlijk) en 80MB/s schrijven.

Ik sluit dus even de hardware uit omdat die fysiek wel laat zien dat het sneller kan. (Servers / switches / disks / ssd's)

[ Voor 4% gewijzigd door FireDrunk op 14-11-2013 16:02 ]

Even niets...


  • duramen
  • Registratie: Maart 2006
  • Laatst online: 02-10 10:54
En als je in plaats van een FreeBSD variant een Solaris of ZoL gebruikt?
Bij mij draaien alle FreeBSD gebaseerde oplossingen onder ESXi substantieel langzamer dan allen andere systemen.
ZoL heb ik wel over zitten denken, maar ik ben daar nog een klein beetje bang voor :P
Misschien wordt het daar inderdaad wel tijd voor...

(overigens is iSCSI niet heel veel sneller, daar haal ik substantieel 50/50MB/s wat ik ook aan de trage kant vind. Zowel met de nieuwe in-kernel iSCSI target als ISTGT)

[ Voor 38% gewijzigd door FireDrunk op 14-11-2013 16:08 ]

Even niets...


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Apart, nou moet ik bekennen dat ik niet getest heb met NFS maar tussen mijn ZFSguru doos en ESXi 5.5 doos zit een 2Gbit round-robin iSCSI connectie en met een beetje tuning haal ik makkelijk de 200MB/sec daar overheen.

Ik heb wel een L2ARC en ZIL maar als ik kijk middels "zpool iostat -v 1" (ssh window eventjes verkleinen dat de refresh perfect past) word dat in het begin niet eens echt gebruikt.

Is iSCSI geen optie voor je? Ik snap uiteraard dat NFS makkelijker is, maar toch? Eventueel kan ik het bij mij thuis vanavond eens proberen, maar dan moet ik eventjes uitzoeken hoe NFS werkt. :P

Wat voor netwerkkaarten gebruik je? Ik gebruik op dit moment in beide machines Intel Pro/1000 PT kaarten maar ik heb een Dual en Quad Intel i350T via ebay geshopped die onderweg zijn! :D

[ Voor 13% gewijzigd door Quindor op 14-11-2013 16:19 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED

ZFS server is een Supermicro H8SCM-F met 2 onboard Intel 825** kaarten, in de cluster node zit een dual port Intel Pro/1000 PT. De andere cluster nodes hebben een Realtek onboard (vandaar ook de reden om te switchen van cluster node). Switch is een TP-Link SG3216 Managed 1Gb SMB switch.

iSCSI is ook niet handig, bovendien heb ik al mijn ISO's (MSDN Premium FTW :D) op NFS staan, en logischerwijs niet in een iSCSI volume. Installatie van zo'n ISO vanaf NFS richting iSCSI is dus ook traag.

En ik test heel wat software, dus ook dat is best wel een bottleneck.

[ Voor 4% gewijzigd door FireDrunk op 14-11-2013 16:23 ]

Even niets...


  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk
Als ik lees wat sommigen hier aan spullen hebben ben ik echt jaloers. Het is dan soms moeilijk te bepalen wanneer iets te duur is. Mijn voorstel voor een usb boot stickje, 2 ssd voor een vm pool en 4 hdd's voor bulk leek me niet over de top qua kosten. Maar ik zal er voortaan nog meer rekening houden met de kosten. De bandbreedte van wensen is vrij groot hier.

Wat is er nu precies met je SSD? Los van de snelheid. Hoe gebruik je de SSD nu precies?


De TLER discussie valt hier ook onder: Is het verplicht voor mensen die een bare minimum zpool (3-9 disks in 1 vdev) draaien met misschien een ZIL of L2ARC?
Ik durf bijna niets meer te schrijven over TLER.
  • TLER is niet verplicht.
  • ZFS vereist NIET TLER. (ZFS wil alleen een block device)
  • ZFS (net als de meeste FS) kent geen timeout's (die timeouts zitten elders)
  • Een SLOG of L2ARC staan er los van.
  • TLER kan je helpen met het voorkomen van timeout's elders, vaak verderop in de keten.
Mischien is dit lijstje wat?
ZFS en TLER best practice lijstje (NIET VERPLICHT alleen advies)
  • Het je een niet redundante zpool, dus geen mirror of raidz? Neem dan drives zonder TLER of zet het uit. Je hebt immers geen redundantie. Mogelijk moet je elder timeouts verhogen als een drive minuten bezig die bad sector kost wat kost te lezen.
  • Je hebt een zpool die je alleen als fileserver gebruikt. Geen iSCSI geen ESXi geen live vm's. Wel een media server of zo. TLER niet nodig maar wel handig. Sommige clients kunnen een lange wachttijd op een io niet waarderen. Verschilt van geval tot geval. Ik kan niks zinnigs daarover zeggen. Maar zeker voor een media NAS zal de ellende wel meevallen.
  • Je hebt een zpool met een ESXi datastore of andere live vm's of iscsi in het algemeen. Gebruik TLER om timeouts bij je afnemers te voorkomen. De afnemers kunnen ook wel wel getweakt worden maar echt fijn is het niet.

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Nog even over je opmerking van de clients, hoe waar ook, een nuance. De ZFS NAS staat 24/7 aan je clients meestal niet. De ZFS NAS heeft op de lange termijn meer kans op een bitflip dan de clients die minder lang aanstaan. Echter de kans dat een bitflip aan de client zijde zal optreden is groter in jouw voorbeeld als je aanneemt dat de 9 clients kantoortijden maken. Maar vermoedelijk zal je meer hinder ondervinden van een NAS die plat gaat dan een van je clients. Gezien de geringe meerprijs denk ik dat het erg onverstandig is om geen ECC te nemen. Maar dan moet het wel bewezen werken. En dat kan ik niet.
Tja niemand zal beargumenteren dat met ECC slechter is dan zonder denk ik. Het gaat er hier in dit forum om om wat je al hebt liggen qua hardware en of dat voldoet, of om wat je nog moet kopen en of de meerprijs dat rechtvaardigd, en of het past (ik heb bv euimte voor een microITX). Het zal van je situatie af hangen. De vraag wordt dan inderdaad; is het noodzakelijk ja dan nee.

Triggeren op een adres is overigens een goed idee en niet eens zo moeilijk, maar je moet het bitje flippen nadat het gebruikt is om de checkbit te berekenen. Je kan ook het checkbitje inverteren op dat moment. Een schema van een ECC Dimm zou hier wel handig zijn.

[ Voor 35% gewijzigd door Durandal op 14-11-2013 16:33 ]


  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk
als het functioneel is je NFS dan proberen we toch uit te zoeken wat de bottleneck?

Probleem:
Schrijfsnelheid vanuit guest naar guest disk traag, 8mb/s
Vanuit dezelfde guest schrijven naar een NFS mount wel snel, 80mb/s

Als je nog even je OS en zpool configuratie kan geven.

Dan zal ik wat relevante dtrace oneliners zoeken, mits je dat in je OS hebt zitten.
Ik heb inderdaad DTrace support, alleen is het wel FreeBSD, dus je kan geen Solaris varianten gebruiken :)

ZPOOL A: 4*4TB Seagate HDD.15 5900RPM schijven in RAIDZ1
ZPOOL B: 3*320GB 2.5" 5400RPM schijven in RAIDZ1

Geteste SSD's 840Pro 128GB, 840Pro 256GB.
tvwes schreef op donderdag 14 november 2013 @ 16:26:
Ik durf bijna niets meer te schrijven over TLER.
  • TLER is niet verplicht.
  • ZFS vereist NIET TLER. (ZFS wil alleen een block device)
  • ZFS (net als de meeste FS) kent geen timeout's (die timeouts zitten elders)
  • Een SLOG of L2ARC staan er los van.
  • TLER kan je helpen met het voorkomen van timeout's elders, vaak verderop in de keten.
Mischien is dit lijstje wat?
ZFS en TLER best practice lijstje (NIET VERPLICHT alleen advies)
  • Het je een niet redundante zpool, dus geen mirror of raidz? Neem dan drives zonder TLER of zet het uit. Je hebt immers geen redundantie. Mogelijk moet je elder timeouts verhogen als een drive minuten bezig die bad sector kost wat kost te lezen.
  • Je hebt een zpool die je alleen als fileserver gebruikt. Geen iSCSI geen ESXi geen live vm's. Wel een media server of zo. TLER niet nodig maar wel handig. Sommige clients kunnen een lange wachttijd op een io niet waarderen. Verschilt van geval tot geval. Ik kan niks zinnigs daarover zeggen. Maar zeker voor een media NAS zal de ellende wel meevallen.
  • Je hebt een zpool met een ESXi datastore of andere live vm's of iscsi in het algemeen. Gebruik TLER om timeouts bij je afnemers te voorkomen. De afnemers kunnen ook wel wel getweakt worden maar echt fijn is het niet.
Perfect lijstje!

[ Voor 73% gewijzigd door FireDrunk op 14-11-2013 16:46 ]

Even niets...


  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
FireDrunk schreef op donderdag 14 november 2013 @ 10:18:
Wat voor mij nog steeds een beetje een vaag stuk is (Durandal), als je disks op 120 seconden timeout zet, hoe denk je dan ooit dat dat ding gaat recoveren? Want FreeBSD heeft in de tussentijd allang opgegeven...
Geen flauw idee. Ik heb dan ook WD Reds met TLER ;) (en ik weet niet zeker of dat wel een reactie op mij moest zijn).
Maar goed punt. Wat is eigenlijk de timeout van een disk zonder TLER? Is dat overal hetzelfde? Of blijft 'ie gewoon retryen tot de stekker er uit gaat?

edit: eerst thread lezen, dan vragen. Is al beantwoord.

Het kan natuurlijk wel nuttig zijn (om geen TLER te hebben of die uit te kunnen zetten) als je later een image wilt maken van een slechte disk in een poging de bad blocks te recoveren. Maar dan ben je al half op weg naar een disk recovery service.

[ Voor 4% gewijzigd door Durandal op 14-11-2013 16:51 ]


  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Durandal
Het is soms moeilijk in te schatten wat hier te duur is. Er zijn hier mensen met norco's vol, complete ssd's zpools. Dat die paar tientjes meer voor ECC dram dan te duur is vind ik moeilijk in te schatten.

Ik heb best wat meetapparatuur en snap de basics. Maar dit is echt te moeilijk voor mij. Als je iemand kent die een dergelijke test kan opzetten en evt uitvoeren dan hoor ik dat graag. De software kant kom ik wel uit.
FireDrunk schreef op donderdag 14 november 2013 @ 16:02:
HyperBart haalt met bijna exact dezelfde hardware gewoon dik 80MB/s.
Nou er is wel een verschil, jij draait je ZFS pools altijd fysiek dacht ik, en bij mij draait ZFSguru virtueel op ESXi op die SuperMicro.

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk
Hoe gebruik je de SSD nu?
Als je zpool status -v doet wat krijg je dan te zien?
Niet, ik test momenteel even zonder SSD(s).

root@NAS:~ # zpool status -v
  pool: datapool
 state: ONLINE
status: The pool is formatted using a legacy on-disk format.  The pool can
        still be used, but some features are unavailable.
action: Upgrade the pool using 'zpool upgrade'.  Once this is done, the
        pool will no longer be accessible on software that does not support feature
        flags.
  scan: scrub repaired 0 in 7h56m with 0 errors on Tue Nov  5 18:27:16 2013
config:

        NAME                STATE     READ WRITE CKSUM
        datapool            ONLINE       0     0     0
          raidz1-0          ONLINE       0     0     0
            gpt/datapool-A  ONLINE       0     0     0
            gpt/datapool-B  ONLINE       0     0     0
            gpt/datapool-C  ONLINE       0     0     0
            gpt/datapool-D  ONLINE       0     0     0

errors: No known data errors

  pool: smallpool
 state: ONLINE
  scan: none requested
config:

        NAME             STATE     READ WRITE CKSUM
        smallpool        ONLINE       0     0     0
          raidz1-0       ONLINE       0     0     0
            gpt/320GB-A  ONLINE       0     0     0
            gpt/320GB-B  ONLINE       0     0     0
            gpt/320GB-C  ONLINE       0     0     0

errors: No known data errors

  pool: zroot
 state: ONLINE
  scan: none requested
config:

        NAME                                          STATE     READ WRITE CKSUM
        zroot                                         ONLINE       0     0     0
          gptid/b7e577f9-4c54-11e3-9338-002590134b54  ONLINE       0     0     0

errors: No known data errors


Datapool = 4*4TB
smallpool = 3*320GB
rootpool = Intel 80GB X25-M SSD, die verder niet gebruikt word.
OS is momenteel FreeBSD 10-BETA3

[ Voor 95% gewijzigd door FireDrunk op 14-11-2013 19:07 ]

Even niets...


  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk
wat heb je voor guests in ESXi? Graag alle windows vm's achterwege laten.
welke zpool heeft de datastore?
kan je de output van uname -a posten?
kan je de output van ifconfig -a posten?
kan je de output van zpool get all [zpool met datastore] posten?
kan je de output van zfs get all [path met datastore] posten?

[ Voor 3% gewijzigd door tvwes op 14-11-2013 19:45 ]

Waarom Windows VM's achterwege laten? Daar test ik juist mee? Maar momenteel geen enkele draaiend, behalve 1 Windows 2012 R2 Test VM.

root@NAS:~ # uname -a
FreeBSD NAS 10.0-BETA3 FreeBSD 10.0-BETA3 #0 r257580: Sun Nov  3 19:43:01 UTC 2013     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64


root@NAS:~ # ifconfig -a
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO>
        ether 00:25:90:13:4b:54
        inet 192.168.1.3 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::225:90ff:fe13:4b54%em0 prefixlen 64 scopeid 0x1
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect (1000baseT <full-duplex>)
        status: active
em1: flags=8c02<BROADCAST,OACTIVE,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO>
        ether 00:25:90:13:4b:55
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect
        status: no carrier
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
        inet 127.0.0.1 netmask 0xff000000
        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>


Pool
root@NAS:~ # zpool get all datapool
NAME      PROPERTY                       VALUE                          SOURCE
datapool  size                           14.5T                          -
datapool  capacity                       65%                            -
datapool  altroot                        -                              default
datapool  health                         ONLINE                         -
datapool  guid                           10236214267539680596           local
datapool  version                        28                             local
datapool  bootfs                         -                              default
datapool  delegation                     on                             default
datapool  autoreplace                    off                            default
datapool  cachefile                      -                              default
datapool  failmode                       wait                           default
datapool  listsnapshots                  on                             local
datapool  autoexpand                     off                            default
datapool  dedupditto                     0                              default
datapool  dedupratio                     1.04x                          -
datapool  free                           4.95T                          -
datapool  allocated                      9.55T                          -
datapool  readonly                       off                            -
datapool  comment                        -                              default
datapool  expandsize                     0                              -
datapool  freeing                        0                              local
datapool  feature@async_destroy          disabled                       local
datapool  feature@empty_bpobj            disabled                       local
datapool  feature@lz4_compress           disabled                       local
datapool  feature@multi_vdev_crash_dump  disabled                       local


Filesystem wat geshared word naar ESXi
root@NAS:~ # zfs get all datapool/lagelanden
NAME                 PROPERTY              VALUE                  SOURCE
datapool/lagelanden  type                  filesystem             -
datapool/lagelanden  creation              Tue May 21 12:57 2013  -
datapool/lagelanden  used                  208G                   -
datapool/lagelanden  available             3.43T                  -
datapool/lagelanden  referenced            24.6G                  -
datapool/lagelanden  compressratio         1.10x                  -
datapool/lagelanden  mounted               yes                    -
datapool/lagelanden  quota                 none                   default
datapool/lagelanden  reservation           none                   default
datapool/lagelanden  recordsize            128K                   default
datapool/lagelanden  mountpoint            /datapool/lagelanden   default
datapool/lagelanden  sharenfs              -mapall=0:0            local
datapool/lagelanden  checksum              on                     default
datapool/lagelanden  compression           lzjb                   local
datapool/lagelanden  atime                 off                    local
datapool/lagelanden  devices               on                     default
datapool/lagelanden  exec                  on                     default
datapool/lagelanden  setuid                on                     default
datapool/lagelanden  readonly              off                    default
datapool/lagelanden  jailed                off                    default
datapool/lagelanden  snapdir               hidden                 default
datapool/lagelanden  aclmode               passthrough            inherited from datapool
datapool/lagelanden  aclinherit            passthrough            inherited from datapool
datapool/lagelanden  canmount              on                     default
datapool/lagelanden  xattr                 off                    temporary
datapool/lagelanden  copies                1                      default
datapool/lagelanden  version               5                      -
datapool/lagelanden  utf8only              off                    -
datapool/lagelanden  normalization         none                   -
datapool/lagelanden  casesensitivity       sensitive              -
datapool/lagelanden  vscan                 off                    default
datapool/lagelanden  nbmand                off                    default
datapool/lagelanden  sharesmb              off                    default
datapool/lagelanden  refquota              none                   default
datapool/lagelanden  refreservation        none                   default
datapool/lagelanden  primarycache          all                    default
datapool/lagelanden  secondarycache        all                    default
datapool/lagelanden  usedbysnapshots       129G                   -
datapool/lagelanden  usedbydataset         24.6G                  -
datapool/lagelanden  usedbychildren        54.2G                  -
datapool/lagelanden  usedbyrefreservation  0                      -
datapool/lagelanden  logbias               latency                local
datapool/lagelanden  dedup                 off                    default
datapool/lagelanden  mlslabel                                     -
datapool/lagelanden  sync                  disabled               local
datapool/lagelanden  refcompressratio      1.02x                  -
datapool/lagelanden  written               2.11G                  -
datapool/lagelanden  logicalused           227G                   -
datapool/lagelanden  logicalreferenced     25.2G                  -


Smallpool
root@NAS:~ # zpool get all smallpool
NAME       PROPERTY                       VALUE                          SOURCE
smallpool  size                           888G                           -
smallpool  capacity                       2%                             -
smallpool  altroot                        -                              default
smallpool  health                         ONLINE                         -
smallpool  guid                           16310802890467076797           default
smallpool  version                        -                              default
smallpool  bootfs                         -                              default
smallpool  delegation                     on                             default
smallpool  autoreplace                    off                            default
smallpool  cachefile                      -                              default
smallpool  failmode                       wait                           default
smallpool  listsnapshots                  off                            default
smallpool  autoexpand                     off                            default
smallpool  dedupditto                     0                              default
smallpool  dedupratio                     1.00x                          -
smallpool  free                           864G                           -
smallpool  allocated                      23.9G                          -
smallpool  readonly                       off                            -
smallpool  comment                        -                              default
smallpool  expandsize                     0                              -
smallpool  freeing                        0                              default
smallpool  feature@async_destroy          enabled                        local
smallpool  feature@empty_bpobj            active                         local
smallpool  feature@lz4_compress           enabled                        local
smallpool  feature@multi_vdev_crash_dump  enabled                        local


Smallpool datastore
root@NAS:~ # zfs get all smallpool/vm
NAME          PROPERTY              VALUE                  SOURCE
smallpool/vm  type                  filesystem             -
smallpool/vm  creation              Wed Nov 13 12:46 2013  -
smallpool/vm  used                  531G                   -
smallpool/vm  available             51.5G                  -
smallpool/vm  referenced            14.9G                  -
smallpool/vm  compressratio         1.24x                  -
smallpool/vm  mounted               yes                    -
smallpool/vm  quota                 none                   default
smallpool/vm  reservation           none                   default
smallpool/vm  recordsize            128K                   default
smallpool/vm  mountpoint            /smallpool/vm          default
smallpool/vm  sharenfs              -maproot=0:0           local
smallpool/vm  checksum              on                     default
smallpool/vm  compression           on                     local
smallpool/vm  atime                 off                    local
smallpool/vm  devices               on                     default
smallpool/vm  exec                  on                     default
smallpool/vm  setuid                on                     default
smallpool/vm  readonly              off                    default
smallpool/vm  jailed                off                    default
smallpool/vm  snapdir               hidden                 default
smallpool/vm  aclmode               discard                default
smallpool/vm  aclinherit            restricted             default
smallpool/vm  canmount              on                     default
smallpool/vm  xattr                 off                    temporary
smallpool/vm  copies                1                      default
smallpool/vm  version               5                      -
smallpool/vm  utf8only              off                    -
smallpool/vm  normalization         none                   -
smallpool/vm  casesensitivity       sensitive              -
smallpool/vm  vscan                 off                    default
smallpool/vm  nbmand                off                    default
smallpool/vm  sharesmb              off                    default
smallpool/vm  refquota              none                   default
smallpool/vm  refreservation        none                   default
smallpool/vm  primarycache          all                    default
smallpool/vm  secondarycache        all                    default
smallpool/vm  usedbysnapshots       0                      -
smallpool/vm  usedbydataset         14.9G                  -
smallpool/vm  usedbychildren        516G                   -
smallpool/vm  usedbyrefreservation  0                      -
smallpool/vm  logbias               latency                default
smallpool/vm  dedup                 off                    default
smallpool/vm  mlslabel                                     -
smallpool/vm  sync                  disabled               local
smallpool/vm  refcompressratio      1.20x                  -
smallpool/vm  written               14.9G                  -
smallpool/vm  logicalused           19.8G                  -
smallpool/vm  logicalreferenced     18.0G                  -


De dedup komt overigens van een child filesystem voor backups waar het aan staat, verder staat het overal uit.

Even niets...


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

@FireDrunk

Ik heb eventjes een testje opgezet. Een bestaand filesystem heb ik met NFS gedeeld door in de "/etc/exports" de volgende regel op te nemen "/RAIDz1-4TB/Other -network 172.16.16.1 -mask 255.255.255.0". Vervolgens heb ik een "/etc/rc.d/mountd onereload" gedaan.

Daarna heb ik deze NFS share binnen VMware ESXi 5.5 toegevoegd en heb ik een VM een datastore move gegeven (Windows 7 x64) daarvan heb ik een screenshots gemaakt. Ging gemiddeld met 50MB/sec.

Daarna heb ik in de VM ook enkele tests gedraaid, zie: Afbeeldingslocatie: https://lh6.googleusercontent.com/-tqsI2h3fFmo/UoUoh0WhEUI/AAAAAAAACG4/gMFnhyS5dyQ/s1600/nfstest3.png

Zeker de ATTO ziet er prima uit, de crystalmark is wat lager dan ik zou verwachten maar ik verwacht dat dat komt door hoe de tests gedaan worden door de applicatie, wel apart op iSCSI zie ik dat namelijk niet. Vooral apart dat lezen een stuk trager is dan writes. Wel is dat een patroon wat ik via iSCSI en nu dus ook NFS terug zie en een van de redenen dat ik de NIC's in mijn server ga vervangen. Middels iperf heb ik dezelfde dip (1 kant op) namelijk. En via een crosscable moet dat niet echt kunnen. :P

De rest van de screenshots kun je hier vinden: https://picasaweb.google.com/100675551472213071975/QuinESXv8 . Staan als laatste in de rij.

Mijn conclusie iig, ik heb niet hetzelfde probleem.

p.s.
Beide systemen gebruiken desktop borden
ZFSguru = i5-2500, 24GB Memory, 2xVertex2 SSD (L2ARC, ZIL), 5x4TB in RAIDz1 (volume waar vanaf getest is), 2x2TB in Mirror. 2xPro/1000 PT met crosscable naar ESX server
ESXi = i5-4440, 32GB Memory, 3xSSD (1,2TB local datastores), Dual-Port Pro/1000 PT met crosscable naar ZFSguru server. Overal beide pools staat LZ4 aan, de root pool niet..

[ Voor 18% gewijzigd door Quindor op 14-11-2013 21:05 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED

Nou, jouw crystaldiskmark bench is ook waardeloos... Morgen maar eens iometer doen.

Bedankt voor je moeite!

[ Voor 13% gewijzigd door FireDrunk op 14-11-2013 21:25 ]

Even niets...


  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

FireDrunk schreef op donderdag 14 november 2013 @ 21:24:
Nou, jouw crystaldiskmark bench is ook waardeloos... Morgen maar eens iometer doen.

Bedankt voor je moeite!
Wat zie jij dan bij een atto en crystalmark?

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!
500MB Test size
Afbeeldingslocatie: http://tweakers.net/ext/f/9fu2jde5z4AMuSy7WPd3iIkl/medium.png

5GB Test size
Afbeeldingslocatie: http://tweakers.net/ext/f/SDh748j1Bybjj47AMbpcKxsw/medium.png

Atto:
Afbeeldingslocatie: http://tweakers.net/ext/f/Po4DnKU51zNTTNWmDj5Aew9P/medium.png

"I think i'm just gonna sit here and cry..."

Het lag dus aan CrystalDiskMark 8)7 8)7 8)7 8)7 8)7 8)7 8)7


Even wat meer benchmarks gedaan:
4k Random Write zonder ZIL (sync=disabled)
Test name	Latency	Avg iops	Avg MBps	cpu load
4K Random Writes	23.38	1368	5	1%

4k Random Write zonder ZIL (sync=enabled)
Test name	Latency	Avg iops	Avg MBps	cpu load
4K Random Writes	233.75	136	0	0%

4k Random Write met ZIL (sync=enabled)
Test name	Latency	Avg iops	Avg MBps	cpu load
4K Random Writes	41.66	767	2	0%

[ Voor 26% gewijzigd door FireDrunk op 15-11-2013 10:06 ]

Even niets...


Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

@FireDrunk inderdaad, squentieel heb je iig geen probleem!

De waardes zonder ZIL lijken me ook redelijk normaal. De waarde met ZIL is wellicht wat laag, maar ik durf niet helemaal te zeggen wat je dan wel zou moeten halen. Waarmee heb je dat getest (en in welk OS)? Kan ik dat aan mijn kant ook een testen. :)

p.s. Dat jij wel meer dan 65MB/sec aan reads haalt bevestigd weer eens dat volgens mij 2 van mijn langst gebruikte Intel Pro/1000 PT kaarten wat rot zijn geworden! Hopelijk snel de nieuwe kaarten binnen en kijken of mijn resultaten dan ook beter zijn! :D

[ Voor 29% gewijzigd door Quindor op 15-11-2013 10:13 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!
IOmeter onder Server 2012 R2
1M sectors (500MB bij mij)
32 outstanding I/Os

Acces Specification:
4KB transfer request size
100% random
Burst length 1 I/O
100% Write

2 minuten test tijd.

Even niets...


Acties:
  • 0 Henk 'm!

  • Mafketel
  • Registratie: Maart 2000
  • Laatst online: 17-10-2023
Verwijderd schreef op woensdag 13 november 2013 @ 06:30:
[...]
Wellicht kunnen we zelf een test draaien. Enige wat we nodig hebben is een disk met Current Pending Sectors nadat er een ZFS pool op staat, en er ook geen redundancy aanwezig is. Althans, dat zou je moeten testen, wel redundancy (soft timeout->weinig problemen) - geen redundancy (hard timeout - kans op recovery). Dat is althans wat je zou moeten zien. Als dat klopt, dan kun je nog steeds beter TLER disablen. Tenzij je misschien voor Solaris platform kiest, de test kan ook op Solaris en Linux platforms getest worden stel ik zo voor.
Ik geloof dat ik in mijn stapel rotzooi moet gaan zoeken of ik nog een van de deathstars of andere oude scsi / ata schijven in min of meer werkbare staat heb die aan dit scenario voldoen.
Nooit geweten dat die schijven nog nuttig werk zouden kunnen doen.

Acties:
  • 0 Henk 'm!
Ik heb ook nog wel een WD Black 2.5" 320GB schijfje liggen met bad sectors. Zal als ik tijd heb eens kijken, word dit weekend denk ik. Nadeel is alleen dat die Black's volgens mij compleet geen error recovery doen (TLER = 0)

Even niets...


Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

@FireDrunk

Ik ben aan het testen maar op dit moment nog via iSCSI (Ik doe daarna wel een vMotion naar de NFS store, zelfde disk) maar ik haal belachelijk hoge resultaten. :P

Test name 4K Random Writes, 2 minutes, 32 outstanding, 1 worker
Avg Latency 1.1770 ms
Avg iops 27392.64
Avg MBps 107
cpu load 10.06%

Met 2 workers loop ik tegen de 140MB/sec aan wat op dit moment een limiet is met mijn netwerk kaarten voor reads vanaf de ZFSguru machine. Dat hoop ik met een andere NIC op te lossen.

Ik verwacht dat dat komt omdat mijn pool overal LZ4 compressie aan heeft staan, waardoor de massa's aan Random I/O gecomprimeerd worden tot enkele bytes aangezien het toch allemaal 0000000 zijn. ;)

Ik ben bang dat ik het dus ook niet helemaal valide zijn, we voor de verbinding maar niet voor echte disk I/O benchmarks. Ik zal de VM zo eens naar de NFS mount verhuizen en ook eventjes met AS-SSD testen, die gebruikt ook random data.

[ Voor 29% gewijzigd door Quindor op 15-11-2013 13:01 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!
Dat zou zeker goed kunnen inderdaad. Heb je Sync uit staan?

Even niets...


Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

FireDrunk schreef op vrijdag 15 november 2013 @ 13:01:
Dat zou zeker goed kunnen inderdaad. Heb je Sync uit staan?
Daar heb ik nooit iets in aangepast dus staat op "Standard (recommended)". De command line tools bevestigen dat ook "RAIDz1-4TB sync standard default".

update--iSCSI results
AS-SSD geeft inderdaad wat meer realistische waardes:
Read Write
Seq 152,77 197,22
4K 3,72 3,48
4K-64 98,67 109,73
Acc.time 0,366 1,040

Score 118 , 133 , total=314

Dat lijkt er meer op, hoewel ik e 4K-64Thrd random nog steeds vrij hoog vind.

update----NFS results
Read Write
Seq 50,64 89,69
4K 3,78 3,49
4K-64 64,32 21,12
Acc.time 1,873 1,108

Score 73 , 34 , total=147

[ Voor 46% gewijzigd door Quindor op 15-11-2013 16:12 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!
Je hebt toch een ZIL, dan valt dat toch wel mee?
Als je er op gaat hangen, zie je het aantal IOPS.

Even niets...


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Firedrunk,

ik zie niets wat overduidelijk fout configureerd is aan de zpool's noch de datasets. atime=off compression=on logbias=latency. Laat je datapool aub nog even op version=28 staan, dat geeft je meer mogelijkheden. Als je de async snapshot destroy niet nodig hebt wacht dan nog even met upgraden. Ook de lz4 compressie kan wel even wachten.

De reden van geen windows is dat daar veel minder tools voor zijn om een goede diagnose te stellen.

Later post je een prachtige ATTO score die overeenkomt met een volle gbit lijn??? Hoe kan dat nu?

Dan doe je drie testjes met verwarrende begrippen en niet beschreven procedure/applicatie en onbekende target. Ik denk dat ik snap wat je hebt gedaan en het ziet er wel plausibel uit maar wat nadere uitleg zou welkom zijn.

Er zijn drie relevante begrippen
-de ZIL
-een SLOG
-de optie sync van een ZFS dataset

-de ZIL ZFS Intent Log is een transactie log waarin uit te voeren writes met de SYNC vlag komen te staan. Zodra de write is opgeslagen in de ZIL beantwoord ZFS de opdracht met afgehandeld. Maar dat is niet alles. Tegelijk verzamelt ZFS deze writes in reguliere asynchrone TXG's. Deze worden periodiek als grote stream weggeschreven. Heel veel random writes worden plots een efficiente stream. De ZIL is er altijd en kan niet worden disabled, wel kan je er geen gebruik van maken.
-de SLOG, Separate Intent Log is een block device/drive/lun waarop de ZIL kan worden geschreven. Door een SLOG toe tevoegen aan je zpool voorkom je dat de ZIL je data vdevs belast. Zonder SLOG wordt per write eerst een entry voor de ZIL gemaakt en daarna als de async buffer vol zit of tijd om te flushen wordt de async buffer weggeschreven. Netto schrijf je dan twee keer de data, een keer met per write een flush en nog een keer als grote stream als de TXG's worden weggeschreven. Dat zorgt ervoor dat je writes op een NFS datastore zo slecht zijn. Daar bovenop komt dat raidz heel slecht is in random i/o. Tel uit je verlies.
-de optie sync van een ZFS dataset. Door hier sync=disabled in te stellen bypass je de ZIL voor alle write naar deze dataset. Veel NFS servers doen dit ook, die liegen als ze een sync write binnen krijgen, en geven onmiddelijk ok terug. De data staat dan nog in ram of diverse caches. Bij een reset/powerloss ben je de data kwijt. De sync=disabled in te stellen voor een dataset kan je standaard 5 seconden aan writes verliezen.

Samenvattend:
-een SLOG kan je toevoegen aan je zpool. (je kan geen ZIL toevoegen, die is er altijd)
-de ZIL kan je bypassen via sync=disabled. (je kan de ZIL niet uitschakelen)

Dan nog even voor het testen. Maak altijd een extra vmdk aan als test target. Nooit op je boot disk, achtergrond i/o verstoord de test. Je kan je test vmdk dan ook op een andere datastore zetten, bijv met een andere compressie instelling.

Hier is een oneliner om je zpool te testen:
> dd if=/dev/zero of=./1GB.tmp oflag=sync bs=4K count=256K
Dit is het maximale wat je van je zpool kan verwachten.
Dit zijn de relevante varianten die je zou moeten testen om de extremen op te zoeken:
ZET EERST COMPRESSIE UIT VOOR JE DATASET of test of /dev/random voldoende snel data kan leveren
-zpool zonder SLOG en dataset met sync=enabled en dd zonder de sync flag -> de maximale sequentiele snelheid van je zpool met 4K writes (de hooste snelheid)
-zpool zonder SLOG en dataset met sync=enabled en dd MET de sync flag -> de maximale sequentiele snelheid van je zpool met sync 4K writes (de laagste snelheid)
-zpool zonder SLOG en dataset met sync=DISABLED en dd MET de sync flag -> zou gelijk moeten zijn aan de eerste test.
-zpool met SLOG en dataset met sync=ENABLED en dd MET de sync flag -> ligt er tussenin. performance hangt af van de SLOG. Meerdere SLOGS stripen helpt. Een ramdisk is een slecht plan. Beter om te kiezen voor sync=disabled.

Deze testen lokaal uitgevoerd leveren de maximaal te verwachten prestaties op. Random i/o doet het slechter net als kleinere blocksizes. Dit is een redelijke test om de maxima te bepalen. Rommelen met de blocksize van dd zal hogere scores opleveren maar als dat niet overeen komt met de writes van ESXi en dan hou je jezelf voor de gek. 4K tot max 64K is wat je kan verwachten, verwacht eerder 4K dan 64K. Daarnaast doet ESXi nog een heleboel kleine writes. DTrace is your friend...

Als je nu ook dd uitvoerd in een vm weet je hoeveel je verliest door de hele keten van guest, esxi, nfs netwerk switch etc. Boven de 120MB/sec kom je niet met GE en 8MB/sec vond ik heel goed voor een RAIDZ1 pool zonder SLOG.

Succes, ik hoop dat je de testen hierboven wilt uitvoeren en posten. Ik ben benieuwd!

[ Voor 3% gewijzigd door tvwes op 15-11-2013 21:11 ]


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Quindor,

je NFS scores zien er redelijk uit. Ik vermoed dat de iSCSI wordt vertekend door een WriteCache op de lun. (Indien er een actieve writecache op de lun is raak je data kwijt bij een reset/powerloss)
Lees aub even mijn post hierboven voor de ZIL SLOG uitleg. Je zou eigenlijk die dingen moeten renamen van ZIL-4TB_1 naar SLOG-4TB_1. Mooi dat je twee SLOG's hebt dat scheelt zeker in de performance, vandaar denk ik ook je redelijke NFS scores. Kan je aub uitleggen welke hardware er achter zit en hoe dit precies is toegewezen. Ik kan je zpool status output niet correleren met physieke drives.
De testen in de post hierboven zijn ook voor jouw handig, het geeft een beetje richting in wat je maximaal kan verwachten.

Oh ja en om het comprimeren van nullen te voorkomen kan je natuurlijk on the fly even je compressie uit zetten.

Succes.

[ Voor 7% gewijzigd door tvwes op 15-11-2013 21:14 ]


Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

@tvwes

Mijn setup is nog erg nieuw en ik ben hier en daar nog aan het testen en tunen, maar ik heb gelukkig een vrij brede achtergrond met meer traditionele vormen van storage, dus dat komt allemaal goed! Je hebt gelijk inderdaad dat wat ik ZIL heb genoemed eigenlijk SLOG zou moeten heten, maar ik heb mijn design enkele weken terug gemaakt, en toen wist ik dat nog niet. ;)

Any day is a good day to learn!

Ik ben bezig mijn ervaring deels vast te leggen op een blog van me, ik denk dat dat ook de makkelijkste plek is om mijn configuratie te vinden. Ik heb artikel alvast gepublished maar er word nog aan gewerkt! Zie: http://blog.quindorian.or...gelab-setup-part-3-x.html

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Quindor

Dat ziet er mooi uit. Ik snap je setup beter. Goed dat je de SSD zo ruim hebt overprovisioned. Zo gaan de SSD's langer mee en blijven goed presteren, wat je zelf al had geschreven.

Ik kan weinig toevoegen aan je setup. De striping van de SLOG's helpt veel. Een nit is dat de SLOG's te ruim zijn. Vuist regel is 5 seconden wat je max kan binnen krijgen. Dan is 1GB voor 1gbit ethernet al ruim. Zelfs dat krijg je niet vol. Bij FC, IB of 10GE wordt het natuurlijk anders.
Iets wat je misschien kan overwegen is de L2ARC te schrappen en die ruimte te gebruiken als zpool voor je vm's. Dat maakt pas een verschil. In mijn werk zie ik vaak L2ARC die nauwelijks worden gebruikt. Je kan evt de data van je vm's op je "gewone" zpool zetten, die dankzij de slog nog steeds snel is. Maar niet zo snel als je ssd pool. Je kan een mooie 100GB mirror maken, waar je echt wel wat vm's op kwijt kan.
Als je daar interesse in hebt zijn er nog een paar belangrijke tweaks voor die setup.

Misschien met voldoende configuratie kan je al je harddisks downspinnen en alleen je ssds gebruiken.

Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

@tvwes

I thought of that. ;)

Mijn ESXi server heeft zelf 1.2TB aan SATA600 SSD's juist om die reden. Daarop draaien mijn Home/24Hr/Performance VM's. De iSCSI koppeling is puur voor test systemen (Ik werk veel met Enterprise backup paketten) die veel storage nodig hebben.

Mijn ZIL/SLOG is achteraf te groot inderdaad, maar die paar GB mis ik niet zo. Die Vertex 2's had ik 'over' omdat ze niet functioneren op Haswell systemen dus ik vond het leuk om er eens mee te gaan testen. Ook zijn het beide nog 34nm SSD's dus kunnen ze aardig wat writes verwerken, dus dat kwam allemaal mooi uit! Vandaar een te grote ZIL/SLOG en ook een grote L2ARC (Maar niet te groot dat het mijn ARC geheugen opvreet). :)

En verder vind ik over-provisioning een must. Zeker bij de 1ste en 2de generatie SSD controllers is het denk ik in 60% van de gevallen dat er eentje 'stuk' ging geweest dat ze de controller niet genoeg lucht gaven. Stom dat je er rekening mee moet houden, maar het is toch echt zo. Het houd ze langer 'fris'. En de testen van Anandtech laten hier duidelijk zien wat voor voordeel er mee te behalen is!

Een volgend artikel zal ingaan op tweaks, etc. die ik heb gedaan tot nu toe. Inmiddels heb ik dit artikel ook al voor een groot deel aangepast!

Thnx's for the comments. :)

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
1.2TB aan SSD's en dan klagen sommige mensen hier dat ik met dure voorstellen kom. (bijv drives met TLER of wat ECC geheugen)

Nog even over overprovisioning, dat blijft actueel. Sommige fabrikanten hebben zelfs een lijn waar het in hardware is gedaan. Bijvoorbeeld de Seagate 600 PRO 240GB of 200GB die laatste is 40GB out of the box overprovisioned. Voor bijv VM datastores is het van het grootste belang dat je performance niet op een gegeven moment in elkaar stort. Moet jij niet minimaal storagereview.com aanhalen ipv anand?

Nou ja als het allemaal test is dan maakt het niet zoveel uit. Hou die L2ARC maar eens goed in de gaten, je zal verbaasd staan hoe laag je hit ratio zal zijn. Alles van streams komt er eigenlijk niet in. VM's wel maar ik vermoed dat je met 24GB nu of straks 32GB aan ARC prima uit de voeten kunt.

Mocht je wat willen weten dan hoor ik het wel.

Succes.

Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Ja, wat betreft die overprovisioning..
tvwes schreef op vrijdag 15 november 2013 @ 22:25:
@Quindor
.. Goed dat je de SSD zo ruim hebt overprovisioned. Zo gaan de SSD's langer mee en blijven goed presteren, wat je zelf al had geschreven.
Hoezo gaan ze langer mee met overprovisioning?
En hoezo gaan ze langer mee met meer overprovisioning?
Ik zie dat niet zo.

(Wel relatief aan de hoeveelheid data die je er op zet natuurlijk; zet je er nooit wat op gaan ze ook niet kapot, maar heb je er niets aan)

Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Durandal schreef op vrijdag 15 november 2013 @ 23:08:
Ja, wat betreft die overprovisioning..


[...]


Hoezo gaan ze langer mee met overprovisioning?
En hoezo gaan ze langer mee met meer overprovisioning?
Ik zie dat niet zo.

(Wel relatief aan de hoeveelheid data die je er op zet natuurlijk; zet je er nooit wat op gaan ze ook niet kapot, maar heb je er niets aan)
Dat komt omdat controllers intern aan verschillende zaken doen (garbage collection, sector consolidation, wear leveling, etc.) wat inhoud dat op de SSD zelf je data geregeld verplaatst word tussen de aanwezige cellen. Dat noemen ze de "Write Amplification Factor".

Als hij hier meer 'rust' in heeft zal dit minder rigoureus hoeven te gebeuren waardoor je write amplification factor lager word. Zeker omdat bijvoorbeeld ESXi of FreeBSD geen TRIM ondersteunen is dat heel belangrijk.

In een SSD als een cell niet leeg is word deze eerst leeg gemaakt en dan pas overnieuw geschreven. Dit kost performance en maakt de latency en het gedrag van de SSD onvoorspelbaar (Niet gewenst in een Enterprise omgeving). Vandaar ook dat bijvoorbeeld de nieuwere Intel DC3700 SSD's een gigantische overprovisioning hebben.

Hoe het precies werkt per controller is verschillend (sandforce gebruikt om die reden compressie&deduplicatie intern) maar er word wel eens geschreven dat een controller met 7% vrije ruimte of met 20% van de ruimte de levensduur tot ~3x zo lang kan maken vanwege de 'lucht' die de onboard controllers krijgen wat effectief komt door een lagere write amplification factor.

Anandtech test sinds die tijd ook wat het effect is op elke nieuwe SSD die uitkomt en dan kan best schokkend zijn soms! (Over Anandtech, ik ben gewoon wat meer fan van die site, goede analyze's zonder commerciële onzin er omheen!)


Het is eventjes raar om in het begin in je hoofd te krijgen, maar daarna is het wel logisch.

[ Voor 21% gewijzigd door Quindor op 15-11-2013 23:30 ]

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
zie Wikipedia: Write amplification voor een uitgebreide beschrijving

hier wat modellen met over provisioning en waarom

http://www.tomshardware.c...ro-ssd-review,3498-4.html

of deze voor het verschil tussen met en zonder:

http://www.theregister.co...05/08/seagate_gen3_flash/

scroll naar halverwege het artikel en vergelijk de gewone modellen met extra gigabytes en de modellen rechts met minder gigabytes.
De modellen met over provisioning hebben betere prestaties en gaan langer mee dat laatste heet endurance.

Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Quindor schreef op vrijdag 15 november 2013 @ 23:16:
[...]
Het is eventjes raar om in het begin in je hoofd te krijgen, maar daarna is het wel logisch.
Yep got it, thanks.

Ik dacht dat het niet uit maaktte omdat en cel nu eenmaal na x keer schrijven kapot gaat (gemiddeld) maar er speelt dus meer mee.

Wat is in de regel dus een goede overprovisioning voor SSD? 20%?

[ Voor 8% gewijzigd door Durandal op 15-11-2013 23:53 ]


Acties:
  • 0 Henk 'm!

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

Ik heb een tweemaal een RAIDZ-1 setup. Eentje met 4x1,5TB en eentje met 5x1TB. In eerstgenoemde staat een disk op unavailable en in de tweede op removed. Beide disks zijn echter gewoon te zien als ik op view disks druk. Een reboot lost het ook niet op en een replace werkt op beiden niet. Wat kan ik doen?

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
Tsurany schreef op vrijdag 15 november 2013 @ 23:53:
Ik heb een tweemaal een RAIDZ-1 setup. Eentje met 4x1,5TB en eentje met 5x1TB. In eerstgenoemde staat een disk op unavailable en in de tweede op removed. Beide disks zijn echter gewoon te zien als ik op view disks druk. Een reboot lost het ook niet op en een replace werkt op beiden niet. Wat kan ik doen?
Welk OS/software gebruik je? Je drukt ergens op; ZFSGuru?
Kan je een 'zpool status' commando geven op de prompt? (en hier even afdrukken ;) )

Acties:
  • 0 Henk 'm!

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

Oh sorry, vergeten. Ik gebruik FreeNAS.

pool: DataVolume
state: DEGRADED
status: One or more devices could not be opened. Sufficient replicas exist for
the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
see: http://illumos.org/msg/ZFS-8000-2Q
scan: resilvered 9.57M in 0h1m with 0 errors on Fri Nov 15 23:39:37 2013
config:

NAME STATE READ WRITE CKSUM
DataVolume DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
gptid/251d1964-ecff-11e2-babe-000c296c55f0 ONLINE 0 0 0
gptid/25a8516f-ecff-11e2-babe-000c296c55f0 ONLINE 0 0 0
3638313919556139557 REMOVED 0 0 0 was /dev/gptid/50f91b78-4be6-11e3-9baf-000c296c5
5f0
gptid/269a4aff-ecff-11e2-babe-000c296c55f0 ONLINE 0 0 0
gptid/27183be5-ecff-11e2-babe-000c296c55f0 ONLINE 0 0 0
raidz1-1 DEGRADED 0 0 0
gptid/7210dc32-ee63-11e2-9886-000c29671366 ONLINE 0 0 0
gptid/803a6831-ee63-11e2-9886-000c29671366 ONLINE 0 0 0
14864866277813568435 UNAVAIL 0 0 0 was /dev/gptid/850e2bae-ee63-11e2-9886-000c29671
366
gptid/89b50c74-ee63-11e2-9886-000c29671366 ONLINE 0 0 0

errors: No known data errors

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


Acties:
  • 0 Henk 'm!

  • Moikvin
  • Registratie: September 2013
  • Laatst online: 02-08-2022
tvwes schreef op vrijdag 15 november 2013 @ 22:25:
@Quindor

Dat ziet er mooi uit. Ik snap je setup beter. Goed dat je de SSD zo ruim hebt overprovisioned. Zo gaan de SSD's langer mee en blijven goed presteren, wat je zelf al had geschreven.

Ik kan weinig toevoegen aan je setup. De striping van de SLOG's helpt veel. Een nit is dat de SLOG's te ruim zijn. Vuist regel is 5 seconden wat je max kan binnen krijgen. Dan is 1GB voor 1gbit ethernet al ruim. Zelfs dat krijg je niet vol. Bij FC, IB of 10GE wordt het natuurlijk anders.
Iets wat je misschien kan overwegen is de L2ARC te schrappen en die ruimte te gebruiken als zpool voor je vm's. Dat maakt pas een verschil. In mijn werk zie ik vaak L2ARC die nauwelijks worden gebruikt. Je kan evt de data van je vm's op je "gewone" zpool zetten, die dankzij de slog nog steeds snel is. Maar niet zo snel als je ssd pool. Je kan een mooie 100GB mirror maken, waar je echt wel wat vm's op kwijt kan.
Als je daar interesse in hebt zijn er nog een paar belangrijke tweaks voor die setup.

Misschien met voldoende configuratie kan je al je harddisks downspinnen en alleen je ssds gebruiken.
Wat ik me nu afvraag is het volgende:
Als je een zpool van SSD's hebt, heeft het dan nog zin een SLOG te gebruiken?(bb mem daar gelaten)


Baal trouwens best van het feit dat ESX alle writes sync wil, heb nu gewoon heel snel een bottleneck in redelijke SLOG.

[ Voor 4% gewijzigd door Moikvin op 16-11-2013 00:09 ]


Acties:
  • 0 Henk 'm!

  • Durandal
  • Registratie: Juli 2002
  • Laatst online: 19:40
@Tsurany
Je hebt nog geen data op de pool (resilver is 9MB)? Dan zou ik die 'zpool online <pool><disk>' uitvoeren.
Anders moet je even wachten op Freenas help.

Acties:
  • 0 Henk 'm!

  • Tsurany
  • Registratie: Juni 2006
  • Niet online

Tsurany

⭐⭐⭐⭐⭐

De pool staat helaas vol met data die ik niet graag kwijt wil raken.

SMA SB5.0 + 16x Jinko 310wp OWO + 10x Jinko 310wp WNW |--|--| Daikin 4MXM68N + 1x FTXA50AW + 3x FTXM20N


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Moikvin
Als je een zpool van SSD's hebt, heeft het dan nog zin een SLOG te gebruiken?
Lastig om daar een antwoord op te geven.
Er zijn een aantal factoren:
  • Allereerst heb je uberhaubt sync writes? (Zie een lange post van mij gisteren over ZIL/SLOG en sync)
  • Als je sync writes hebt en de ZIL gebruikt. Dan worden al deze writes 2x gedaan (zie de eerdere post voor verklaring)
  • Afhankelijke van het aantal writes wat je maximaal kan verwachten kan het zijn dat je SSD's het niet bij kunnen houden en dat je daarom alsnog een losse SLOG nodig hebt.
  • Betere reden voor een losse SLOG is slijtage en daarmee ook betrouwbaarheid. (zie ook eerdere posts)
  • De ene SSD is de andere niet. Heel lastig hier iets over te zeggen.
Maar een all SSD pool evt met extra SLOG's is super voor:
  • alles wat (random) i/o intensief is
  • alle vm toepassingen
  • database's

Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

Moikvin schreef op zaterdag 16 november 2013 @ 00:02:
[...]


Wat ik me nu afvraag is het volgende:
Als je een zpool van SSD's hebt, heeft het dan nog zin een SLOG te gebruiken?(bb mem daar gelaten)


Baal trouwens best van het feit dat ESX alle writes sync wil, heb nu gewoon heel snel een bottleneck in redelijke SLOG.
Er zijn gevallen waar het nog steeds uit kan maken. Het ligt heel erg aan de characteristieken van de SSD's en waar de pool voor gebruikt word.

Als je bijvoorbeeld een ZIL/SLOG koopt op basis van een (of meerdere) PCIe DDRdrive (PCIe kaart met daarop DDR RAM met battery pack) dan kan deze nog steeds een lagere latency and betere doorvoer snelheid hebben dan de SSD pool.

Maar goed, dan hebben we het over een server met multiple 10Gbit aansluitingen, etc. _/-\o_

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • tvwes
  • Registratie: Augustus 2013
  • Laatst online: 06-04-2022
@Quindor
Toppertje, de DDRdrive en verslijt niet.
Ik zie hem vaker in gbit machines dan servers met snellere interfaces. Als fileserver, maar ook voor databases etc. (juist die laatste groep kan vaak prima met gbit uit de voeten)
Voor meerdere 10GE heb je ook meerdere DDRdrives nodig om het bij te kunnen benen. Voor IB moet ik wel meerdere stripen. Ik heb geen ervaring met 40GE.

Acties:
  • 0 Henk 'm!

  • Quindor
  • Registratie: Augustus 2000
  • Laatst online: 17-09 14:50

Quindor

Switching the universe....

tvwes schreef op zaterdag 16 november 2013 @ 00:26:
@Quindor
Toppertje, de DDRdrive en verslijt niet.
Ik zie hem vaker in gbit machines dan servers met snellere interfaces. Als fileserver, maar ook voor databases etc. (juist die laatste groep kan vaak prima met gbit uit de voeten)
Voor meerdere 10GE heb je ook meerdere DDRdrives nodig om het bij te kunnen benen. Voor IB moet ik wel meerdere stripen. Ik heb geen ervaring met 40GE.
Hahaha, ik verander mijn post om 'meerdere' erbij te zetten en vervolgens lees ik jou post die dat ook omschrijft. Helaas is de doorvoer van zo'n DDRdrive niet zo geweldig maar de latency is wel super.

Wel top dat je zoveel ervaring hebt met Enterprise ZFS systemen! Ik kom ze nog niet zoveel tegen, hier en daar een verdwaalde Nexenta op basis van SuperMicro systemen maar verder nog niet echt. Jammer, aangezien het echt mooi spul is, maar veelal hebben de grotere storage vendors nog een te grote voet in de deur (hoofd) zodat ze niet zomaar verdwijnen. Maar dat gaat komende jaren wel goed komen verwacht ik. ;)

Intermit.Tech YouTube Kanaal, Intermit.Tech Blog, QuinLED


Acties:
  • 0 Henk 'm!

  • Moikvin
  • Registratie: September 2013
  • Laatst online: 02-08-2022
Quindor schreef op zaterdag 16 november 2013 @ 00:28:
[...]

Hahaha, ik verander mijn post om 'meerdere' erbij te zetten en vervolgens lees ik jou post die dat ook omschrijft. Helaas is de doorvoer van zo'n DDRdrive niet zo geweldig maar de latency is wel super.

Wel top dat je zoveel ervaring hebt met Enterprise ZFS systemen! Ik kom ze nog niet zoveel tegen, hier en daar een verdwaalde Nexenta op basis van SuperMicro systemen maar verder nog niet echt. Jammer, aangezien het echt mooi spul is, maar veelal hebben de grotere storage vendors nog een te grote voet in de deur (hoofd) zodat ze niet zomaar verdwijnen. Maar dat gaat komende jaren wel goed komen verwacht ik. ;)
Is natuurlijk moeilijk met support-contracten en het doe-het-zelven dat erbij komt kijken.

Bedankt voor de uitleg over evt. SLOG bij een ssd-zpool.


Iemand trouwens ervaring met VDI-omgevingen op ZFS?
Ik zit een beetje te puzzelen met wat nou eigenlijk het beste is voor zo'n omgeving.

Op dit moment zit er een bottleneck in de samsung evo 120gb als SLOG. De disks er achter redden het nog wel(stripe over 3 mirror pairs). Zo'n DDRdrive is nogal duur helaas.

Door linked-clone techniek kan er heel efficient gebruik gemaakt worden van ARC/L2ARC en diskspace maar toch zonde dat er een bottleneck aan de write kant zit.
Pagina: 1 ... 93 ... 214 Laatste

Let op:
Voor het bouwen van een ZFS NAS en andere hardwarevragen kun je beter terecht in Het grote DIY RAID NAS topic deel 3, zodat we dit topic reserveren voor ZFS-specifieke vragen en discussies.