Browse Source

Add FOSDEM talk and move all .pdf files to Git LFS

pull/236/head
Alex 4 months ago
parent
commit
e312ba977e
Signed by: lx GPG Key ID: EDABF9711E244EB1
  1. 1
      .gitattributes
  2. BIN
      doc/logo/garage_hires.png
  3. BIN
      doc/sticker/Garage.pdf
  4. BIN
      doc/talks/2020-12-02_wide-team/talk.pdf
  5. BIN
      doc/talks/2021-04-28_spirals-team/figures/c1.pdf
  6. BIN
      doc/talks/2021-04-28_spirals-team/figures/c2.pdf
  7. BIN
      doc/talks/2021-04-28_spirals-team/figures/c3.pdf
  8. BIN
      doc/talks/2021-04-28_spirals-team/figures/c4.pdf
  9. BIN
      doc/talks/2021-04-28_spirals-team/figures/conflict_acid.pdf
  10. BIN
      doc/talks/2021-04-28_spirals-team/figures/conflict_base.pdf
  11. BIN
      doc/talks/2021-04-28_spirals-team/figures/conflict_crdt.pdf
  12. BIN
      doc/talks/2021-04-28_spirals-team/figures/conflict_problem.pdf
  13. BIN
      doc/talks/2021-04-28_spirals-team/figures/garage_tables.pdf
  14. BIN
      doc/talks/2021-04-28_spirals-team/figures/m_proxy_gray.pdf
  15. BIN
      doc/talks/2021-04-28_spirals-team/talk.pdf
  16. BIN
      doc/talks/2021-09-13-ngi-kickoff/talk.pdf
  17. 13
      doc/talks/2022-02-06-fosdem/.gitignore
  18. 3
      doc/talks/2022-02-06-fosdem/Makefile
  19. BIN
      doc/talks/2022-02-06-fosdem/assets/AGPLv3_Logo.png
  20. BIN
      doc/talks/2022-02-06-fosdem/assets/atuin.jpg
  21. BIN
      doc/talks/2022-02-06-fosdem/assets/compatibility.png
  22. BIN
      doc/talks/2022-02-06-fosdem/assets/endpoint-latency-dc.png
  23. BIN
      doc/talks/2022-02-06-fosdem/assets/garageuses.png
  24. BIN
      doc/talks/2022-02-06-fosdem/assets/inframap.jpg
  25. BIN
      doc/talks/2022-02-06-fosdem/assets/location-aware.png
  26. BIN
      doc/talks/2022-02-06-fosdem/assets/map.png
  27. BIN
      doc/talks/2022-02-06-fosdem/assets/minio.png
  28. BIN
      doc/talks/2022-02-06-fosdem/assets/neptune.jpg
  29. BIN
      doc/talks/2022-02-06-fosdem/assets/rust_logo.png
  30. BIN
      doc/talks/2022-02-06-fosdem/assets/slide1.png
  31. BIN
      doc/talks/2022-02-06-fosdem/assets/slide2.png
  32. BIN
      doc/talks/2022-02-06-fosdem/assets/slide3.png
  33. 4326
      doc/talks/2022-02-06-fosdem/assets/slides.svg
  34. BIN
      doc/talks/2022-02-06-fosdem/talk.pdf
  35. 270
      doc/talks/2022-02-06-fosdem/talk.tex

1
.gitattributes

@ -0,0 +1 @@
*.pdf filter=lfs diff=lfs merge=lfs -text

BIN
doc/logo/garage_hires.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
doc/sticker/Garage.pdf

Binary file not shown.

BIN
doc/talks/2020-12-02_wide-team/talk.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/c1.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/c2.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/c3.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/c4.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/conflict_acid.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/conflict_base.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/conflict_crdt.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/conflict_problem.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/garage_tables.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/figures/m_proxy_gray.pdf

Binary file not shown.

BIN
doc/talks/2021-04-28_spirals-team/talk.pdf

Binary file not shown.

BIN
doc/talks/2021-09-13-ngi-kickoff/talk.pdf

Binary file not shown.

13
doc/talks/2022-02-06-fosdem/.gitignore

@ -0,0 +1,13 @@
*
!assets
!.gitignore
!*.svg
!*.png
!*.jpg
!*.tex
!Makefile
!.gitignore
!talk.pdf

3
doc/talks/2022-02-06-fosdem/Makefile

