210 lines
		
	
	
	
		
			4.1 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			210 lines
		
	
	
	
		
			4.1 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
% 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{Hacker Erwachen 2011}
 | 
						|
 | 
						|
\author{Nico -telmich- Schottelius}
 | 
						|
 | 
						|
\date{18. März 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 (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
 | 
						|
  make 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}
 | 
						|
  # So wird es laufen...
 | 
						|
  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
 | 
						|
   __package nullmailer --state installed
 | 
						|
 | 
						|
   require="__package/nullmailer" \
 | 
						|
       __file /etc/nullmailer/remotes \
 | 
						|
          --source "$__type/files/remotes"
 | 
						|
   eof
 | 
						|
   chmod u+x conf/type/__my_mailserver/manifest
 | 
						|
 | 
						|
   mkdir conf/type/__my_mailserver/files
 | 
						|
   echo my.fancy.smart.host > \
 | 
						|
       conf/type/__my_mailserver/files/remotes
 | 
						|
   \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.2 origin/1.2
 | 
						|
  \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/
 | 
						|
  \end{block}
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
\end{document}
 |