forked from cvmfs/doc-cvmfs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cvmfstech.tex
142 lines (111 loc) · 4.32 KB
/
cvmfstech.tex
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
\documentclass[final,a4paper,10pt,abstracton]{scrreprt}
%_DRAFT\usepackage{draftwatermark}\SetWatermarkScale{5}
\include{packages}
\title{The CernVM File System}
%\subtitle{Technical Report}
\author{Jakob Blomer}
\providecommand{\cern}{{\scshape cern}}
\providecommand{\cernvm}{{\scshape CernVM}}
\providecommand{\cvmfs}{{\scshape CernVM-FS}}
\providecommand{\leveldb}{{\scshape leveldb}}
\providecommand{\sqlite}{{\scshape SQLite}}
\providecommand{\redirfs}{{\scshape redirfs}}
\providecommand{\autofs}{{\scshape autofs}}
\providecommand{\nagios}{{\scshape Nagios}}
\providecommand{\squid}{{\scshape Squid}}
\providecommand{\fuse}{{\scshape Fuse}}
\providecommand{\fusex}{{\scshape Fuse4X}}
\providecommand{\osxfuse}{{\scshape OSXFuse}}
\providecommand{\aufs}{{\scshape AUFS}}
\providecommand{\nfs}{{\scshape nfs}}
\providecommand{\afs}{{\scshape AFS}}
\providecommand{\rpm}{{\scshape rpm}}
\providecommand{\dpkg}{{\scshape dpkg}}
\providecommand{\yum}{{\scshape yum}}
\providecommand{\cmake}{{\scshape cmake}}
\providecommand{\cernvmfs}{{\scshape CernVM File System}}
\providecommand{\zep}{{\scshape zeppelin}}
\providecommand{\scvmfs}{{{\itshape\scshape s}\scshape cvmfs}}
\providecommand{\preliminary}[1]{#1\ \textcolor{red}{\emph{preliminary~information}}}
\providecommand{\deprecated}[1]{#1\ \textcolor{red}{\emph{deprecated~information}}}
\providecommand{\msgname}[1]{\emph{#1}}
\newcommand{\textapprox}{\raisebox{0.5ex}{\texttildelow}}
\usepackage[nottoc]{tocbibind}
\usepackage{makeidx}
\makeindex
\begin{document}
\selectlanguage{english}
\renewcommand\today{April 2014}
\pagestyle{empty}
\begin{titlepage}
\begin{addmargin}[-\oddsidemargin]{-\evensidemargin}
\newlength{\saveparindent}
\setlength{\saveparindent}{\parindent}
\setlength{\parindent}{0cm}
\sf
\center
\vspace*{-1cm}
\mbox{
\parbox{4cm}{
\resizebox{4cm}{!}{\input{figures/cernlogo}}
}
\parbox{9cm}{
%\LARGE CERN\\
%\large PH-SFT%\\[0.5cm]
}
}
\vspace*{2.5cm}
%{\large \scshape PH-SFT}\\[0.5cm]
\HRule\\[0.4cm]
\huge The CernVM File System\\
\HRule\\[1.5cm]
\includegraphics[height=4cm]{figures/cvmfs}\\[1.5cm]
\large Jakob Blomer \qquad Predrag Buncic \qquad Dave Dykstra \qquad Ren\'e Meusel\\[0.4cm]
\url{jblomer@cern.ch}
%\today
\vfill
\large Revision ---VERSION---\\[1ex]
\vfill
\large Technical Report\\
\today
% \large ISSN 1234-5678
\setlength{\parindent}{\saveparindent}
\end{addmargin}
\end{titlepage}
\cleardoublepage
\pagenumbering{roman}
\abstract{
The \cernvmfs\ (\cvmfs) provides a scalable, reliable and low-maintenance software distribution service.
It was developed to assist High Energy Physics (HEP) collaborations to deploy software on the worldwide-distributed computing infrastructure used to run data processing applications.
\cvmfs\ is implemented as a POSIX read-only file system in user space (a FUSE module).
Files and directories are hosted on standard web servers and mounted in the universal namespace \texttt{/cvmfs}.
Internally, \cvmfs\ uses content-addressable storage and Merkle trees in order to maintain file data and meta-data.
\cvmfs\ uses outgoing HTTP connections only, thereby it avoids most of the firewall issues of other network file systems.
It transfers data and meta-data on demand and verifies data integrity by cryptographic hashes.
By means of aggressive caching and reduction of latency, \cvmfs\ focuses specifically on the software use case.
Software usually comprises many small files that are frequently opened and read as a whole.
Furthermore, the software use case includes frequent look-ups for files in multiple directories when search paths are examined.
\cvmfs\ is actively used by small and large HEP collaborations.
In many cases, it replaces package managers and shared software areas on cluster file systems as means to distribute the software used to process experiment data.
}
\tableofcontents
\clearpage
\pagenumbering{arabic}
\pagestyle{headings}
\include{cpt-overview}
\include{cpt-quickstart}
\include{cpt-configure}
\include{cpt-squid}
\include{cpt-repo}
\include{cpt-replica}
\include{cpt-details}
%\chapter{Sample Infrastructure Setup}
\appendix
%\include{apx-releasemgr}
\include{apx-rpms}
\include{apx-parameters}
\pagestyle{plain}
\bibliographystyle{alpha}
\bibliography{references}
%\printindex
\end{document}