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

Annotation of /trunk/zfs-foredrag.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (hide annotations) (download)
2013-12-23T19:29:45Z (10 years, 4 months ago) by trond
Content type: text/plain
File size: 13145 byte(s)
Inn med de første ordene om ZFS.
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 6 \part{Del 1: 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 6 \item ZFS er både
152     \begin{enumerate}[<+->]
153     \item Logisk volumhåndterer\hfill(Logical Volume Manager, LVM)
154     \item Filsystem med snapshots og kloner
155     \end{enumerate}
156     \item Enklere organisering enn «Storage Spaces» i Microsoft Windows
157     Server 2012
158     \item Lagringen organiseres i pooler som kan bestå av
159     \begin{enumerate}[<+->]
160     \item Enkeltdisker\slash partisjoner
161     \item Striping (RAID~0) mellom to eller flere disker\slash partisjoner
162     \item Speiling (RAID~1) mellom to eller flere disker\slash partisjoner
163     \item \texttt{raidz1} (RAID~5) over tre eller flere disker\slash
164     partisjoner
165     \item \texttt{raidz2} (RAID~6) over seks eller flere disker\slash
166     partisjoner
167     \item \texttt{raidz3} («RAID~7») over ni eller flere disker\slash
168     partisjoner
169     \end{enumerate}
170     \item Visse kombinasjoner av det overstående er også mulig
171 trond 3 \end{itemize}
172     \end{frame}
173    
174 trond 6 \section{Hva er grensene til ZFS?}
175 trond 3 \begin{frame}%[allowframebreaks]
176 trond 6 \frametitle{Hva er grensene til ZFS?}
177 trond 3 \pause
178     \begin{itemize}[<+->]
179 trond 6 \item ZFS er stort sett grenseløs
180     \begin{itemize}[<+->]
181     \item 128-bit diskadresser
182     \item Maks.\ $2^{48}$ poster i hver katalog
183     \item Maks.\ $2^{64}$ bytes (16~EiB, 16~exbibytes) for hver fil
184     \item Maks.\ $2^{64}$ bytes for hvert attributt
185     \item Maks.\ $2^{78}$ bytes (256~ZiB, 256~zebibytes) i hver pool
186     \item Maks.\ $2^{56}$ attributter for hver fil (egentlig begrenset
187     til $2^{48}$ attributter)
188     \item Maks.\ $2^{64}$ enheter tilknyttet en gitt pool
189     \item Maks.\ $2^{64}$ pooler i et og samme system
190     \item Maks.\ $2^{64}$ filsystemer i samme pool
191     \end{itemize}
192     \item Vis meg det systemet som klarer å sprenge noen av disse
193     grensene!
194 trond 3 \end{itemize}
195     \end{frame}
196    
197 trond 6 \section{Hvordan virker ZFS?}
198 trond 3 \begin{frame}%[allowframebreaks]
199 trond 6 \frametitle{Hvordan virker ZFS?}
200 trond 3 \pause
201     \begin{itemize}[<+->]
202 trond 6 \item ZFS unngår RAID~5-skrivehullet til typiske RAID-kontrollere
203     \begin{enumerate}[<+->]
204     \item Skriver nye data til de samme datablokkene som tidligere
205     \item Regner ut ny paritet
206     \item Skriver oppdatert paritet til de samme paritetsblokkene som
207     tidligere
208     \begin{itemize}[<+->]
209     \item Hva skjer hvis du får strømbrudd mellom 1 og 3?
210     \item Har diskkontrolleren batteribeskyttet minne?
211     \end{itemize}
212     \end{enumerate}
213     \item ZFS skriver fulle striper; data og paritet samtidig
214     \item ZFS bruker «copy-on-write»; skriver nye data til ledige
215     diskblokker
216     \item Endringer som hører sammen, samles i transaksjonsgrupper
217     \item Sjekksummer brukes for alt som blir lagret
218     \begin{itemize}[<+->]
219     \item ZFS kontrollerer at leste data er de samme som ble skrevet
220     \item Oppdages avvik, leter ZFS etter alternativer
221     \item Finnes alternativer, enten speilkopier eller paritet
222     \begin{enumerate}[<+->]
223     \item Leveres korrekte data til applikasjonen, og
224     \item avviket korrigeres automatisk på den syke disken
225     \end{enumerate}
226     \item Finnes ingen alternativer, så må filene restaureres fra
227     backup
228     \end{itemize}
229 trond 3 \end{itemize}
230     \end{frame}
231    
232 trond 6 \section{ZFS og RAID-kontrollere}
233     \begin{frame}%[allowframebreaks]
234     \frametitle{ZFS og RAID-kontrollere}
235     \pause
236     \begin{itemize}[<+->]
237     \item \alert{Ikke} bruk ZFS sammen med RAID-kontrollere!
238     \item I verste fall kan RAID-kontrolleren motarbeide ZFS
239     \item Sett kontrolleren i JBOD-modus, eller
240     \item la hver disk være sitt enslige RAID~0-volum
241     \end{itemize}
242     \end{frame}
243 trond 3
244 trond 6 \section{Hvor kommer ZFS fra?}
245     \begin{frame}%[allowframebreaks]
246     \frametitle{Hvor kommer ZFS fra?}
247     \pause
248     \begin{itemize}[<+->]
249     \item Utviklet av Jeff Bonwick og kollegaer ved Sun Microsystems,
250     Inc.
251     \item Arbeidet begynte i 2001
252     \item ZFS $\to$ Solaris, oktober 2005
253     \item ZFS er lisensiert etter «Common Development and Distribution
254     License» (CDDL)
255     \item ZFS $\to$ OpenSolaris, november 2005
256     \item ZFS $\to$ FreeBSD, april 2007
257     \item Linux' GPL~v2-lisens kompliserer import av ZFS
258     \begin{itemize}[<+->]
259     \item ZFS i Linux gjennom FUSE gjenstår som en (treg) mulighet
260     \item Brian Behlendorf ved Lawrence Livermore National Laboratory
261     (LLNL) har laget «Native ZFS for\slash on Linux»
262     \end{itemize}
263     \item ZFS var tilgjengelig i Mac OS~X 10.5, bare read-only, men har
264     vært tilbaketrukket siden oktober 2009
265     \item Andre OS med ZFS-støtte: OpenIndiana, FreeNAS, PC-BSD,
266     GNU/kFreeBSD og NetBSD
267     \end{itemize}
268     \end{frame}
269    
270     \section{Fremtiden for ZFS?}
271     \begin{frame}%[allowframebreaks]
272     \frametitle{Fremtiden for ZFS?}
273     \pause
274     \begin{itemize}[<+->]
275     \item Oracle kjøpte opp Sun Microsystems, 27.~januar 2010
276     \item Oracle ville gjøre OpenSolaris om til «ClosedSolaris»
277     \item Hele ZFS-teamet hos Oracle sa opp på dagen, 90 dager etter den
278     avgjørelsen
279     \item ZFS lever videre hos
280     \begin{itemize}[<+->]
281     \item Oracle
282     \item illumos
283     \item OpenZFS
284     \item FreeBSD
285     \item Delphix
286     \item iXsystems
287     \item Joyent
288     \item NetBSD
289     \item Nexenta
290     \end{itemize}
291     \end{itemize}
292     \end{frame}
293    
294     %\subsection{Underemne 1a}
295     %\begin{frame}%[allowframebreaks]
296     % \frametitle{Emne 1}
297     % \framesubtitle{Underemne 1a}
298     % \pause
299     % \begin{itemize}[<+->]
300     % \item Bla, bla, bla
301     % \end{itemize}
302     %\end{frame}
303    
304     \part{Del 2: ZFS!}
305    
306 trond 3 \begin{frame}
307     \partpage
308     \end{frame}
309    
310 trond 6 \section*{Oversikt over del~2: ZFS!}
311 trond 3 \begin{frame}%[allowframebreaks]
312 trond 6 \frametitle{Oversikt over del~2: ZFS!}
313 trond 3 \tableofcontents%[pausesections]
314     \end{frame}
315    
316 trond 6 \section{Administrasjon av ZFS}
317 trond 3 \begin{frame}%[allowframebreaks]
318 trond 6 \frametitle{Administrasjon av ZFS}
319 trond 3 \pause
320     \begin{itemize}[<+->]
321 trond 6 \item To kommandoer (med underkommandoer):
322     \begin{enumerate}[<+->]
323     \item \texttt{zpool}
324     \item \texttt{zfs}
325     \end{enumerate}
326     \item Det finnes en tredje kommando for de nysgjerrige: \texttt{zdb}
327     \begin{itemize}[<+->]
328     \item Brukes for å avlese indre ZFS-detaljer
329     \end{itemize}
330 trond 3 \end{itemize}
331     \end{frame}
332    
333 trond 6 \section{Oppretting av pooler}
334 trond 3 \begin{frame}%[allowframebreaks]
335 trond 6 \frametitle{Oppretting av pooler}
336 trond 3 \pause
337     \begin{itemize}[<+->]
338 trond 6 \item \texttt{zpool create [\textit{opsjoner}]
339     \textit{navn-på-pool\/} [\textit{organiseringstype}]
340     \textit{ingredienser\/} [\textit{organiseringstype
341     ingredienser}] ...}
342     \item Unngå å plassere mer enn 9 enheter i hver vdev
343     \item I stedet for å stripe en pool over 20 harddisker, vurdér å
344     speile to og to harddisker i 10 grupper
345 trond 3 \end{itemize}
346     \end{frame}
347    
348 trond 6 \subsection{Enkle pool-eksempler}
349 trond 3 \begin{frame}%[allowframebreaks]
350 trond 6 \frametitle{Oppretting av pooler}
351     \framesubtitle{Enkle pool-eksempler}
352 trond 3 \pause
353     \begin{itemize}[<+->]
354 trond 6 \item Singledisk:
355     \item \texttt{zpool create rpool da0}
356     \item RAID~0 over to disker:
357     \item \texttt{zpool create rpool da0 da1}
358     \item RAID~1 over to disker:
359     \item \texttt{zpool create rpool \alert{mirror} da0 da1}
360     \item RAID~5 over tre disker:
361     \item \texttt{zpool create rpool \alert{raidz1} da0 da1 da2}
362     \item RAID~6 over seks disker:
363     \item \texttt{zpool create rpool \alert{raidz2} da0 da1 da2 da3 da4
364     da5}
365     \item «RAID~7» over ni disker:
366     \item \texttt{zpool create rpool \alert{raidz3} da0 da1 da2 da3 da4
367     da5 da6 da7 da8}
368 trond 3 \end{itemize}
369     \end{frame}
370    
371 trond 6 \subsection{Avanserte pool-eksempler}
372     \begin{frame}%[allowframebreaks]
373     \frametitle{Oppretting av pooler}
374     \framesubtitle{Avanserte pool-eksempler}
375     \pause
376     \begin{itemize}[<+->]
377     \item RAID~\only<1-3|handout:0>{?}\only<4->{1+0 (3 vdevs)}:
378     \item \texttt{zpool create rpool \alert{mirror} da0 da1
379     \alert{mirror} da2 da3 \alert{mirror} da4 da5}
380     \pause
381     \item RAID~\only<5-6|handout:0>{?}\only<7->{5+0 (2 vdevs)}:
382     \item \texttt{zpool create rpool \alert{raidz1} da0 da1 da2
383     \alert{raidz1} da3 da4 da5}
384     \pause
385     \item RAID~\only<8-9|handout:0>{?}\only<10->{6+0 (2 vdevs)}:
386     \item \texttt{zpool create rpool \alert{raidz2} da0 da1 da2 da3 \alert{raidz2} da4 da5 da6 da7}
387     \pause
388     \item RAID~\only<11-12|handout:0>{?}\only<13->{1+5+0 (2 vdevs)}:
389     \item \texttt{zpool create rpool \alert{mirror} da0 da1 \alert{raidz1} da2 da3 da4}
390     \end{itemize}
391     \end{frame}
392    
393 trond 3 \end{document}
394    
395     Local Variables:
396     TeX-PDF-mode:t
397     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