/[zfs-foredrag]/trunk/zfs-foredrag.tex
ViewVC logotype

Diff of /trunk/zfs-foredrag.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 9 by trond, 2014-01-02T11:53:00Z Revision 10 by trond, 2014-01-03T12:51:58Z
# Line 155  Line 155 
155      \item Tilbyr også «zvolumer» som lagringsenheter for andre      \item Tilbyr også «zvolumer» som lagringsenheter for andre
156        filsystemer        filsystemer
157      \end{enumerate}      \end{enumerate}
158    \item ZFS tar dataintegritet på alvor; hastighet kommer i senere rekker    \item ZFS tar dataintegritet på alvor, deretter brukervennlighet; hastighet kommer i senere rekker
159    \item Enklere organisering enn «Storage Spaces» i Microsoft Windows    \item Enklere organisering enn «Storage Spaces» i Microsoft Windows
160      Server 2012      Server 2012
161    \item Lagringen organiseres i pooler som kan bestå av    \item Lagringen organiseres i pooler som kan bestå av
# Line 171  Line 171 
171        flere disker\slash partisjoner        flere disker\slash partisjoner
172      \end{enumerate}      \end{enumerate}
173    \item Visse kombinasjoner av det overstående er også mulig    \item Visse kombinasjoner av det overstående er også mulig
174      \item Filsystemet blir opprettet samtidig med poolen
175    \end{itemize}    \end{itemize}
176  \end{frame}  \end{frame}
177    
178    \section{Et eksempel på en pool}
179    \begin{frame}[fragile]%[allowframebreaks]
180      \frametitle{Et eksempel på en pool}
181      \pause
182    \begin{Verbatim}[commandchars=\\\{\},fontsize=\tiny]
183    trond@enterprise:~>\Alert{3|handout:0}{zpool status enterprise_zdata}
184      pool: \Alert{4,7|handout:0}{enterprise_zdata}
185     state: \Alert{7|handout:0}{ONLINE}
186      scan: \Alert{10|handout:0}{scrub repaired 0 in 2h15m with 0 errors on Wed Jan  1 07:18:51 2014}
187    config:
188    
189            NAME              STATE     READ WRITE CKSUM
190            \Alert{4,7|handout:0}{enterprise_zdata}  \Alert{7|handout:0}{ONLINE}       \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}
191                    \Alert{5,8|handout:0}{raidz1-0}  \Alert{8|handout:0}{ONLINE}       \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}
192                      \Alert{6,8|handout:0}{ada2}    \Alert{8|handout:0}{ONLINE}       \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}
193                      \Alert{6,8|handout:0}{ada3}    \Alert{8|handout:0}{ONLINE}       \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}
194                      \Alert{6,8|handout:0}{ada4}    \Alert{8|handout:0}{ONLINE}       \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}     \Alert{9|handout:0}{0}
195    
196    \Alert{11|handout:0}{errors: No known data errors}
197    trond@enterprise:~>\Alert{11|handout:0}{zfs get creation enterprise_zdata}
198    NAME              PROPERTY  VALUE                  SOURCE
199    enterprise_zdata  creation  \Alert{11|handout:0}{Sun Jan  8 14:14 2012}  -
200    \end{Verbatim}
201      \pause
202      \begin{multicols}{2}
203      \begin{itemize}[<+->]
204      \item Kommando for status%: \texttt{zpool status enterprise\_zdata}
205      \item Poolen heter \texttt{enterprise\_zdata}
206      \item Består av én «vdev» («virtual device»), \texttt{raidz1}, striping med enkel paritet
207      \item Medlemmene er de tre harddiskene \texttt{ada2}, \texttt{ada3} og \texttt{ada4}
208      \item Poolen har det bare bra og er \texttt{ONLINE}
209      \item Det samme gjelder for vdeven og dens tre medlemmer
210      \item Null i telleverkene
211      \item Siste skrubbing avsluttet 1.~januar 2014, kl.~07:18:15%, etter omlag 2 timer og 15 minutter med gjennomlesing
212      \item Ingen feil registrert siden 8.~januar 2012, kl.~14:14
213      \end{itemize}
214      \end{multicols}
215    \end{frame}
216    
217  \section{Hva er grensene til ZFS?}  \section{Hva er grensene til ZFS?}
218  \begin{frame}%[allowframebreaks]  \begin{frame}%[allowframebreaks]
219    \frametitle{Hva er grensene til ZFS?}    \frametitle{Hva er grensene til ZFS?}
# Line 212  Line 252 
252      \item Skriver oppdatert paritet til de samme paritetsblokkene som      \item Skriver oppdatert paritet til de samme paritetsblokkene som
253        tidligere        tidligere
254        \begin{itemize}[<+->]        \begin{itemize}[<+->]
255        \item Hva skjer nå \textit{og\/} senere hvis du får strømbrudd        \item Hva skjer \textit{nå\/} og \textit{senere\/} hvis du får
256          mellom punktene 1 og 4?          strømbrudd mellom punktene 1 og 4?
257        \item Har diskkontrolleren batteribeskyttet minne?        \item Har diskkontrolleren batteribeskyttet minne?
258        \end{itemize}        \end{itemize}
259      \end{enumerate}      \end{enumerate}
260    \item ZFS skriver fulle striper; data og paritet samtidig    \item ZFS skriver komplette striper; data og paritet samtidig
261    \item ZFS bruker «copy-on-write»; skriver nye data til ledige    \item ZFS bruker «copy-on-write»; skriver nye data til ledige
262      diskblokker      diskblokker
263    \item Endringer som hører sammen, samles i transaksjonsgrupper    \item Endringer som hører sammen, samles i transaksjonsgrupper («txg»)
264    \item Sjekksummer brukes for alt som blir lagret    \item Sjekksummer brukes for alt som blir lagret
265      \begin{itemize}[<+->]      \begin{itemize}[<+->]
266      \item ZFS kontrollerer at leste data er de samme som ble skrevet      \item ZFS kontrollerer at leste data er de samme som ble skrevet
# Line 228  Line 268 
268      \item Finnes alternativer, enten speilkopier eller paritet, så      \item Finnes alternativer, enten speilkopier eller paritet, så
269        \begin{enumerate}[<+->]        \begin{enumerate}[<+->]
270        \item Leveres korrekte data til applikasjonen, og        \item Leveres korrekte data til applikasjonen, og
271        \item Avviket korrigeres automatisk på den syke disken        \item Avviket korrigeres automatisk på den syke disken («resilver»)
272        \end{enumerate}        \end{enumerate}
273      \item Finnes ingen alternativer, så må filene restaureres fra      \item Finnes ingen alternativer, så må filene restaureres fra
274        backup        backup
# Line 243  Line 283 
283    \begin{itemize}[<+->]    \begin{itemize}[<+->]
284    \item \alert{Ikke} bruk ZFS sammen med RAID-kontrollere!    \item \alert{Ikke} bruk ZFS sammen med RAID-kontrollere!
285    \item RAID-kontrolleren kan i verste fall motarbeide ZFS    \item RAID-kontrolleren kan i verste fall motarbeide ZFS
286        \begin{itemize}[<+->]
287        \item RAID-kontrolleren kan finne på å
288          \begin{itemize}[<+->]
289          \item Stokke om på skriverekkefølgen
290          \item Utsette skriving av nye data
291          \end{itemize}
292        \item Har du skifta batteriet i RAID-kontrolleren?
293        \end{itemize}
294    \item Sett RAID-kontrolleren i JBOD-modus, eller    \item Sett RAID-kontrolleren i JBOD-modus, eller
295    \item La hver harddisk være sitt enslige RAID~0-volum    \item La hver harddisk være sitt enslige RAID~0-volum
296    \end{itemize}    \end{itemize}
# Line 255  Line 303 
303    \begin{itemize}[<+->]    \begin{itemize}[<+->]
304    \item Utviklet av Jeffrey Bonwick, Matthew Ahrens og flere kollegaer    \item Utviklet av Jeffrey Bonwick, Matthew Ahrens og flere kollegaer
305      ved Sun Microsystems, Inc.      ved Sun Microsystems, Inc.
306    \item Arbeidet begynte i 2001    \item Arbeidet begynte i 2001 og første prototyp ble ferdig 31.\
307    \item Første prototyp ble ferdig 31.\ oktober 2001 (halloween)      oktober 2001 (halloween)
308    \item ZFS $\to$ Solaris, oktober 2005    \item ZFS $\to$ Solaris, oktober 2005
309    \item ZFS er lisensiert etter «Common Development and Distribution    \item ZFS er lisensiert etter «Common Development and Distribution
310      License» (CDDL)      License» (CDDL)
# Line 290  Line 338 
338    \item illumos har gått videre til feature-flags og pool-versjon 5000    \item illumos har gått videre til feature-flags og pool-versjon 5000
339    \item De fleste OS-er utenom Solaris, samarbeider om    \item De fleste OS-er utenom Solaris, samarbeider om
340      videreutviklingen av illumos-varianten      videreutviklingen av illumos-varianten
341      \item Listene på de neste slidene er kopiert fra
342        \texttt{\url{http://en.wikipedia.org/wiki/ZFS}}
343    \end{itemize}    \end{itemize}
344  \end{frame}  \end{frame}
345    
# Line 305  Line 355 
355      accounting      accounting
356    \item zpool history    \item zpool history
357    \item gzip compression for ZFS datasets    \item gzip compression for ZFS datasets
358    \item "\texttt{bootfs}" pool property    \item "\texttt{bootfs}"\ pool property
359    \item ZIL: adds the capability to specify a separate Intent Log    \item ZIL: adds the capability to specify a separate Intent Log
360      device or devices      device or devices
361    \item ability to delegate \texttt{zfs}(1M) administrative tasks to ordinary    \item ability to delegate \texttt{zfs}(1M) administrative tasks to ordinary
# Line 418  Line 468 
468    \frametitle{Administrasjon av ZFS}    \frametitle{Administrasjon av ZFS}
469    \pause    \pause
470    \begin{itemize}[<+->]    \begin{itemize}[<+->]
471    \item To kommandoer (med underkommandoer):    \item To kommandoer (med underkommandoer)
472      \begin{enumerate}[<+->]      \begin{enumerate}[<+->]
473      \item \texttt{zpool}      \item \texttt{zpool}
474        \begin{itemize}[<+->]        \begin{itemize}[<+->]
# Line 426  Line 476 
476        \end{itemize}        \end{itemize}
477      \item \texttt{zfs}      \item \texttt{zfs}
478        \begin{itemize}[<+->]        \begin{itemize}[<+->]
479        \item Administrasjon av filsystemer, snapshots, kloner, m.m.        \item Administrasjon av filsystemer, zvolumer, snapshots, kloner, m.m.
480        \end{itemize}        \end{itemize}
481      \end{enumerate}      \end{enumerate}
482    \item Det finnes en tredje kommando for de nysgjerrige: \texttt{zdb}    \item Det finnes en tredje kommando: \texttt{zdb}
483      \begin{itemize}[<+->]      \begin{itemize}[<+->]
484      \item Brukes for å avlese indre ZFS-detaljer      \item Brukes for å avlese de indre detaljene til ZFS
485        \item Bør bare brukes av eksperter \dots
486        \item \dots\ eller av de nysgjerrige
487      \end{itemize}      \end{itemize}
488    \end{itemize}    \end{itemize}
489  \end{frame}  \end{frame}
# Line 443  Line 495 
495    %\pause    %\pause
496    \begin{itemize}%[<+->]    \begin{itemize}%[<+->]
497    \item \texttt{zpool add}    \item \texttt{zpool add}
498        \begin{itemize}%[<+->]
499        \item Brukes for å innføre en helt ny vdev-gruppe med harddisker\slash partisjoner
500        \end{itemize}
501    \item \texttt{zpool attach}    \item \texttt{zpool attach}
502        \begin{itemize}%[<+->]
503        \item Brukes for å tilføye en harddisk\slash partisjon til en eksisterende vdev-gruppe
504        \end{itemize}
505    \item \texttt{zpool clear}    \item \texttt{zpool clear}
506        \begin{itemize}%[<+->]
507        \item Brukes for å nullstille tellerne for lese-, skrive- og sjekksumfeil
508        \end{itemize}
509    \item \texttt{zpool create}    \item \texttt{zpool create}
510        \begin{itemize}%[<+->]
511        \item Brukes for å opprette pooler
512        \end{itemize}
513    \item \texttt{zpool destroy}    \item \texttt{zpool destroy}
514        \begin{itemize}%[<+->]
515        \item Brukes for å ødelegge pooler
516        \end{itemize}
517    \item \texttt{zpool detach}    \item \texttt{zpool detach}
518        \begin{itemize}%[<+->]
519        \item Brukes for å fjerne en harddisk\slash partisjon fra en vdev-gruppe
520        \end{itemize}
521    \item \texttt{zpool export}    \item \texttt{zpool export}
522        \begin{itemize}%[<+->]
523        \item Brukes for å eksportere en pool, for senere import i samme eller et annet system
524        \end{itemize}
525    \item \texttt{zpool get}    \item \texttt{zpool get}
526        \begin{itemize}%[<+->]
527        \item Brukes for å vise verdien til alle eller utvalgte \texttt{zpool}-egenskaper
528        \end{itemize}
529    \item \texttt{zpool history}    \item \texttt{zpool history}
530        \begin{itemize}%[<+->]
531        \item Brukes for å vise historikken til poolen
532        \end{itemize}
533    \item \texttt{zpool import}    \item \texttt{zpool import}
534        \begin{itemize}%[<+->]
535        \item Brukes for å importere en pool eller å vise en liste over pooler som kan importeres
536        \end{itemize}
537    \item \texttt{zpool iostat}    \item \texttt{zpool iostat}
538        \begin{itemize}%[<+->]
539        \item Brukes for å vise I/O-statistikk i sann tid
540        \end{itemize}
541    \item \texttt{zpool labelclear}    \item \texttt{zpool labelclear}
542        \begin{itemize}%[<+->]
543        \item Brukes for å fjerne alle spor av ZFS' disklabels
544        \end{itemize}
545    \item \texttt{zpool list}    \item \texttt{zpool list}
546        \begin{itemize}%[<+->]
547        \item Brukes for å liste opp importerte pooler
548        \end{itemize}
549    \item \texttt{zpool offline}    \item \texttt{zpool offline}
550        \begin{itemize}%[<+->]
551        \item Brukes for å deaktivere en harddisk\slash partisjon
552        \end{itemize}
553    \item \texttt{zpool online}    \item \texttt{zpool online}
554        \begin{itemize}%[<+->]
555        \item Brukes for (re)aktivere en harddisk\slash partisjon
556        \end{itemize}
557    \item \texttt{zpool reguid}    \item \texttt{zpool reguid}
558        \begin{itemize}%[<+->]
559        \item Brukes for å tildele en ny, tilfeldig GUID til en bestemt pool
560        \end{itemize}
561    \item \texttt{zpool remove}    \item \texttt{zpool remove}
562        \begin{itemize}%[<+->]
563        \item Brukes for å fjerne en harddisk\slash partisjon
564        \end{itemize}
565    \item \texttt{zpool reopen}    \item \texttt{zpool reopen}
566        \begin{itemize}%[<+->]
567        \item Brukes for \dots
568        \end{itemize}
569    \item \texttt{zpool replace}    \item \texttt{zpool replace}
570        \begin{itemize}%[<+->]
571        \item Brukes for å fortelle ZFS at en harddisk\slash partisjon har blitt skiftet ut
572        \end{itemize}
573    \item \texttt{zpool scrub}    \item \texttt{zpool scrub}
574        \begin{itemize}%[<+->]
575        \item Brukes for å lese gjennom alt aktivt innhold, og sjekke samsvaret mellom lagret data og lagrete sjekksummer
576        \end{itemize}
577    \item \texttt{zpool set}    \item \texttt{zpool set}
578        \begin{itemize}%[<+->]
579        \item Brukes for å endre \texttt{zpool}-egenskapene
580        \end{itemize}
581    \item \texttt{zpool split}    \item \texttt{zpool split}
582        \begin{itemize}%[<+->]
583        \item Brukes for å skille et speilmedlem fra resten av gruppa
584        \end{itemize}
585    \item \texttt{zpool status}    \item \texttt{zpool status}
586        \begin{itemize}%[<+->]
587        \item Brukes for å vise status til poolen, dens medlemmer og deres status, og telleverkene for lese-, skrive og sjekksumfeil
588        \end{itemize}
589    \item \texttt{zpool upgrade}    \item \texttt{zpool upgrade}
590        \begin{itemize}%[<+->]
591        \item Brukes for å oppgradere poolene til nye formater, vise hvilke pooler som er utdaterte, og hvilke versjoner som er tilgjengelig i systemet
592        \end{itemize}
593    \end{itemize}    \end{itemize}
594  \end{frame}  \end{frame}
595    
# Line 476  Line 600 
600    %\pause    %\pause
601    \begin{itemize}%[<+->]    \begin{itemize}%[<+->]
602    \item \texttt{zfs allow}    \item \texttt{zfs allow}
603        \begin{itemize}%[<+->]
604        \item
605        \end{itemize}
606    \item \texttt{zfs bookmark}    \item \texttt{zfs bookmark}
607        \begin{itemize}%[<+->]
608        \item
609        \end{itemize}
610    \item \texttt{zfs clone}    \item \texttt{zfs clone}
611        \begin{itemize}%[<+->]
612        \item
613        \end{itemize}
614    \item \texttt{zfs create}    \item \texttt{zfs create}
615        \begin{itemize}%[<+->]
616        \item
617        \end{itemize}
618    \item \texttt{zfs destroy}    \item \texttt{zfs destroy}
619        \begin{itemize}%[<+->]
620        \item
621        \end{itemize}
622    \item \texttt{zfs diff}    \item \texttt{zfs diff}
623        \begin{itemize}%[<+->]
624        \item
625        \end{itemize}
626    \item \texttt{zfs get}    \item \texttt{zfs get}
627        \begin{itemize}%[<+->]
628        \item
629        \end{itemize}
630    \item \texttt{zfs groupspace}    \item \texttt{zfs groupspace}
631        \begin{itemize}%[<+->]
632        \item
633        \end{itemize}
634    \item \texttt{zfs holds}    \item \texttt{zfs holds}
635        \begin{itemize}%[<+->]
636        \item
637        \end{itemize}
638    \item \texttt{zfs hold}    \item \texttt{zfs hold}
639        \begin{itemize}%[<+->]
640        \item
641        \end{itemize}
642    \item \texttt{zfs inherit}    \item \texttt{zfs inherit}
643        \begin{itemize}%[<+->]
644        \item
645        \end{itemize}
646    \item \texttt{zfs jail}    \item \texttt{zfs jail}
647        \begin{itemize}%[<+->]
648        \item
649        \end{itemize}
650    \item \texttt{zfs list}    \item \texttt{zfs list}
651        \begin{itemize}%[<+->]
652        \item
653        \end{itemize}
654    \item \texttt{zfs mount}    \item \texttt{zfs mount}
655        \begin{itemize}%[<+->]
656        \item
657        \end{itemize}
658    \item \texttt{zfs promote}    \item \texttt{zfs promote}
659        \begin{itemize}%[<+->]
660        \item
661        \end{itemize}
662    \item \texttt{zfs receive}    \item \texttt{zfs receive}
663        \begin{itemize}%[<+->]
664        \item
665        \end{itemize}
666    \item \texttt{zfs release}    \item \texttt{zfs release}
667        \begin{itemize}%[<+->]
668        \item
669        \end{itemize}
670    \item \texttt{zfs rename}    \item \texttt{zfs rename}
671        \begin{itemize}%[<+->]
672        \item
673        \end{itemize}
674    \item \texttt{zfs rollback}    \item \texttt{zfs rollback}
675        \begin{itemize}%[<+->]
676        \item
677        \end{itemize}
678    \item \texttt{zfs send}    \item \texttt{zfs send}
679        \begin{itemize}%[<+->]
680        \item
681        \end{itemize}
682    \item \texttt{zfs set}    \item \texttt{zfs set}
683        \begin{itemize}%[<+->]
684        \item
685        \end{itemize}
686    \item \texttt{zfs share}    \item \texttt{zfs share}
687        \begin{itemize}%[<+->]
688        \item
689        \end{itemize}
690    \item \texttt{zfs snapshot}    \item \texttt{zfs snapshot}
691        \begin{itemize}%[<+->]
692        \item
693        \end{itemize}
694    \item \texttt{zfs unallow}    \item \texttt{zfs unallow}
695        \begin{itemize}%[<+->]
696        \item
697        \end{itemize}
698    \item \texttt{zfs unjail}    \item \texttt{zfs unjail}
699        \begin{itemize}%[<+->]
700        \item
701        \end{itemize}
702    \item \texttt{zfs unmount}    \item \texttt{zfs unmount}
703        \begin{itemize}%[<+->]
704        \item
705        \end{itemize}
706    \item \texttt{zfs unshare}    \item \texttt{zfs unshare}
707        \begin{itemize}%[<+->]
708        \item
709        \end{itemize}
710    \item \texttt{zfs upgrade}    \item \texttt{zfs upgrade}
711        \begin{itemize}%[<+->]
712        \item
713        \end{itemize}
714    \item \texttt{zfs userspace}    \item \texttt{zfs userspace}
715        \begin{itemize}%[<+->]
716        \item
717        \end{itemize}
718    \end{itemize}    \end{itemize}
719  \end{frame}  \end{frame}
720    
# Line 596  Line 807 
807    \item \texttt{feature@lz4\_compress}    \item \texttt{feature@lz4\_compress}
808    \item \texttt{feature@multi\_vdev\_crash\_dump}    \item \texttt{feature@multi\_vdev\_crash\_dump}
809    \item \texttt{feature@spacemap\_histogram}    \item \texttt{feature@spacemap\_histogram}
810      \item \texttt{feature@enabled\_txg}
811      \item \texttt{feature@hole\_birth}
812    \item \texttt{feature@extensible\_dataset}    \item \texttt{feature@extensible\_dataset}
813      \item \texttt{feature@bookmarks}
814    \end{itemize}    \end{itemize}
815  \end{frame}  \end{frame}
816    


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

svn@ximalas.info
ViewVC Help
Powered by ViewVC 1.3.0-beta1