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

Annotation of /trunk/zfs-foredrag.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 10 - (hide annotations) (download)
2014-01-03T12:51:58Z (10 years, 3 months ago) by trond
Content type: text/plain
File size: 29428 byte(s)
Dataintegritet og brukervennlighet kommer i fremste rekke, deretter hastighet.
Dytta inn et punkt om at filsystemer opprettes samtidig med poolene, i tilfelle noen har erfaring med den ellers gampete måten å håndtere Storage Spaces.
Dytta inn en pedagogisk slide som viser enterprise_zdata og den oppbygning.
Dytta inn noen punkter om at RAID-kontrollere kan finne på rare sprell som omorganisering av skriving av diskblokker og utsettelse av skrivearbeidet.
Gåseøye etter høyre krøllparentes med påfølgende ordmellomrom må få påsatt et ordmellomrom med tvang. Så dæ så!
Dytta inn beskrivelser av zpool-underkommandoene og gjorde klar for beskrivelse av zfs-underkommandoene.
Dytta inn de tre nye features som ble gjort tilgjengelig i FreeBSD base/head, r260183.
Små endringer her og der.
1 trond 3 % -*- coding: utf-8 -*-
2     % $Ximalas$
3     %\documentclass{beamer}
4     %\documentclass[handout]{beamer}
5     %\usepackage{pgfpages}
6     %\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
7     %\pgfpagesuselayout{4 on 1}[a4paper,landscape,border shrink=5mm]
8     %\setbeameroption{show notes} % on second screen}
9    
10     \def\jobname{zfs-foredrag} % Sett riktig navn på presentasjonen her.
11     \setjobnamebeamerversion{\jobname}
12    
13     \usepackage[utf8]{inputenc}
14     \usepackage[T1]{fontenc}
15     \usepackage[norsk]{babel}
16     \usepackage{booktabs}
17     \usepackage{multicol}
18     \usepackage{fancyvrb}
19     %\usepackage{epstopdf}
20     %\epstopdfsetup{update}
21    
22     %\usetheme{AnnArbor}
23     %\usetheme{Boadilla}
24     %\usetheme{boxes}
25     %\usetheme{CambridgeUS}
26     %\usetheme{Antibes}
27     %\usetheme{Bergen}
28     %\usetheme{Berkeley}
29     %\usetheme{Berlin}
30     %\usetheme{Copenhagen}
31     %\usetheme{Darmstadt}
32     %\usetheme{Dresden}
33     %\usetheme{Frankfurt}
34     %\usetheme{Goettingen}
35     %\usetheme{Hannover}
36     %\usetheme{Ilmenau}
37     %\usetheme{JuanLesPins}
38     %\usetheme{Luebeck}
39     \usetheme{Madrid}
40     %\usetheme{Malmoe}
41     %\usetheme{Marburg}
42     %\usetheme{Montpellier}
43     %\usetheme{PaloAlto}
44     %\usetheme{Pittsburgh}
45     %\usetheme{Rochester}
46     %\usetheme{Singapore}
47     %\usetheme{Szeged}
48     %\usetheme{Warsaw}
49    
50     \hypersetup{colorlinks,linkcolor=,urlcolor=blue}
51    
52     \newcommand{\Alert}[2]{\alert<#1>{#2}}
53     \newcommand{\Textbackslash}{\textbackslash\penalty\exhyphenpenalty}
54     \newcommand{\rfc}[1]{\href{http://tools.ietf.org/html/rfc#1}{RFC~#1}}
55     \newcommand{\prfc}[1]{(\rfc{#1})}
56    
57 trond 6 \title{\textbf{ZFS}}
58     \subtitle{Siste ord innen filsystemer}
59 trond 3 \author[T.~Endrestøl]{\href{http://fig.ol.no/~trond/}{Trond Endrestøl}}
60     \institute[FSI/IT]{\href{http://fagskolen-innlandet.no/}{Fagskolen Innlandet}, IT-avdelingen}
61 trond 6 %\subject{Emne for bruk i egenskapene til PDF-fila}
62     %\keywords{Nøkkelord for bruk i egenskapene til PDF-fila}
63 trond 3 \date{\today} % eller
64     %\date{23.\ desember 2013}
65    
66     \begin{document}
67    
68     \begin{frame}
69     \titlepage
70     \end{frame}
71    
72 trond 6 \section*{Foredragets filer}
73     \begin{frame}[allowframebreaks]
74     \frametitle{Foredragets filer}
75     \begin{itemize}
76     \item Filene til foredraget er tilgjengelig gjennom:
77     \begin{itemize}
78     \item Subversion: \texttt{svn co
79     \url{svn://svn.ximalas.info/zfs-foredrag}}
80     \item Web:
81     \href{http://svnweb.ximalas.info/zfs-foredrag/}{\texttt{svnweb.ximalas.info/zfs-foredrag}}
82     \item Begge metodene er tilgjengelig med både IPv4 og \alert{IPv6}
83     \end{itemize}
84     \item
85     \href{http://svnweb.ximalas.info/zfs-foredrag/trunk/zfs-foredrag.foredrag.pdf?view=co}{\texttt{zfs-foredrag.foredrag.pdf}}
86     vises på lerretet
87     \item
88     \href{http://svnweb.ximalas.info/zfs-foredrag/trunk/zfs-foredrag.handout.pdf?view=co}{\texttt{zfs-foredrag.handout.pdf}}
89     er mye bedre for publikum å se på
90     \item
91     \href{http://svnweb.ximalas.info/zfs-foredrag/trunk/zfs-foredrag.handout.2on1.pdf?view=co}{\texttt{zfs-foredrag.handout.2on1.pdf}}
92     og
93     \href{http://svnweb.ximalas.info/zfs-foredrag/trunk/zfs-foredrag.handout.4on1.pdf?view=co}{\texttt{zfs-foredrag.handout.4on1.pdf}}
94     er begge velegnet til utskrift
95     \item \texttt{*.169.pdf}-filene er i 16:9-format
96     \item \texttt{*.1610.pdf}-filene er i 16:10-format
97     \framebreak
98     \item Foredraget er mekket ved hjelp av
99     \href{http://www.gnu.org/software/emacs/}{GNU~Emacs},
100     \href{http://www.gnu.org/software/auctex/}{AUC\TeX},
101     \href{http://www.tug.org/applications/pdftex/}{pdf\TeX} fra
102     \href{http://miktex.org/}{MiK\TeX},
103     \href{http://www.latex-project.org/}{\LaTeX}-dokumentklassa
104     \href{https://bitbucket.org/rivanvx/beamer/wiki/Home}{beamer},
105     \href{http://subversion.apache.org/}{Subversion},
106     \href{http://tortoisesvn.net/}{TortoiseSVN} og
107     \href{http://get.adobe.com/no/reader/}{Adobe Reader}
108     \item Hovedfila bærer denne identifikasjonen:\\
109     \texttt{\$${}$Ximalas${}$\$}
110     \item Driverfila for denne PDF-fila bærer denne identifikasjonen:\\
111     \svndriverfil
112     \item Copyright \copyright\ 2013 Trond Endrestøl
113     \item Dette verket er lisensiert med:
114     \href{http://creativecommons.org/}{Creative Commons},
115     \href{http://creativecommons.org/licenses/by-sa/3.0/no/}{Navngivelse-DelPåSammeVilkår
116     3.0 Norge} (CC BY-SA
117     3.0)\hfill\includegraphics[scale=.25]{by-sa.pdf}
118     \end{itemize}
119     \end{frame}
120    
121     \section*{Oversikt over hele foredraget}
122 trond 3 \begin{frame}%[allowframebreaks]
123 trond 6 \frametitle{Oversikt over hele foredraget}
124     \framesubtitle{Del 1: ZFS?}
125 trond 3 \tableofcontents[part=1]%[pausesections]
126     \end{frame}
127    
128     \begin{frame}%[allowframebreaks]
129 trond 6 \frametitle{Oversikt over hele foredraget}
130     \framesubtitle{Del 2: ZFS!}
131 trond 3 \tableofcontents[part=2]%[pausesections]
132     \end{frame}
133    
134 trond 8 \part{ZFS?}
135 trond 3
136     \begin{frame}
137     \partpage
138     \end{frame}
139    
140 trond 6 \section*{Oversikt over del~1: ZFS?}
141 trond 3 \begin{frame}%[allowframebreaks]
142 trond 6 \frametitle{Oversikt over del~1: ZFS?}
143 trond 3 \tableofcontents%[pausesections]
144     \end{frame}
145    
146 trond 6 \section{Hva er ZFS?}
147 trond 3 \begin{frame}%[allowframebreaks]
148 trond 6 \frametitle{Hva er ZFS?}
149 trond 3 \pause
150     \begin{itemize}[<+->]
151 trond 8 \item ZFS er
152 trond 6 \begin{enumerate}[<+->]
153     \item Logisk volumhåndterer\hfill(Logical Volume Manager, LVM)
154 trond 8 \item Filsystem med bl.a.\ snapshots, kloner, kompresjon og deduplisering
155     \item Tilbyr også «zvolumer» som lagringsenheter for andre
156     filsystemer
157 trond 6 \end{enumerate}
158 trond 10 \item ZFS tar dataintegritet på alvor, deretter brukervennlighet; hastighet kommer i senere rekker
159 trond 6 \item Enklere organisering enn «Storage Spaces» i Microsoft Windows
160     Server 2012
161     \item Lagringen organiseres i pooler som kan bestå av
162     \begin{enumerate}[<+->]
163     \item Enkeltdisker\slash partisjoner
164     \item Striping (RAID~0) mellom to eller flere disker\slash partisjoner
165     \item Speiling (RAID~1) mellom to eller flere disker\slash partisjoner
166 trond 8 \item \texttt{raidz1} (RAID~5, enkel paritet) over tre eller flere
167     disker\slash partisjoner
168     \item \texttt{raidz2} (RAID~6, dobbel paritet) over fire eller
169     flere disker\slash partisjoner
170     \item \texttt{raidz3} («RAID~7», trippel paritet) over fem eller
171     flere disker\slash partisjoner
172 trond 6 \end{enumerate}
173     \item Visse kombinasjoner av det overstående er også mulig
174 trond 10 \item Filsystemet blir opprettet samtidig med poolen
175 trond 3 \end{itemize}
176     \end{frame}
177    
178 trond 10 \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 trond 6 \section{Hva er grensene til ZFS?}
218 trond 3 \begin{frame}%[allowframebreaks]
219 trond 6 \frametitle{Hva er grensene til ZFS?}
220 trond 3 \pause
221     \begin{itemize}[<+->]
222 trond 6 \item ZFS er stort sett grenseløs
223     \begin{itemize}[<+->]
224     \item 128-bit diskadresser
225 trond 8 \item Maks.\ \alert<9->{$2^{48}$} poster i hver katalog
226 trond 6 \item Maks.\ $2^{64}$ bytes (16~EiB, 16~exbibytes) for hver fil
227     \item Maks.\ $2^{64}$ bytes for hvert attributt
228     \item Maks.\ $2^{78}$ bytes (256~ZiB, 256~zebibytes) i hver pool
229     \item Maks.\ $2^{56}$ attributter for hver fil (egentlig begrenset
230 trond 8 til \alert<9->{$2^{48}$} attributter)
231     \pause
232 trond 6 \item Maks.\ $2^{64}$ enheter tilknyttet en gitt pool
233     \item Maks.\ $2^{64}$ pooler i et og samme system
234     \item Maks.\ $2^{64}$ filsystemer i samme pool
235 trond 8 \item Ref.: \texttt{\url{http://en.wikipedia.org/wiki/ZFS}}
236 trond 6 \end{itemize}
237     \item Vis meg det systemet som klarer å sprenge noen av disse
238     grensene!
239 trond 3 \end{itemize}
240     \end{frame}
241    
242 trond 6 \section{Hvordan virker ZFS?}
243 trond 3 \begin{frame}%[allowframebreaks]
244 trond 6 \frametitle{Hvordan virker ZFS?}
245 trond 3 \pause
246     \begin{itemize}[<+->]
247 trond 8 \item ZFS unngår RAID~5-skrivehullet til eldre RAID-kontrollere som
248 trond 6 \begin{enumerate}[<+->]
249     \item Skriver nye data til de samme datablokkene som tidligere
250 trond 8 \item Leser gamle, urørte data fra de samme datablokkene
251     \item Regner ut ny paritet for datablokkene
252 trond 6 \item Skriver oppdatert paritet til de samme paritetsblokkene som
253     tidligere
254     \begin{itemize}[<+->]
255 trond 10 \item Hva skjer \textit{nå\/} og \textit{senere\/} hvis du får
256     strømbrudd mellom punktene 1 og 4?
257 trond 6 \item Har diskkontrolleren batteribeskyttet minne?
258     \end{itemize}
259     \end{enumerate}
260 trond 10 \item ZFS skriver komplette striper; data og paritet samtidig
261 trond 6 \item ZFS bruker «copy-on-write»; skriver nye data til ledige
262     diskblokker
263 trond 10 \item Endringer som hører sammen, samles i transaksjonsgrupper («txg»)
264 trond 6 \item Sjekksummer brukes for alt som blir lagret
265     \begin{itemize}[<+->]
266     \item ZFS kontrollerer at leste data er de samme som ble skrevet
267     \item Oppdages avvik, leter ZFS etter alternativer
268 trond 8 \item Finnes alternativer, enten speilkopier eller paritet, så
269 trond 6 \begin{enumerate}[<+->]
270     \item Leveres korrekte data til applikasjonen, og
271 trond 10 \item Avviket korrigeres automatisk på den syke disken («resilver»)
272 trond 6 \end{enumerate}
273     \item Finnes ingen alternativer, så må filene restaureres fra
274     backup
275     \end{itemize}
276 trond 3 \end{itemize}
277     \end{frame}
278    
279 trond 6 \section{ZFS og RAID-kontrollere}
280     \begin{frame}%[allowframebreaks]
281     \frametitle{ZFS og RAID-kontrollere}
282     \pause
283     \begin{itemize}[<+->]
284     \item \alert{Ikke} bruk ZFS sammen med RAID-kontrollere!
285 trond 8 \item RAID-kontrolleren kan i verste fall motarbeide ZFS
286 trond 10 \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 trond 8 \item Sett RAID-kontrolleren i JBOD-modus, eller
295     \item La hver harddisk være sitt enslige RAID~0-volum
296 trond 6 \end{itemize}
297     \end{frame}
298 trond 3
299 trond 6 \section{Hvor kommer ZFS fra?}
300     \begin{frame}%[allowframebreaks]
301     \frametitle{Hvor kommer ZFS fra?}
302     \pause
303     \begin{itemize}[<+->]
304 trond 8 \item Utviklet av Jeffrey Bonwick, Matthew Ahrens og flere kollegaer
305     ved Sun Microsystems, Inc.
306 trond 10 \item Arbeidet begynte i 2001 og første prototyp ble ferdig 31.\
307     oktober 2001 (halloween)
308 trond 6 \item ZFS $\to$ Solaris, oktober 2005
309     \item ZFS er lisensiert etter «Common Development and Distribution
310     License» (CDDL)
311     \item ZFS $\to$ OpenSolaris, november 2005
312     \item ZFS $\to$ FreeBSD, april 2007
313     \item Linux' GPL~v2-lisens kompliserer import av ZFS
314     \begin{itemize}[<+->]
315     \item ZFS i Linux gjennom FUSE gjenstår som en (treg) mulighet
316     \item Brian Behlendorf ved Lawrence Livermore National Laboratory
317     (LLNL) har laget «Native ZFS for\slash on Linux»
318     \end{itemize}
319     \item ZFS var tilgjengelig i Mac OS~X 10.5, bare read-only, men har
320     vært tilbaketrukket siden oktober 2009
321 trond 8 \item Noen Mac OS~X-entusiaster har laget sine egne ZFS-varianter
322 trond 6 \item Andre OS med ZFS-støtte: OpenIndiana, FreeNAS, PC-BSD,
323     GNU/kFreeBSD og NetBSD
324     \end{itemize}
325     \end{frame}
326    
327 trond 8 \section{Versjonsnummer i ZFS}
328     \begin{frame}%[allowframebreaks]
329     \frametitle{Versjonsnummer i ZFS}
330     \pause
331     \begin{itemize}[<+->]
332     \item Pool-versjonene 1--28 og filsystem-versjonene 1--5 er tilgjengelig
333     gjennom OpenSolaris og illumos
334     \item Pool-versjonene 29-34 og filsystem-versjon 6 er bare tilgjengelig
335     i Solaris 11 (Express)
336     \item OpenSolaris har gått videre til feature-flags og pool-versjon
337     1000
338     \item illumos har gått videre til feature-flags og pool-versjon 5000
339     \item De fleste OS-er utenom Solaris, samarbeider om
340     videreutviklingen av illumos-varianten
341 trond 10 \item Listene på de neste slidene er kopiert fra
342     \texttt{\url{http://en.wikipedia.org/wiki/ZFS}}
343 trond 8 \end{itemize}
344     \end{frame}
345    
346     \subsection{Pool-versjonsnummer}
347     \begin{frame}[allowframebreaks]
348     \frametitle{Versjonsnummer i ZFS}
349     \framesubtitle{Pool-versjonsnummer}
350     %\pause
351     \begin{enumerate}%[<+->]
352     \item First release
353     \item Ditto Blocks
354     \item Hot spares, double-parity RAID-Z (\texttt{raidz2}), improved RAID-Z
355     accounting
356     \item zpool history
357     \item gzip compression for ZFS datasets
358 trond 10 \item "\texttt{bootfs}"\ pool property
359 trond 8 \item ZIL: adds the capability to specify a separate Intent Log
360     device or devices
361     \item ability to delegate \texttt{zfs}(1M) administrative tasks to ordinary
362     users
363     \item CIFS server support, dataset quotas
364     \item Devices can be added to a storage pool as "cache devices"
365     \item Improved \texttt{zpool scrub}/resilver performance
366     \item Snapshot properties
367     \item Properties: \texttt{usedbysnapshots}, \texttt{usedbychildren},
368     \texttt{usedbyrefreservation}, and \texttt{usedbydataset}
369     \item passthrough-x aclinherit property support
370     \item Properties: \texttt{userquota}, \texttt{groupquota}, \texttt{userused} and \texttt{groupused};
371     also required FS v4
372     \item STMF property support
373     \item triple-parity RAID-Z
374     \item ZFS snapshot holds
375     \item ZFS log device removal
376     \item zle compression algorithm that is needed to support the ZFS
377     deduplication properties in ZFS pool version 21, which were
378     released concurrently
379     \item Deduplication
380     \item \texttt{zfs receive} properties
381     \item slim ZIL
382     \item System attributes. Symlinks now their own object type. Also
383     requires FS v5.
384     \item Improved pool scrubbing and resilvering statistics
385     \item Improved snapshot deletion performance
386     \item Improved snapshot creation performance (particularly recursive
387     snapshots)
388     \item Multiple virtual device replacements
389     \item RAID-Z/mirror hybrid allocator
390     \item ZFS encryption
391     \item Improved '\texttt{zfs list}' performance
392     \item One MB block support
393     \item Improved share support
394     \item Sharing with inheritance
395     \end{enumerate}
396     \end{frame}
397    
398     \subsection{Filsystem-versjonsnummer}
399     \begin{frame}[allowframebreaks]
400     \frametitle{Versjonsnummer i ZFS}
401     \framesubtitle{Filsystem-versjonsnummer}
402     %\pause
403     \begin{enumerate}%[<+->]
404     \item First release
405     \item Enhanced directory entries. In particular, directory entries
406     now store the object type. For example, file, directory, named
407     pipe, and so on, in addition to the object number.
408     \item Support for sharing ZFS file systems over SMB. Case
409     insensitivity support. System attribute support. Integrated
410     anti-virus support.
411     \item Properties: userquota, groupquota, userused and groupused
412     \item System attributes; symlinks now their own object type
413     \item Multilevel file system support
414     \end{enumerate}
415     \end{frame}
416    
417 trond 6 \section{Fremtiden for ZFS?}
418     \begin{frame}%[allowframebreaks]
419     \frametitle{Fremtiden for ZFS?}
420     \pause
421     \begin{itemize}[<+->]
422 trond 8 \item Oracle kjøpte opp Sun Microsystems, Inc., 27.~januar 2010
423     \item Oracle gjorde OpenSolaris om til «ClosedSolaris» i mai 2010
424     \item Hele ZFS-teamet hos Oracle sa opp på dagen, omtrent 90 dager
425     etter denne avgjørelsen ifølge Bryan Cantrill
426 trond 6 \item ZFS lever videre hos
427     \begin{itemize}[<+->]
428 trond 8 \item Oracle Solaris
429     \item illumos\slash OpenZFS
430     \begin{itemize}[<+->]
431     \item OpenIndiana
432     \item FreeBSD
433     \item Delphix
434     \item iXsystems
435     \item Joyent
436     \item NetBSD
437     \item Nexenta
438     \item Linux
439     \end{itemize}
440 trond 6 \end{itemize}
441     \end{itemize}
442     \end{frame}
443    
444     %\subsection{Underemne 1a}
445     %\begin{frame}%[allowframebreaks]
446     % \frametitle{Emne 1}
447     % \framesubtitle{Underemne 1a}
448     % \pause
449     % \begin{itemize}[<+->]
450     % \item Bla, bla, bla
451     % \end{itemize}
452     %\end{frame}
453    
454 trond 8 \part{ZFS!}
455 trond 6
456 trond 3 \begin{frame}
457     \partpage
458     \end{frame}
459    
460 trond 6 \section*{Oversikt over del~2: ZFS!}
461 trond 3 \begin{frame}%[allowframebreaks]
462 trond 6 \frametitle{Oversikt over del~2: ZFS!}
463 trond 3 \tableofcontents%[pausesections]
464     \end{frame}
465    
466 trond 6 \section{Administrasjon av ZFS}
467 trond 3 \begin{frame}%[allowframebreaks]
468 trond 6 \frametitle{Administrasjon av ZFS}
469 trond 3 \pause
470     \begin{itemize}[<+->]
471 trond 10 \item To kommandoer (med underkommandoer)
472 trond 6 \begin{enumerate}[<+->]
473     \item \texttt{zpool}
474 trond 8 \begin{itemize}[<+->]
475     \item Administrasjon av lagringspoolene
476     \end{itemize}
477 trond 6 \item \texttt{zfs}
478 trond 8 \begin{itemize}[<+->]
479 trond 10 \item Administrasjon av filsystemer, zvolumer, snapshots, kloner, m.m.
480 trond 8 \end{itemize}
481 trond 6 \end{enumerate}
482 trond 10 \item Det finnes en tredje kommando: \texttt{zdb}
483 trond 6 \begin{itemize}[<+->]
484 trond 10 \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 trond 6 \end{itemize}
488 trond 3 \end{itemize}
489     \end{frame}
490    
491 trond 8 \subsection{\texttt{zpool}}
492     \begin{frame}[allowframebreaks]
493     \frametitle{Administrasjon av ZFS}
494     \framesubtitle{\texttt{zpool}-kommandoer}
495     %\pause
496     \begin{itemize}%[<+->]
497     \item \texttt{zpool add}
498 trond 10 \begin{itemize}%[<+->]
499     \item Brukes for å innføre en helt ny vdev-gruppe med harddisker\slash partisjoner
500     \end{itemize}
501 trond 8 \item \texttt{zpool attach}
502 trond 10 \begin{itemize}%[<+->]
503     \item Brukes for å tilføye en harddisk\slash partisjon til en eksisterende vdev-gruppe
504     \end{itemize}
505 trond 8 \item \texttt{zpool clear}
506 trond 10 \begin{itemize}%[<+->]
507     \item Brukes for å nullstille tellerne for lese-, skrive- og sjekksumfeil
508     \end{itemize}
509 trond 8 \item \texttt{zpool create}
510 trond 10 \begin{itemize}%[<+->]
511     \item Brukes for å opprette pooler
512     \end{itemize}
513 trond 8 \item \texttt{zpool destroy}
514 trond 10 \begin{itemize}%[<+->]
515     \item Brukes for å ødelegge pooler
516     \end{itemize}
517 trond 8 \item \texttt{zpool detach}
518 trond 10 \begin{itemize}%[<+->]
519     \item Brukes for å fjerne en harddisk\slash partisjon fra en vdev-gruppe
520     \end{itemize}
521 trond 8 \item \texttt{zpool export}
522 trond 10 \begin{itemize}%[<+->]
523     \item Brukes for å eksportere en pool, for senere import i samme eller et annet system
524     \end{itemize}
525 trond 8 \item \texttt{zpool get}
526 trond 10 \begin{itemize}%[<+->]
527     \item Brukes for å vise verdien til alle eller utvalgte \texttt{zpool}-egenskaper
528     \end{itemize}
529 trond 8 \item \texttt{zpool history}
530 trond 10 \begin{itemize}%[<+->]
531     \item Brukes for å vise historikken til poolen
532     \end{itemize}
533 trond 8 \item \texttt{zpool import}
534 trond 10 \begin{itemize}%[<+->]
535     \item Brukes for å importere en pool eller å vise en liste over pooler som kan importeres
536     \end{itemize}
537 trond 8 \item \texttt{zpool iostat}
538 trond 10 \begin{itemize}%[<+->]
539     \item Brukes for å vise I/O-statistikk i sann tid
540     \end{itemize}
541 trond 8 \item \texttt{zpool labelclear}
542 trond 10 \begin{itemize}%[<+->]
543     \item Brukes for å fjerne alle spor av ZFS' disklabels
544     \end{itemize}
545 trond 8 \item \texttt{zpool list}
546 trond 10 \begin{itemize}%[<+->]
547     \item Brukes for å liste opp importerte pooler
548     \end{itemize}
549 trond 8 \item \texttt{zpool offline}
550 trond 10 \begin{itemize}%[<+->]
551     \item Brukes for å deaktivere en harddisk\slash partisjon
552     \end{itemize}
553 trond 8 \item \texttt{zpool online}
554 trond 10 \begin{itemize}%[<+->]
555     \item Brukes for (re)aktivere en harddisk\slash partisjon
556     \end{itemize}
557 trond 8 \item \texttt{zpool reguid}
558 trond 10 \begin{itemize}%[<+->]
559     \item Brukes for å tildele en ny, tilfeldig GUID til en bestemt pool
560     \end{itemize}
561 trond 8 \item \texttt{zpool remove}
562 trond 10 \begin{itemize}%[<+->]
563     \item Brukes for å fjerne en harddisk\slash partisjon
564     \end{itemize}
565 trond 8 \item \texttt{zpool reopen}
566 trond 10 \begin{itemize}%[<+->]
567     \item Brukes for \dots
568     \end{itemize}
569 trond 8 \item \texttt{zpool replace}
570 trond 10 \begin{itemize}%[<+->]
571     \item Brukes for å fortelle ZFS at en harddisk\slash partisjon har blitt skiftet ut
572     \end{itemize}
573 trond 8 \item \texttt{zpool scrub}
574 trond 10 \begin{itemize}%[<+->]
575     \item Brukes for å lese gjennom alt aktivt innhold, og sjekke samsvaret mellom lagret data og lagrete sjekksummer
576     \end{itemize}
577 trond 8 \item \texttt{zpool set}
578 trond 10 \begin{itemize}%[<+->]
579     \item Brukes for å endre \texttt{zpool}-egenskapene
580     \end{itemize}
581 trond 8 \item \texttt{zpool split}
582 trond 10 \begin{itemize}%[<+->]
583     \item Brukes for å skille et speilmedlem fra resten av gruppa
584     \end{itemize}
585 trond 8 \item \texttt{zpool status}
586 trond 10 \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 trond 8 \item \texttt{zpool upgrade}
590 trond 10 \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 trond 8 \end{itemize}
594     \end{frame}
595    
596     \subsection{\texttt{zfs}}
597     \begin{frame}[allowframebreaks]
598     \frametitle{Administrasjon av ZFS}
599     \framesubtitle{\texttt{zfs}-kommandoer}
600     %\pause
601     \begin{itemize}%[<+->]
602     \item \texttt{zfs allow}
603 trond 10 \begin{itemize}%[<+->]
604     \item
605     \end{itemize}
606 trond 8 \item \texttt{zfs bookmark}
607 trond 10 \begin{itemize}%[<+->]
608     \item
609     \end{itemize}
610 trond 8 \item \texttt{zfs clone}
611 trond 10 \begin{itemize}%[<+->]
612     \item
613     \end{itemize}
614 trond 8 \item \texttt{zfs create}
615 trond 10 \begin{itemize}%[<+->]
616     \item
617     \end{itemize}
618 trond 8 \item \texttt{zfs destroy}
619 trond 10 \begin{itemize}%[<+->]
620     \item
621     \end{itemize}
622 trond 8 \item \texttt{zfs diff}
623 trond 10 \begin{itemize}%[<+->]
624     \item
625     \end{itemize}
626 trond 8 \item \texttt{zfs get}
627 trond 10 \begin{itemize}%[<+->]
628     \item
629     \end{itemize}
630 trond 8 \item \texttt{zfs groupspace}
631 trond 10 \begin{itemize}%[<+->]
632     \item
633     \end{itemize}
634 trond 8 \item \texttt{zfs holds}
635 trond 10 \begin{itemize}%[<+->]
636     \item
637     \end{itemize}
638 trond 8 \item \texttt{zfs hold}
639 trond 10 \begin{itemize}%[<+->]
640     \item
641     \end{itemize}
642 trond 8 \item \texttt{zfs inherit}
643 trond 10 \begin{itemize}%[<+->]
644     \item
645     \end{itemize}
646 trond 8 \item \texttt{zfs jail}
647 trond 10 \begin{itemize}%[<+->]
648     \item
649     \end{itemize}
650 trond 8 \item \texttt{zfs list}
651 trond 10 \begin{itemize}%[<+->]
652     \item
653     \end{itemize}
654 trond 8 \item \texttt{zfs mount}
655 trond 10 \begin{itemize}%[<+->]
656     \item
657     \end{itemize}
658 trond 8 \item \texttt{zfs promote}
659 trond 10 \begin{itemize}%[<+->]
660     \item
661     \end{itemize}
662 trond 8 \item \texttt{zfs receive}
663 trond 10 \begin{itemize}%[<+->]
664     \item
665     \end{itemize}
666 trond 8 \item \texttt{zfs release}
667 trond 10 \begin{itemize}%[<+->]
668     \item
669     \end{itemize}
670 trond 8 \item \texttt{zfs rename}
671 trond 10 \begin{itemize}%[<+->]
672     \item
673     \end{itemize}
674 trond 8 \item \texttt{zfs rollback}
675 trond 10 \begin{itemize}%[<+->]
676     \item
677     \end{itemize}
678 trond 8 \item \texttt{zfs send}
679 trond 10 \begin{itemize}%[<+->]
680     \item
681     \end{itemize}
682 trond 8 \item \texttt{zfs set}
683 trond 10 \begin{itemize}%[<+->]
684     \item
685     \end{itemize}
686 trond 8 \item \texttt{zfs share}
687 trond 10 \begin{itemize}%[<+->]
688     \item
689     \end{itemize}
690 trond 8 \item \texttt{zfs snapshot}
691 trond 10 \begin{itemize}%[<+->]
692     \item
693     \end{itemize}
694 trond 8 \item \texttt{zfs unallow}
695 trond 10 \begin{itemize}%[<+->]
696     \item
697     \end{itemize}
698 trond 8 \item \texttt{zfs unjail}
699 trond 10 \begin{itemize}%[<+->]
700     \item
701     \end{itemize}
702 trond 8 \item \texttt{zfs unmount}
703 trond 10 \begin{itemize}%[<+->]
704     \item
705     \end{itemize}
706 trond 8 \item \texttt{zfs unshare}
707 trond 10 \begin{itemize}%[<+->]
708     \item
709     \end{itemize}
710 trond 8 \item \texttt{zfs upgrade}
711 trond 10 \begin{itemize}%[<+->]
712     \item
713     \end{itemize}
714 trond 8 \item \texttt{zfs userspace}
715 trond 10 \begin{itemize}%[<+->]
716     \item
717     \end{itemize}
718 trond 8 \end{itemize}
719     \end{frame}
720    
721 trond 6 \section{Oppretting av pooler}
722 trond 3 \begin{frame}%[allowframebreaks]
723 trond 6 \frametitle{Oppretting av pooler}
724 trond 3 \pause
725     \begin{itemize}[<+->]
726 trond 6 \item \texttt{zpool create [\textit{opsjoner}]
727     \textit{navn-på-pool\/} [\textit{organiseringstype}]
728     \textit{ingredienser\/} [\textit{organiseringstype
729     ingredienser}] ...}
730     \item Unngå å plassere mer enn 9 enheter i hver vdev
731     \item I stedet for å stripe en pool over 20 harddisker, vurdér å
732     speile to og to harddisker i 10 grupper
733 trond 3 \end{itemize}
734     \end{frame}
735    
736 trond 6 \subsection{Enkle pool-eksempler}
737 trond 3 \begin{frame}%[allowframebreaks]
738 trond 6 \frametitle{Oppretting av pooler}
739     \framesubtitle{Enkle pool-eksempler}
740 trond 3 \pause
741     \begin{itemize}[<+->]
742 trond 6 \item Singledisk:
743     \item \texttt{zpool create rpool da0}
744     \item RAID~0 over to disker:
745     \item \texttt{zpool create rpool da0 da1}
746     \item RAID~1 over to disker:
747     \item \texttt{zpool create rpool \alert{mirror} da0 da1}
748     \item RAID~5 over tre disker:
749     \item \texttt{zpool create rpool \alert{raidz1} da0 da1 da2}
750 trond 8 \item RAID~6 over fire disker:
751     \item \texttt{zpool create rpool \alert{raidz2} da0 da1 da2 da3}
752     \item «RAID~7» over fem disker:
753     \item \texttt{zpool create rpool \alert{raidz3} da0 da1 da2 da3 da4}
754 trond 3 \end{itemize}
755     \end{frame}
756    
757 trond 6 \subsection{Avanserte pool-eksempler}
758     \begin{frame}%[allowframebreaks]
759     \frametitle{Oppretting av pooler}
760     \framesubtitle{Avanserte pool-eksempler}
761     \pause
762     \begin{itemize}[<+->]
763 trond 8 \item RAID~\only<1-3|handout:0>{?}\only<4->{1+0 (3 vdevs á 2 disker)}:
764 trond 6 \item \texttt{zpool create rpool \alert{mirror} da0 da1
765     \alert{mirror} da2 da3 \alert{mirror} da4 da5}
766     \pause
767 trond 8 \item RAID~\only<5-6|handout:0>{?}\only<7->{5+0 (2 vdevs á 3 disker)}:
768 trond 6 \item \texttt{zpool create rpool \alert{raidz1} da0 da1 da2
769     \alert{raidz1} da3 da4 da5}
770     \pause
771 trond 8 \item RAID~\only<8-9|handout:0>{?}\only<10->{6+0 (2 vdevs á 4 disker)}:
772 trond 6 \item \texttt{zpool create rpool \alert{raidz2} da0 da1 da2 da3 \alert{raidz2} da4 da5 da6 da7}
773     \pause
774 trond 8 \item RAID~\only<11-12|handout:0>{?}\only<13->{1+5+0 (2 vdevs, 2 og 3 disker)}:
775 trond 6 \item \texttt{zpool create rpool \alert{mirror} da0 da1 \alert{raidz1} da2 da3 da4}
776     \end{itemize}
777     \end{frame}
778    
779 trond 8 \section{\texttt{zpool}-egenskaper}
780     \begin{frame}[allowframebreaks]
781     \frametitle{\texttt{zpool}-egenskaper}
782     %\pause
783     \begin{itemize}%[<+->]
784     \item \texttt{size}
785     \item \texttt{capacity}
786     \item \texttt{altroot}
787     \item \texttt{health}
788     \item \texttt{guid}
789     \item \texttt{version}
790     \item \texttt{bootfs}
791     \item \texttt{delegation}
792     \item \texttt{autoreplace}
793     \item \texttt{cachefile}
794     \item \texttt{failmode}
795     \item \texttt{listsnapshots}
796     \item \texttt{autoexpand}
797     \item \texttt{dedupditto}
798     \item \texttt{dedupratio}
799     \item \texttt{free}
800     \item \texttt{allocated}
801     \item \texttt{readonly}
802     \item \texttt{comment}
803     \item \texttt{expandsize}
804     \item \texttt{freeing}
805     \item \texttt{feature@async\_destroy}
806     \item \texttt{feature@empty\_bpobj}
807     \item \texttt{feature@lz4\_compress}
808     \item \texttt{feature@multi\_vdev\_crash\_dump}
809     \item \texttt{feature@spacemap\_histogram}
810 trond 10 \item \texttt{feature@enabled\_txg}
811     \item \texttt{feature@hole\_birth}
812 trond 8 \item \texttt{feature@extensible\_dataset}
813 trond 10 \item \texttt{feature@bookmarks}
814 trond 8 \end{itemize}
815     \end{frame}
816    
817     \section{\texttt{zfs}-egenskaper}
818     \begin{frame}[allowframebreaks]
819     \frametitle{\texttt{zfs}-egenskaper}
820     %\pause
821     \begin{itemize}%[<+->]
822     \item \texttt{type}
823     \item \texttt{creation}
824     \item \texttt{used}
825     \item \texttt{available}
826     \item \texttt{referenced}
827     \item \texttt{compressratio}
828     \item \texttt{mounted}
829     \item \texttt{quota}
830     \item \texttt{reservation}
831     \item \texttt{recordsize}
832     \item \texttt{mountpoint}
833     \item \texttt{sharenfs}
834     \item \texttt{checksum}
835     \item \texttt{compression}
836     \item \texttt{atime}
837     \item \texttt{devices}
838     \item \texttt{exec}
839     \item \texttt{setuid}
840     \item \texttt{readonly}
841     \item \texttt{jailed}
842     \item \texttt{snapdir}
843     \item \texttt{aclmode}
844     \item \texttt{aclinherit}
845     \item \texttt{canmount}
846     \item \texttt{xattr}
847     \item \texttt{copies}
848     \item \texttt{version}
849     \item \texttt{utf8only}
850     \item \texttt{normalization}
851     \item \texttt{casesensitivity}
852     \item \texttt{vscan}
853     \item \texttt{nbmand}
854     \item \texttt{sharesmb}
855     \item \texttt{refquota}
856     \item \texttt{refreservation}
857     \item \texttt{primarycache}
858     \item \texttt{secondarycache}
859     \item \texttt{usedbysnapshots}
860     \item \texttt{usedbydataset}
861     \item \texttt{usedbychildren}
862     \item \texttt{usedbyrefreservation}
863     \item \texttt{logbias}
864     \item \texttt{dedup}
865     \item \texttt{mlslabel}
866     \item \texttt{sync}
867     \item \texttt{refcompressratio}
868     \item \texttt{written}
869     \item \texttt{logicalused}
870     \item \texttt{logicalreferenced}
871     \end{itemize}
872     \end{frame}
873    
874 trond 3 \end{document}
875    
876     Local Variables:
877     TeX-PDF-mode:t
878     End:

Properties

Name Value
svn:eol-style native
svn:keywords Ximalas=%H Author Date HeadURL Header Id Revision
svn:mime-type text/plain

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