forked from ungleich-public/cdist
import speech from cosin
Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
parent
c85aec7b13
commit
8da1c44081
1 changed files with 242 additions and 0 deletions
242
doc/speeches/2011-05-20_cosin.tex
Normal file
242
doc/speeches/2011-05-20_cosin.tex
Normal file
|
@ -0,0 +1,242 @@
|
|||
% first presentation about cmtp
|
||||
\pdfminorversion=4
|
||||
%\documentclass[ucs]{beamer}
|
||||
\documentclass{beamer}
|
||||
%\documentclass[utf8]{beamer}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage{german}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{beamerthemesplit}
|
||||
\setbeamercovered{dynamic}
|
||||
\usetheme{Malmoe}
|
||||
\usecolortheme{crane}
|
||||
|
||||
\title{cdist - nutzbare Konfigurationsverwaltung}
|
||||
\subtitle{Cosin 2011}
|
||||
|
||||
\author{Nico -telmich- Schottelius}
|
||||
|
||||
\date{25. Juni 2011}
|
||||
|
||||
\begin{document}
|
||||
\frame{\titlepage}
|
||||
|
||||
%\section[Outline]{}
|
||||
\frame{\tableofcontents}
|
||||
|
||||
\section{Einleitung}
|
||||
\frame
|
||||
{
|
||||
\frametitle{Was ist das Problem?}
|
||||
\begin{itemize}
|
||||
\item Einmal konfigurieren = toll
|
||||
\item Zweimal konfigurieren = naja, ...
|
||||
\item Neue Sachen machen mehr Spass als alte wiederholen
|
||||
\item Viele Rechner = viel Mühe?
|
||||
\end{itemize}
|
||||
}
|
||||
|
||||
\frame
|
||||
{
|
||||
\frametitle{Das ist nicht neu...}
|
||||
\begin{itemize}
|
||||
\item cfengine
|
||||
\item Puppet
|
||||
\item bcfg2
|
||||
\item chef
|
||||
\item ...
|
||||
\end{itemize}
|
||||
}
|
||||
|
||||
\frame
|
||||
{
|
||||
\frametitle{Warum cdist?}
|
||||
\begin{itemize}
|
||||
\item Klein
|
||||
\item Unix
|
||||
\item Leicht zu bedienen
|
||||
\item ... zu erweitern
|
||||
\item Shell
|
||||
\item Weil es Spaß macht!
|
||||
\end{itemize}
|
||||
}
|
||||
|
||||
\section{Installieren}
|
||||
\frame
|
||||
{
|
||||
\frametitle{Vorraussetzungen}
|
||||
\begin{itemize}
|
||||
\item sshd
|
||||
\item root login via sshd
|
||||
\item Besser: ssh-pubkey konfiguriert (PermitRootLogin without-password)
|
||||
\item git
|
||||
\item Asciidoc für dia manpages
|
||||
\end{itemize}
|
||||
}
|
||||
|
||||
\frame
|
||||
{
|
||||
\frametitle{Installation}
|
||||
\begin{center}
|
||||
git clone git://git.schottelius.org/cdist
|
||||
\end{center}
|
||||
}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Erstellen der Manpages}
|
||||
|
||||
\begin{verbatim}
|
||||
# Braucht asciidoc / a2x
|
||||
./build.sh man
|
||||
\end{verbatim}
|
||||
\end{frame}
|
||||
|
||||
\section{Nutzen}
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Vorbereitung PATH und MANPATH}
|
||||
|
||||
\begin{verbatim}
|
||||
cd cdist
|
||||
eval `./bin/cdist-env`
|
||||
echo $PATH
|
||||
echo $MANPATH
|
||||
\end{verbatim}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Nun los}
|
||||
\begin{verbatim}
|
||||
# Fangen wir bei uns an
|
||||
cdist-deploy-to localhost
|
||||
\end{verbatim}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Der Einstiegspunkt}
|
||||
\begin{small}
|
||||
\begin{verbatim}
|
||||
cat << eof > conf/manifest/init
|
||||
__file /etc/cdist-configured
|
||||
|
||||
case "$__target_host" in
|
||||
localhost)
|
||||
__link /tmp/cdist-testfile \
|
||||
--source /etc/cdist-configured \
|
||||
--type symbolic
|
||||
__addifnosuchline /tmp/cdist-welcome \
|
||||
--line "Welcome to cdist"
|
||||
;;
|
||||
esac
|
||||
eof
|
||||
# Muss ausführbar sein
|
||||
chmod u+x conf/manifest/init
|
||||
|
||||
\end{verbatim}
|
||||
\end{small}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Nun los}
|
||||
\begin{verbatim}
|
||||
# Nun läuft es!
|
||||
cdist-deploy-to localhost
|
||||
\end{verbatim}
|
||||
\end{frame}
|
||||
|
||||
\frame
|
||||
{
|
||||
\frametitle{Funktionalität zusammenfassen}
|
||||
\begin{itemize}[<+->]
|
||||
\item "`Typen"' (types)
|
||||
\item conf/type/*
|
||||
\item \_\_ vor jedem Namen (Shell-Umgebung)
|
||||
\item z.B. Netzseite, Mailserver, Wiki, ...
|
||||
\end{itemize}
|
||||
}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Ein neuer Typ}
|
||||
\begin{small}
|
||||
\begin{verbatim}
|
||||
% mkdir conf/type/__my_mailserver
|
||||
% cat << eof > conf/type/__my_mailserver/manifest
|
||||
# Dieser Typ konfiguriert meinen Mailserver
|
||||
require="__package/nullmailer" \
|
||||
__file /etc/nullmailer/remotes \
|
||||
--source "$__type/files/remotes"
|
||||
|
||||
# Reihenfolge spielt keine Rolle
|
||||
__package nullmailer --state installed
|
||||
eof
|
||||
\end{verbatim}
|
||||
\end{small}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Ein neuer Typ (2)}
|
||||
\begin{small}
|
||||
\begin{verbatim}
|
||||
# Wichtig: Wird ausgeführt
|
||||
% chmod u+x conf/type/__my_mailserver/manifest
|
||||
|
||||
# Darf nur einmal verwendet werden pro Rechner
|
||||
% touch conf/type/__my_mailserver/singleton
|
||||
|
||||
# Nullmailer Konfiguration
|
||||
% mkdir conf/type/__my_mailserver/files
|
||||
% echo my.fancy.smart.host > \
|
||||
conf/type/__my_mailserver/files/remotes
|
||||
\end{verbatim}
|
||||
\end{small}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Neuen Typ nutzen}
|
||||
\begin{small}
|
||||
\begin{verbatim}
|
||||
% $EDITOR conf/manifest/init
|
||||
|
||||
case "$__target_host" in
|
||||
localhost)
|
||||
...
|
||||
__my_mailserver
|
||||
...
|
||||
;;
|
||||
\end{verbatim}
|
||||
\end{small}
|
||||
\end{frame}
|
||||
|
||||
\section{Aktualisieren}
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Versionen}
|
||||
\begin{itemize}[<+->]
|
||||
\item x.y: Stabile Version
|
||||
\item master: Entwicklung
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Stabile Version auswählen}
|
||||
\begin{center}
|
||||
git checkout -b 1.7 origin/1.7
|
||||
\end{center}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile]
|
||||
\frametitle{Aktualisieren}
|
||||
\begin{center}
|
||||
git pull
|
||||
\end{center}
|
||||
\end{frame}
|
||||
|
||||
\frame
|
||||
{
|
||||
\frametitle{Ende}
|
||||
\begin{block}{Das war's}
|
||||
Viel Spaß - Mehr Infos gibt's auf http://www.nico.schottelius.org/software/cdist/\\
|
||||
und http://l.schottelius.org/pipermail/cdist
|
||||
\end{block}
|
||||
}
|
||||
|
||||
|
||||
\end{document}
|
Loading…
Reference in a new issue