2022-10-25 19:27:30 +00:00
\documentclass [11pt, aspectratio=1610] { beamer}
\usetheme { Warsaw}
\usepackage [utf8] { inputenc}
\usepackage [french] { babel}
\usepackage { amsmath}
\usepackage { amsfonts}
\usepackage { amssymb}
\usepackage { tikz}
\usepackage { graphicx}
\usepackage { xcolor}
\usepackage { setspace}
\usepackage { todonotes}
\presetkeys { todonotes} { inline} { }
\renewcommand { \baselinestretch } { 1.25}
\definecolor { orange_ garage} { RGB} { 255,147,41}
\definecolor { gris_ garage} { RGB} { 78,78,78}
2022-11-12 14:58:22 +00:00
\author [Association Deuxfleurs] { ~\linebreak Vincent Giraud}
2022-10-25 19:27:30 +00:00
\title [De l'auto-hébergement à l'entre-hébergement avec Garage] { De l'auto-hébergement à l'entre-hébergement :\\ Garage, pour conserver ses données ensemble}
%\setbeamercovered{transparent}
%\setbeamertemplate{navigation symbols}{}
2022-11-12 14:58:22 +00:00
\date { Capitole du Libre 2022\linebreak
\scriptsize Samedi 19 novembre 2022\linebreak
}
2022-10-25 19:27:30 +00:00
\setbeamercolor { palette primary} { fg=gris_ garage,bg=orange_ garage}
\setbeamercolor { palette secondary} { fg=gris_ garage,bg=gris_ garage}
\setbeamercolor { palette tiertary} { fg=white,bg=gris_ garage}
\setbeamercolor { palette quaternary} { fg=white,bg=gris_ garage}
\setbeamercolor { navigation symbols} { fg=black, bg=white}
\setbeamercolor { navigation symbols dimmed} { fg=darkgray, bg=white}
\setbeamercolor { itemize item} { fg=gris_ garage}
\setbeamertemplate { itemize item} [circle]
\addtobeamertemplate { navigation symbols} { } { %
\usebeamerfont { footline} %
\usebeamercolor [fg] { footline} %
\hspace { 1em} %
\insertframenumber /\inserttotalframenumber
}
\setbeamertemplate { headline}
{ %
\leavevmode %
\begin { beamercolorbox} [wd=.5\paperwidth ,ht=2.5ex,dp=1.125ex]{ section in head/foot} %
\hbox to .5\paperwidth { \hfil \insertsectionhead \hfil }
\end { beamercolorbox} %
\begin { beamercolorbox} [wd=.5\paperwidth ,ht=2.5ex,dp=1.125ex]{ subsection in head/foot} %
\hbox to .5\paperwidth { \hfil \insertsubsectionhead \hfil }
\end { beamercolorbox} %
}
2022-11-12 14:58:22 +00:00
\addtobeamertemplate { footnote} { } { \vspace { 2ex} }
2022-10-25 19:27:30 +00:00
\begin { document}
\begin { frame}
\titlepage
\end { frame}
2022-11-12 14:58:22 +00:00
\section { Introduction}
\subsection { Présentation}
2022-10-25 19:27:30 +00:00
\begin { frame}
2022-11-12 14:58:22 +00:00
\begin { columns}
\column { 0.5 \linewidth }
\begin { center}
\includegraphics [width=3.5cm] { deuxfleurs-logo.png} \linebreak
2022-10-25 19:27:30 +00:00
2022-11-12 14:58:22 +00:00
\texttt { https://deuxfleurs.fr}
\end { center}
\column { 0.4 \linewidth }
\begin { center}
Deuxfleurs est une association militant en faveur d'un internet plus convivial, avec une organisation et des rapports de force repensés.\linebreak
Nous faisons partie du CHATONS\footnote [frame] { Collectif des Hébergeurs Alternatifs, Transparents, Ouverts, Neutres et Solidaires} depuis avril 2022.
\includegraphics [width=2cm] { logo_ chatons.png}
\end { center}
\end { columns}
\end { frame}
2022-11-12 15:41:47 +00:00
2022-11-17 23:06:13 +00:00
\subsection { Héberger à la maison}
2022-11-12 15:41:47 +00:00
\begin { frame}
\begin { columns}
2022-11-17 23:06:13 +00:00
\begin { column} { 0.5 \linewidth }
2022-11-12 15:41:47 +00:00
\begin { center}
2022-11-17 23:06:13 +00:00
Pour échapper au contrôle et au giron des opérateurs de clouds, héberger ses données à la maison présente de nombreux avantages...
2022-11-12 15:41:47 +00:00
\end { center}
2022-11-17 23:06:13 +00:00
\vspace { 0.5cm}
2022-11-12 21:52:55 +00:00
2022-11-17 23:06:13 +00:00
\begin { itemize} [<+(1)->]
2022-11-12 21:52:55 +00:00
\item On récupère la souveraineté sur ses données
\item On gagne en vie privée
\item On gagne en libertés
\item On est responsabilisé face à ses besoins
\end { itemize}
2022-11-17 23:06:13 +00:00
\end { column}
\vrule { }
\begin { column} { 0.5 \linewidth }
\begin { center}
\onslide <6->{ ... mais aussi bien des contraintes...}
\end { center}
\vspace { 0.5cm}
\begin { itemize} [<+(2)->]
2022-11-12 21:52:55 +00:00
\item On repose sur une connexion internet pour particulier
2022-11-13 19:23:51 +00:00
\item Un certain savoir-faire et moultes compétences sont requis
2022-11-12 21:52:55 +00:00
\item Assurer la résilience de ses services est difficile
\item Bien sauvegarder ses données, et ceci au-delà de son site géographique, n'est pas évident
\end { itemize}
2022-11-17 23:06:13 +00:00
\end { column}
2022-11-12 21:52:55 +00:00
\end { columns}
\end { frame}
2022-11-13 19:23:51 +00:00
\subsection { Sauvegarder pour se parer à tout imprévu}
\begin { frame}
\begin { center}
Sauvegarder pour se parer contre les pannes matérielles est une chose...
Sauvegarder pour se parer contre les cambriolages et les incendies en est une autre !\linebreak
\vspace { 1cm}
\onslide <2->{ Répartir géographiquement ses données devient alors nécessaire.}
\end { center}
\end { frame}
2022-11-17 23:06:13 +00:00
\section { Les solutions à explorer}
2022-11-13 19:23:51 +00:00
\subsection { L'entre-hébergement}
\begin { frame}
\begin { center}
2022-11-17 23:06:13 +00:00
On a vu récemment se développer au sein du CHATONS la notion d'entre-hébergement : en plus de renforcer l'intégrité des sauvegardes, on va améliorer la disponibilité pendant les coupures de liaison internet, de courant, ou pendant les déménagements d'administrateurs par exemple.\linebreak
2022-11-17 00:13:26 +00:00
2022-11-13 19:23:51 +00:00
\vspace { 1cm}
2022-11-17 23:06:13 +00:00
\onslide <2->
{
Dans le cadre du collectif, il s'agit de partager ses volumes de données entre hébergeurs.\linebreak
2022-11-13 19:23:51 +00:00
Pour assurer la confidentialité, on peut chiffrer les données au niveau applicatif.
2022-11-17 23:06:13 +00:00
}
\end { center}
\end { frame}
\subsection { S3 contre les systèmes de fichiers}
\begin { frame}
\begin { center}
Dans le cadre de l'administration de services en ligne, les systèmes de fichiers recèlent certaines difficultés.\linebreak
\vspace { 1cm}
Le standard S3 apporte des facilités; on réduit le stockage à un paradigme de clé-valeur basé essentiellement sur deux opérations seulement: lire ou écrire une clé.
2022-11-13 19:23:51 +00:00
\end { center}
\end { frame}
\section { Garage}
\subsection { Présentation}
\begin { frame}
\begin { columns}
\column { 0.5 \linewidth }
\begin { center}
2022-11-18 12:36:27 +00:00
Garage essaye de répondre à l'ensemble de ces besoins.\linebreak
2022-11-13 19:23:51 +00:00
\vspace { 0.5cm}
Il s'agit d'un logiciel libre permettant de distribuer un service S3 sur diverses machines éloignées.
\end { center}
\column { 0.5 \linewidth }
\begin { center}
\includegraphics [width=4cm] { garage-logo.png} \linebreak
\texttt { https://garagehq.deuxfleurs.fr/}
\end { center}
\end { columns}
\end { frame}
2022-11-13 21:55:48 +00:00
2022-11-16 13:04:03 +00:00
\subsection { Gestion des zones}
\begin { frame}
\begin { center}
2022-11-18 00:01:37 +00:00
Garage va prendre en compte les zones géographiques au moment de répliquer les données.\linebreak
2022-11-16 13:04:03 +00:00
\vspace { 1cm}
\includegraphics [width=13.25cm] { zones.png}
\end { center}
\end { frame}
2022-11-13 21:55:48 +00:00
\subsection { Comment ça marche ?}
\begin { frame}
2022-11-14 23:28:31 +00:00
\begin { columns}
\column { 0.5 \linewidth }
\input { schéma europe}
\column { 0.5 \linewidth }
\begin { center}
Chaque objet est dupliqué sur plusieurs zones différentes.\linebreak
2022-11-17 23:06:13 +00:00
\onslide <5->{ Lorsqu'un nouvel hébergeur rejoint le réseau, la charge se voit équilibrée.} \linebreak
2022-11-14 23:28:31 +00:00
2022-11-17 23:06:13 +00:00
\onslide <12->{ Si une zone devient indisponible, les autres continuent d'assurer le service.} \linebreak
2022-11-14 23:28:31 +00:00
\end { center}
\end { columns}
2022-11-13 21:55:48 +00:00
\end { frame}
\subsection { Financement}
\begin { frame}
\begin { center}
Dans le cadre du programme \textit { Horizon 2021} de l'Union Européenne, nous avons reçu une subvention de la part de l'initiative NGI Pointer\footnote [frame] { Next Generation Internet Program for Open Internet Renovation} .\linebreak
\includegraphics [width=3cm] { drapeau_ européen.png} \hspace { 1cm}
\includegraphics [width=3cm] { NGI.png} \linebreak
2022-11-18 12:36:27 +00:00
Nous avons ainsi pu financer le développement de Garage pendant 1 an.
2022-11-13 21:55:48 +00:00
\end { center}
\end { frame}
\subsection { Licence}
\begin { frame}
\begin { center}
De par nos valeurs, nous avons attribué la licence AGPL version 3 à Garage, notamment afin qu'il reste parmi les biens communs.\linebreak
\vspace { 0.5cm}
\includegraphics [width=5cm] { agpl-v3-logo.png} \linebreak
\end { center}
\end { frame}
\subsection { Langage utilisé}
\begin { frame}
\begin { center}
2022-11-16 13:04:03 +00:00
Nous avons décidé d'écrire Garage à l'aide du langage Rust, afin d'obtenir une compilation vers des binaires natifs et efficaces.\linebreak
2022-11-13 21:55:48 +00:00
\includegraphics [width=3.5cm] { rust-logo.png} \linebreak
Ce choix permet également de bénéficier des avantages reconnus de Rust en termes de sécurité.
\end { center}
\end { frame}
2022-11-16 13:04:03 +00:00
\subsection { Matériel requis}
\begin { frame}
\begin { center}
Garage peut ainsi être performant sur des machines limitées. Les prérequis sont minimes : n'importe quelle machine avec un processeur qui a moins d'une décennie, 1~gigaoctet de mémoire vive, et 16~gigaoctets de stockage suffit.\linebreak
\vspace { 1cm}
Cet aspect est déterminant : il permet en effet d'héberger sur du matériel acheté d'occasion, pour réduire l'impact écologique de nos infrastructures.
\end { center}
\end { frame}
\subsection { Performances}
\begin { frame}
\begin { center}
\includegraphics [width=13.25cm] { rpc-amplification.png}
\end { center}
\end { frame}
\begin { frame}
\begin { center}
\includegraphics [width=11cm] { rpc-complexity.png}
\end { center}
\end { frame}
2022-11-17 00:13:26 +00:00
\subsection { Services}
\begin { frame}
\begin { center}
Puisqu'il suit le standard S3, beaucoup de services populaires sont par conséquence compatibles avec Garage :\linebreak
\begin { columns}
\column { 0.2 \linewidth }
\begin { center}
\includegraphics [width=2.5cm] { nextcloud-logo.png}
\end { center}
\column { 0.2 \linewidth }
\begin { center}
\includegraphics [width=2.5cm] { peertube-logo.png}
\end { center}
\column { 0.2 \linewidth }
\begin { center}
\includegraphics [width=2.5cm] { matrix-logo.png}
\end { center}
\column { 0.2 \linewidth }
\begin { center}
\includegraphics [width=2.5cm] { mastodon-logo.png}
\end { center}
\end { columns}
~\linebreak
Et comme souvent avec S3, on peut assimiler un bucket à un site, et utiliser le serveur pour héberger des sites web statiques.
\end { center}
\end { frame}
\section { Intégration chez Deuxfleurs}
\subsection { Matériel}
\begin { frame}
\begin { center}
\includegraphics [width=13cm] { neptune.jpg} \linebreak
En pratique, nos serveurs ne sont effectivement que des machines achetées d'occasion (très souvent des anciens ordinateurs destinés à la bureautique en entreprise).
\end { center}
\end { frame}
\subsection { Environnement logiciel}
\begin { frame}
\begin { center}
Pour faciliter la reproduction d'un environnement connu, NixOS est installé sur nos machines.\linebreak
\vspace { 1cm}
Pour s’ accommoder des réseaux qu'on trouve derrière des routeurs pour particuliers, on s'aide de notre logiciel Diplonat\footnote [frame] { \texttt { https://git.deuxfleurs.fr/Deuxfleurs/diplonat} } .
\end { center}
\end { frame}
\section { Au-delà...}
\subsection { ... de Deuxfleurs}
\begin { frame}
\begin { center}
\includegraphics [width=10cm] { tedomum.png}
\end { center}
\end { frame}
\subsection { ... de Garage}
\begin { frame}
\begin { center}
Nous avons récemment lancé le développement d'Aérogramme\footnote [frame] { \texttt { https://git.deuxfleurs.fr/Deuxfleurs/aerogramme} } .\linebreak
\vspace { 1cm}
Il s'agit d'un serveur de stockage de courriels chiffrés.\linebreak
\vspace { 1cm}
Il est conçu pour pouvoir travailler avec Garage.
\end { center}
\end { frame}
\section { Fin}
\subsection { Contacts}
\begin { frame}
\begin { center}
\begin { tikzpicture}
\node (ronce) { \includegraphics [width=0.95\textwidth] { ronce.jpg} } ;
\node [white] at (-5.1,3.6) { Intéressé(e) ?} ;
\node [white, align=center] at (4.2,-2.6) { Contactez-nous !\\ \texttt { coucou@deuxfleurs.fr} \\ \texttt { \# forum:deuxfleurs.fr} } ;
\end { tikzpicture}
\end { center}
\end { frame}
2022-10-25 19:27:30 +00:00
\end { document}