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

Contents of /trunk/zfs-foredrag.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (show annotations) (download)
2013-12-23T19:29:45Z (10 years, 3 months ago) by trond
Content type: text/plain
File size: 13145 byte(s)
Inn med de første ordene om ZFS.
1 % -*- 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 \title{\textbf{ZFS}}
58 \subtitle{Siste ord innen filsystemer}
59 \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 %\subject{Emne for bruk i egenskapene til PDF-fila}
62 %\keywords{Nøkkelord for bruk i egenskapene til PDF-fila}
63 \date{\today} % eller
64 %\date{23.\ desember 2013}
65
66 \begin{document}
67
68 \begin{frame}
69 \titlepage
70 \end{frame}
71
72 \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 \begin{frame}%[allowframebreaks]
123 \frametitle{Oversikt over hele foredraget}
124 \framesubtitle{Del 1: ZFS?}
125 \tableofcontents[part=1]%[pausesections]
126 \end{frame}
127
128 \begin{frame}%[allowframebreaks]
129 \frametitle{Oversikt over hele foredraget}
130 \framesubtitle{Del 2: ZFS!}
131 \tableofcontents[part=2]%[pausesections]
132 \end{frame}
133
134 \part{Del 1: ZFS?}
135
136 \begin{frame}
137 \partpage
138 \end{frame}
139
140 \section*{Oversikt over del~1: ZFS?}
141 \begin{frame}%[allowframebreaks]
142 \frametitle{Oversikt over del~1: ZFS?}
143 \tableofcontents%[pausesections]
144 \end{frame}
145
146 \section{Hva er ZFS?}
147 \begin{frame}%[allowframebreaks]
148 \frametitle{Hva er ZFS?}
149 \pause
150 \begin{itemize}[<+->]
151 \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 \end{itemize}
172 \end{frame}
173
174 \section{Hva er grensene til ZFS?}
175 \begin{frame}%[allowframebreaks]
176 \frametitle{Hva er grensene til ZFS?}
177 \pause
178 \begin{itemize}[<+->]
179 \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 \end{itemize}
195 \end{frame}
196
197 \section{Hvordan virker ZFS?}
198 \begin{frame}%[allowframebreaks]
199 \frametitle{Hvordan virker ZFS?}
200 \pause
201 \begin{itemize}[<+->]
202 \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 \end{itemize}
230 \end{frame}
231
232 \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
244 \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 \begin{frame}
307 \partpage
308 \end{frame}
309
310 \section*{Oversikt over del~2: ZFS!}
311 \begin{frame}%[allowframebreaks]
312 \frametitle{Oversikt over del~2: ZFS!}
313 \tableofcontents%[pausesections]
314 \end{frame}
315
316 \section{Administrasjon av ZFS}
317 \begin{frame}%[allowframebreaks]
318 \frametitle{Administrasjon av ZFS}
319 \pause
320 \begin{itemize}[<+->]
321 \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 \end{itemize}
331 \end{frame}
332
333 \section{Oppretting av pooler}
334 \begin{frame}%[allowframebreaks]
335 \frametitle{Oppretting av pooler}
336 \pause
337 \begin{itemize}[<+->]
338 \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 \end{itemize}
346 \end{frame}
347
348 \subsection{Enkle pool-eksempler}
349 \begin{frame}%[allowframebreaks]
350 \frametitle{Oppretting av pooler}
351 \framesubtitle{Enkle pool-eksempler}
352 \pause
353 \begin{itemize}[<+->]
354 \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 \end{itemize}
369 \end{frame}
370
371 \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 \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