Initial commit

main
Georg Krause 2021-01-21 12:56:14 +01:00
parent 204c1aa870
commit a79d3e6aad
No known key found for this signature in database
GPG Key ID: FD479B9A4D48E632
12 changed files with 233 additions and 7 deletions

14
.gitignore vendored
View File

@ -1,7 +1,7 @@
.aux
.log
.nav
.out
.pdf
.snm
.toc
*.aux
*.log
*.nav
*.out
*.pdf
*.snm
*.toc

2
Makefile Normal file
View File

@ -0,0 +1,2 @@
all:
latexmk -pdf

BIN
images/cake.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
images/distributed.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
images/erasure.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
images/langeweile.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

BIN
images/nest.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

BIN
images/replicated.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
images/snapcast.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

BIN
images/sonos.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

224
presentation.tex Normal file
View File

@ -0,0 +1,224 @@
\documentclass{beamer}
\usepackage{graphicx}
\usepackage{wrapfig}
\graphicspath{ {./images/} }
\usetheme{metropolis} %Usemetropolistheme
\title{Ein Rechenzentrum zum Preis eines Multiroom Audio Systems}
\date{\today}
\author{Georg}
\begin{document}
\maketitle
\begin{frame}{Wie alles began...}
Ich will ein Multiroom-Audio-System!
\begin{itemize}
\item Musik in jedem Raum hören (Küche, Bad, 2 Zimmer)
\item Zugriff auf gesamte Musikbibliothek
\item Steuerung von jedem Gerät
\end{itemize}
\end{frame}
\begin{frame}{Wie alles begann...}
\includegraphics[width=\textwidth]{sonos}
Gesamtpreis: 796 €
\end{frame}
\begin{frame}{Wieso die Idee blöd ist...}
Mensch kauft kommerziellen Mist ...
\begin{itemize}
\item ... den man nicht hacken kann ...
\item ... den man nicht reparieren kann ...
\item ... der nur eine Sache kann ...
\item ... der Nutzer*innen in ein Ökosystem einsperrt ...
\item ... der sau teuer ist
\end{itemize}
\end{frame}
\begin{frame}{Disclaimer}
Es gibt auch noch andere kommerzielle Angebote dieser Art, die genauso blöd sind.
Und es geht sogar noch blöder: Mit Google Home oder Alexa gibt es Überwachung GRATIS OBEN
DRAUF!!!
\end{frame}
\begin{frame}{Was dann?}
\begin{wrapfigure}{r}{0.5\textwidth}
\centering
\includegraphics[width=0.5\textwidth]{snapcast}
\end{wrapfigure}
Setup:
\begin{itemize}
\item 4 Raspberry Pi
\item 4 günstige Boxen oder Stereoanlagen
\item Mopidy als Musikquelle (Dateien, Internetradio, Funkwhale ...)
\item Snapcast als Multiroom-"Verteiler"
\end{itemize}
\end{frame}
\begin{frame}{Kosten}
\begin{itemize}
\item 4 * Raspberry Pi = 4 * 50€
\item 4 * Stereoanlage/Boxen = 4 * 50€
\item Summe: 400€
\item Rest: 396€
\end{itemize}
\end{frame}
\begin{frame}{Das "Problem"}
\includegraphics[width=\textwidth]{langeweile}
Langeweile bei Mensch und Gerät
\end{frame}
\begin{frame}{Die Möglichkeiten}
\begin{itemize}
\item eine Spielwiese zum experimentieren
\item im lokalen Netzwerk Daten verfügbar machen
\item Webservices hosten?
\end{itemize}
\end{frame}
\begin{frame}{1. Erweiterung: NAS}
\begin{block}{NAS}
Network Attached Storage (NAS, englisch für netzgebundener Speicher) bezeichnet einfach zu verwaltende Dateiserver.
\end{block}
\end{frame}
\begin{frame}{1. Erweiterung: NAS}
Hardware:
\begin{itemize}
\item RockPro64
\item PCIe SATA-Adapter
\item 2 x 1TB HDD
\item Summe: 125€
\item Rest: 271€
\end{itemize}
\end{frame}
\begin{frame}{1. Erweiterung: NAS}
Software
\begin{itemize}
\item openmediavault (einfach zu installieren, viele Features)
\item Wechsel zu dietpi + mdadm RAID + Einbindung auf Notebooks via sshfs
\end{itemize}
\end{frame}
\begin{frame}{2. Erweiterung: Docker Swarm}
\begin{columns}[t]
\begin{column}{0.5\textwidth}
\begin{block}{einzelner Server}
\begin{itemize}
\item Bündelung der Hardware in ein System
\item kaum zusätzlicher Verwaltungsaufwand
\end{itemize}
\end{block}
\end{column}
\begin{column}{0.5\textwidth}
\begin{block}{verteiltes System}
\begin{itemize}
\item Verteilung der Hardware auf mehrere Systeme
\item Spezialisierung möglich
\item vermeintlich höhere Ausfallsicherheit
\item einfache Erweiterbarkeit
\end{itemize}
\end{block}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{2. Erweiterung: Docker Swarm}
\begin{wrapfigure}{r}{0.5\textwidth}
\centering
\includegraphics[width=0.3\textwidth]{cake}
\end{wrapfigure}
Features:
\begin{itemize}
\item Aufbrechen der Dienste in Unteraufgabenaufgaben
\item Zuteilung der Unteraufgaben an Worker
\item Reaktion auf Ausfälle einzelner Worker
\item Load-Balancing
\end{itemize}
\end{frame}
\begin{frame}{2. Erweiterung: Docker Swarm}
\center
\includegraphics[width=\textwidth]{ingress-routing-mesh}
\end{frame}
\begin{frame}{2. Erweiterung: Docker Swarm}
aktuelle Services:
\begin{itemize}
\item Gitea
\item Drone CI
\item Grafana
\item Prometheus
\item Cryptpad
\end{itemize}
\end{frame}
\begin{frame}{3. Erweiterung: GlusterFS}
\begin{block}{Problem}
Wenn das NAS ausfällt, fallen ALLE Dienste aus, weil die Daten nicht mehr verfügbar sind.
\end{block}
\begin{block}{SPOF}
Unter einem Single Point of Failure (kurz SPOF bzw. deutsch einzelner Ausfallpunkt) versteht
man einen Bestandteil eines technischen Systems, dessen Ausfall den Ausfall des gesamten
Systems nach sich zieht.
\end{block}
\begin{block}{Lösungsansatz}
verteilte Dateisysteme: Ceph, Gluster
\end{block}
\end{frame}
\begin{frame}[t]{3. Erweiterung: GlusterFS}
\begin{wrapfigure}{l}{0.5\textwidth}
\centering
\includegraphics[width=0.5\textwidth]{replicated}
\includegraphics[width=0.5\textwidth]{distributed}
\end{wrapfigure}
Features:
\begin{itemize}
\item Spiegelung
\item Verteilung
\item Erasure Code
\item Geo-Replication
\end{itemize}
\end{frame}
\begin{frame}{Exkurs: Erasure Codes}
\includegraphics[width=\textwidth]{erasure}
\end{frame}
\begin{frame}{3. Erweiterung: GlusterFS}
Hardware:
\begin{itemize}
\item HDDs recycelt aus Notebooks + SATA-USB-Adapter (35€)
\item übrigens Geld: 236€
\item Spendenaufruf: 2,5" HDDs/SSDs, gern alt
\end{itemize}
\end{frame}
\begin{frame}
\includegraphics[width=\textwidth]{nest}
\end{frame}
\begin{frame}{Ausblick}
\begin{itemize}
\item Ordnung machen
\item Mehr Dienste
\item ... Vorschläge? :) ...
\end{itemize}
\end{frame}
\begin{frame}
Fragen?\\ \pause
Vielen Dank fürs zuhören. DIY ftw, squat the web!
\end{frame}
\end{document}