@ -0,0 +1,3 @@
talk.pdf: talk.tex
pdflatex talk.tex

BIN
doc/talks/2022-02-06-fosdem/assets/AGPLv3_Logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/atuin.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/compatibility.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/endpoint-latency-dc.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/garageuses.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/inframap.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/location-aware.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/map.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/minio.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/neptune.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/rust_logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/slide1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/slide2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

BIN
doc/talks/2022-02-06-fosdem/assets/slide3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

4326
doc/talks/2022-02-06-fosdem/assets/slides.svg

File diff suppressed because it is too large

After

Width:  |  Height:  |  Size: 315 KiB

BIN
doc/talks/2022-02-06-fosdem/talk.pdf (Stored with Git LFS)

Binary file not shown.

270
doc/talks/2022-02-06-fosdem/talk.tex

@ -0,0 +1,270 @@
%\nonstopmode
\documentclass[aspectratio=169]{beamer}
\usepackage[utf8]{inputenc}
% \usepackage[frenchb]{babel}
\usepackage{amsmath}
\usepackage{mathtools}
\usepackage{breqn}
\usepackage{multirow}
\usetheme{boxes}
\usepackage{graphicx}
%\useoutertheme[footline=authortitle,subsection=false]{miniframes}
\beamertemplatenavigationsymbolsempty
\definecolor{TitleOrange}{RGB}{255,137,0}
\setbeamercolor{title}{fg=TitleOrange}
\setbeamercolor{frametitle}{fg=TitleOrange}
\definecolor{ListOrange}{RGB}{255,145,5}
\setbeamertemplate{itemize item}{\color{ListOrange}$\blacktriangleright$}
\definecolor{verygrey}{RGB}{70,70,70}
\setbeamercolor{normal text}{fg=verygrey}
\usepackage{tabu}
\usepackage{multicol}
\usepackage{vwcol}
\usepackage{stmaryrd}
\usepackage{graphicx}
\usepackage[normalem]{ulem}
\title{Introducing Garage}
\subtitle{a new storage platform for self-hosted geo-distributed clusters}
\author{Deuxfleurs Association}
\date{FOSDEM '22}
\begin{document}
\begin{frame}
\centering
\includegraphics[width=.3\linewidth]{../../sticker/Garage.pdf}
\vspace{1em}
{\large\bf Deuxfleurs Association}
\vspace{1em}
\url{https://garagehq.deuxfleurs.fr/}
Matrix channel: \texttt{\#garage:deuxfleurs.fr}
\end{frame}
\begin{frame}
\frametitle{Our objective at Deuxfleurs}
\begin{center}
\textbf{Promote self-hosting and small-scale hosting\\
as an alternative to large cloud providers}
\end{center}
\vspace{2em}
\visible<2->{
Why is it hard?
}
\visible<3->{
\vspace{2em}
\begin{center}
\textbf{\underline{Resilience}}\\
{\footnotesize (we want good uptime/availability with low supervision)}
\end{center}
}
\end{frame}
\begin{frame}
\frametitle{How to be resilient (the hard way)}
Entreprise-grade systems typically employ:
\vspace{1em}
\begin{itemize}
\item RAID
\item Redundant power grid + UPS
\item Redundant Internet connections
\item Low-latency links
\item ...
\end{itemize}
\vspace{1em}
$\to$ it's costly and only worth it at DC scale
\end{frame}
\begin{frame}
\frametitle{How to be resilient (the \underline{\textbf{cheap}} way)}
\only<1,4-5>{
Instead, we use:
\vspace{1em}
\begin{itemize}
\item \textcolor<2->{gray}{Commodity hardware (e.g. old desktop PCs)}
\vspace{.5em}
\item<4-> \textcolor<5->{gray}{Commodity Internet (e.g. FTTB, FTTH) and power grid}
\vspace{.5em}
\item<5-> \textcolor<6->{gray}{\textbf{Geographical redundancy} (multi-site replication)}
\end{itemize}
}
\only<2>{
\begin{center}
\includegraphics[width=.8\linewidth]{assets/atuin.jpg}
\end{center}
}
\only<3>{
\begin{center}
\includegraphics[width=.8\linewidth]{assets/neptune.jpg}
\end{center}
}
\only<6>{
\begin{center}
\includegraphics[width=.5\linewidth]{assets/inframap.jpg}
\end{center}
}
\end{frame}
\begin{frame}
\frametitle{How to make this happen}
\begin{center}
\only<1>{\includegraphics[width=.8\linewidth]{assets/slide1.png}}%
\only<2>{\includegraphics[width=.8\linewidth]{assets/slide2.png}}%
\only<3>{\includegraphics[width=.8\linewidth]{assets/slide3.png}}%
\end{center}
\end{frame}
\begin{frame}
\frametitle{Distributed file systems are slow}
File systems are complex, for example:
\vspace{1em}
\begin{itemize}
\item Concurrent modification by several processes
\vspace{1em}
\item Folder hierarchies
\vspace{1em}
\item Other requirements of the POSIX spec
\end{itemize}
\vspace{1em}
Coordination in a distributed system is costly
\vspace{1em}
Costs explode with commodity hardware / Internet connections\\
{\small (we experienced this!)}
\end{frame}
\begin{frame}
\frametitle{A simpler solution: object storage}
Only two operations:
\vspace{1em}
\begin{itemize}
\item Put an object at a key
\vspace{1em}
\item Retrieve an object from its key
\end{itemize}
\vspace{1em}
{\footnotesize (and a few others)}
\vspace{1em}
Sufficient for many applications!
\end{frame}
\begin{frame}
\frametitle{A simpler solution: object storage}
\begin{center}
\includegraphics[width=.2\linewidth]{../2020-12-02_wide-team/img/Amazon-S3.jpg}
\hspace{5em}
\includegraphics[width=.2\linewidth]{assets/minio.png}
\end{center}
\vspace{1em}
S3: a de-facto standard, many compatible applications
\vspace{1em}
MinIO is self-hostable but not suited for geo-distributed deployments
\end{frame}
\begin{frame}
\frametitle{But what is Garage, exactly?}
\textbf{Garage is a self-hosted drop-in replacement for the Amazon S3 object store}\\
\vspace{.5em}
that implements resilience through geographical redundancy on commodity hardware
\begin{center}
\includegraphics[width=.8\linewidth]{assets/garageuses.png}
\end{center}
\end{frame}
\begin{frame}
\frametitle{What makes Garage different?}
\textbf{Coordination-free:}
\vspace{2em}
\begin{itemize}
\item No Raft or Paxos
\vspace{1em}
\item Internal data types are CRDTs
\vspace{1em}
\item All nodes are equivalent (no master/leader/index node)
\end{itemize}
\vspace{2em}
$\to$ less sensitive to higher latencies between nodes
\end{frame}
\begin{frame}
\frametitle{What makes Garage different?}
\begin{center}
\includegraphics[width=.9\linewidth]{assets/endpoint-latency-dc.png}
\end{center}
\end{frame}
\begin{frame}
\frametitle{What makes Garage different?}
\textbf{Consistency model:}
\vspace{2em}
\begin{itemize}
\item Not ACID (not required by S3 spec) / not linearizable
\vspace{1em}
\item \textbf{Read-after-write consistency}\\
{\footnotesize (stronger than eventual consistency)}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{What makes Garage different?}
\textbf{Location-aware:}
\vspace{2em}
\begin{center}
\includegraphics[width=\linewidth]{assets/location-aware.png}
\end{center}
\vspace{2em}
Garage replicates data on different zones when possible
\end{frame}
\begin{frame}
\frametitle{What makes Garage different?}
\begin{center}
\includegraphics[width=.8\linewidth]{assets/map.png}
\end{center}
\end{frame}
\begin{frame}
\frametitle{An ever-increasing compatibility list}
\begin{center}
\includegraphics[width=.7\linewidth]{assets/compatibility.png}
\end{center}
\end{frame}
\begin{frame}
\frametitle{Get Garage now!}
\begin{center}
\includegraphics[width=.3\linewidth]{../../logo/garage_hires.png}\\
\vspace{-1em}
\url{https://garagehq.deuxfleurs.fr/}\\
Matrix channel: \texttt{\#garage:deuxfleurs.fr}
\vspace{2em}
\includegraphics[width=.09\linewidth]{assets/rust_logo.png}
\includegraphics[width=.2\linewidth]{assets/AGPLv3_Logo.png}
\end{center}
\end{frame}
\begin{frame}
\frametitle{Demo time!}
\end{frame}
\end{document}
%% vim: set ts=4 sw=4 tw=0 noet spelllang=fr :
Loading…
Cancel
Save