SlideShare uma empresa Scribd logo
1 de 139
Infrastruktur als Code
Wer bin ich?
● Jan Gehring
● System Architekt
● Bei inovex seit 2008
Um was geht’s?
● Von der Turnschuh-Administration
● Zur automatisierten Umgebung
Turnschuh-Administration
● Der unglückliche Umstand, sämtliche Rechner
im Netzwerk zu Fuß abklappern zu müssen,
um vor Ort administrative Tätigkeiten
durchzuführen.
http://www.wikiservice.at
Turnschuh-Administration
● Funktioniert bei wenigen Servern
● Kann funktionieren wenn jeder Server
unterschiedlich ist
● Skaliert nur durch mehr Mitarbeiter
Turnschuh-Administration
Oft gehört...
● Wirklich?
● Was ist mit
– ntp
– Benutzer und Gruppen
– ssh
– logrotate
– resolv.conf
– profile
– Apache Security Einstellungen
– ...
Jeder Server ist unterschiedlich
● Wieviele Server kann eine Person
administrieren?
– 10
– 25
– 50
● Krankheit oder Urlaub?
Skaliert?
● Der Tag hat 24 Stunden
● Naja, eigentlich nur 8 …
Zeit ist knapp
● Mails lesen und beantworten
Zeit ist knapp
● Mails lesen und beantworten (1-2h)
● Mailinglisten verfolgen (Security, ...)
Zeit ist knapp
Sicherheitsproblem im Apache...
auch bei uns.
Infrastruktur als Code
Muss heute mittag gepatched
werden!
Infrastruktur als Code
● Mails lesen und beantworten (1-2h)
● Mailinglisten verfolgen (1h)
● Updates aus der IT Welt (heise, golem, ...)
Zeit ist knapp
● Mails lesen und beantworten (1-2h)
● Mailinglisten verfolgen (1h)
● Updates aus der IT Welt (1h)
Zeit ist knapp
Vormittag ist rum
Zeit ist knapp
Bleiben noch 4 Stunden
Zeit ist knapp
Ein Kollege von der Entwicklung
schaut rein, hat ein Problem...
Zeit ist knapp
3 Stunden
Zeit ist knapp
Neue Softwarerelease soll deployed
werden...
Zeit ist knapp
Funktioniert nicht!
Zeit ist knapp
Hotfix 1...
Zeit ist knapp
Hotfix 2...
Zeit ist knapp
-2 Stunden
Zeit ist knapp
Feierabend!
Zeit ist knapp
Security Update kommt morgen...
Zeit ist knapp
.oO( Vielleicht )
Zeit ist knapp
Kommt das bekannt vor?
Infrastruktur als Code
Wenn ja, dann seid ihr hier richtig!
Infrastruktur als Code
Was braucht man um zu
Automatisieren?
Infrastruktur als Code
Tools!
Infrastruktur als Code
Infrastruktur als Code
http://www.immobilienwirtschaft360.de/
Continuous Integration Tool
Infrastruktur als Code
Infrastruktur als Code
http://jenkins-ci.org/
http://travisci.com/
Bild von: https://www.openshift.com
Configuration/Deployment
Management Tool
Infrastruktur als Code
Infrastruktur als Code
http://www.opscode.com/
Bild von: http://developer.rackspace.com/
Source Control Management
Infrastruktur als Code
Infrastruktur als Code
http://git-scm.com/
http://mercurial.selenic.com/
http://subversion.tigris.org/
Infrastruktur als Code
Was bedeutet das?
Infrastruktur als Code
● Das Wissen über die Infrastruktur ist nicht in
eurem Kopf sondern in einem Script.
● Wenn ihr mal krank seid kann ein Kollege
kucken wie es funktioniert und muss nicht
stören.
● Das gilt auch für den Urlaub.
● Oder wenn ihr mal die Firma gewechselt habt.
Was bedeutet das?
Außerdem macht es sich gut bei
einem Bewerbungsgespräch...
Inovex sucht übrigens Linux System
Engineers!
● Wenn es nur von einem verwendet /
upgedatet wird?
● Wenn es nur auf einer Plattform läuft?
Was bringt uns ein Script?
● Dezentrale Versionsverwaltung
● Funktioniert auch offline
● Schöne Oberflächen
Git – und jeder macht mit
Git – und jeder macht mit
http://gitlab.org/
● Dezentrale Versionsverwaltung
● Funktioniert auch offline
● Schöne Oberflächen
● Scripte sind versioniert
● Vielleicht machen auch die Entwickler mit
● Man lernt dazu
Git – und jeder macht mit
● Unterschiedliche Entwicklungszweige
● Für Testsysteme ein Entwicklungszweig
(branch)
● Für Livesysteme ein „Production“ Branch
Git – und jeder macht mit
Git – und jeder macht mit
http://erickryski.com/
● Standard Aufgaben kann man hier hinterlegen
– Testen des Development Branchs
– Automatische Prüfung von Backup/Restore
– Deployment von neuen Software-Releases
– Erstellen von Test-VMs
– …
● Gibt auch eine Android / iPhone App
Jenkins – Ein-Klick Administration
Jenkins – Ein-Klick Administration
http://devcentral.f5.com/
● Keine selbst geschriebenen Scripte
– Auf die Arbeit von anderen aufbauen
● Ganz einfaches Perl
– Kennt eigentlich jeder
– Lesbar
● Benötigt (fast) nichts auf dem Zielsystem
● Kein Agent nötig
● Verwendet SSH
● Logik läuft auf dem lokalen Rechner
Rex – Remote Execution
● Wird entwickelt seid 2010
● Genau für dieses Einsatzgebiet
● Bruch der Kompatibilität = Bug
● Aktive Community
● Professioneller Support verfügbar
Rex – Remote Execution
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● Begrifflichkeiten
● Rex Interna
● Aus der Praxis
● Installation
● 1. Schritte
● ...
Infrastruktur als Code
Begrifflichkeiten
Was ist was?
Infrastruktur als Code
WKS
Rex
Workstation
WKS
Rex
SSH
Workstation
SRV02SRV01 SRV03 SRV04 SRV05 SRV06
WKS
Rex
SSH
Workstation & Server
Gruppen
LB01 LB02
FE01 FE03FE02
MW01 MW02
DBS01 DBS02
DBM01
Gruppen
DB Write
DB Read
Middleware
Frontend
Loadbalancer LB01 LB02
FE01 FE03FE02
MW01 MW02
DBS01 DBS02
DBM01
Funktions-Gruppen
group “ourgroup“ => “server1“, “server2“, “server3“;
Funktions-Gruppen
group “ourgroup“ => “server1“, “server2“, “server3“;
Funktions-Gruppen
group “ourgroup“ => “server1“, “server2“, “server3“;
Funktions-Gruppen
group “ourgroup“ => “server[1..3]“;
Funktions-Gruppen
group “ourgroup“ => “server[01..03]“;
Funktions-Gruppen
group “ourgroup“ => get_servers_from_db();
Funktions-Gruppen
Environments
LIVE STAGE TEST
Loadbalancer
Frontend
Middleware
DB Read
DB Write
LB01 LB02
FE01 FE03FE02
MW01 MW02
DBS01 DBS02
DBM01
LB01
FE01
MW01
DBS01
DBM01
FE01
MW01
DBM01
environment “live“ => sub {
group “frontend“ => “fe01[01..03].live“;
};
environment “stage“ => sub {
group “frontend“ => “fe01.stage“;
};
environment “test“ => sub {
group “frontend“ => “fe01.test“;
};
Environments
environment “live“ => sub {
group “frontend“ => “fe01[01..03].live“;
};
environment “stage“ => sub {
group “frontend“ => “fe01.stage“;
};
environment “test“ => sub {
group “frontend“ => “fe01.test“;
};
Environments
environment “live“ => sub {
group “frontend“ => “fe01[01..03].live“;
};
environment “stage“ => sub {
group “frontend“ => “fe01.stage“;
};
environment “test“ => sub {
group “frontend“ => “fe01.test“;
};
Environments
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
};
Tasks
task “mytask“, group => “ourgroup“, make {
run “unzip -q /tmp/my.zip“;
};
Tasks
task “mytask“, group => “ourgroup“, make {
run “unzip -q /tmp/my.zip“;
};
Tasks
task “mytask“, group => “ourgroup“, make {
run “unzip -q /tmp/my.zip“;
};
Tasks
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● Begrifflichkeiten
● Rex Interna
● Aus der Praxis
● Installation
● 1. Schritte
● ...
Aufteilung in Module und Services
● Unabhängig
● Wiederverwendbar
● Für einen Einsatzzweck gemacht
Module sind
... ein spezieller Dienst
Services sind ...
z.b.: der Intranet-Server
Services sind ...
oder: der Proxy-Server
Services sind ...
oder: das Frontend
Services sind ...
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● Begrifflichkeiten
● Rex Interna
● Aus der Praxis
● Installation
● 1. Schritte
● ...
Installation
echo 'deb http://rex.linux-files.org/ubuntu/ precise rex' >> 
/etc/apt/sources.list
wget -O - 
http://rex.linux-files.org/DPKG-GPG-KEY-REXIFY-REPO 
| apt-key add -
apt-get update
apt-get install rex
Installation / Ubuntu
Installation / CentOS
rpm –import 
http://rex.linux-files.org/RPM-GPG-KEY-REXIFY-REPO.CENTOS6
cat >/etc/yum.repos.d/rex.repo <<EOF
[rex]
name=Fedora $releasever - $basearch - Rex Repository
baseurl=http://rex.linux-files.org/CentOS/$releasever/rex/
$basearch/
enabled=1
EOF
yum install rex
Installation / Windows
● Strawberry-Perl (http://strawberryperl.com/)
● cmd> cpanm Rex
curl -L get.rexify.org 
| perl - --sudo -n Rex
Installation / Source
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● Installation
● 1. Schritte
● Templates
● 1. Modul
● Verzeichnisstruktur
● Das Modul
● Ein Service
Ausgangspunkt: das Rexfile
user “root“;
password “box“;
Das Rexfile
user “root“;
password “box“;
pass_auth;
Das Rexfile
user “root“;
password “box“;
private_key “/home/jan/.ssh/id_rsa_root“;
public_key “/home/jan/.ssh/id_rsa_root.pub“;
key_auth;
Das Rexfile
user “root“;
password “box“;
group “frontend“ => “fe[01..03]";
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
};
Das Rexfile
bash# rex install_ntpd
group “frontend“ => “fe[01..03]";
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
source => “files/etc/ntp.conf“,
owner => “root“,
group => “root“,
mode => 644;
};
Das Rexfile
bash# rex install_ntpd
Das Rexfile
group “frontend“ => “fe[01..03]";
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
source => “files/etc/ntp.conf“,
owner => “root“,
group => “root“,
mode => 644;
service ntpd => ensure => “started“;
};
Das Rexfile
bash# rex install_ntpd
group “frontend“ => “fe[01..03]";
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
source => “files/etc/ntp.conf“,
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
Das Rexfile
bash# rex install_ntpd
● Benutzer & Gruppen
● Cron
● Filesystem Funktionen
– mkdir, rmdir, ls, ln, rm, chown, chgrp, chmod
– is_file, is_dir, mv, cp, mount, umount, ...
● LVM
● Kernel
● Process-Management
● Virtualization (KVM, Xen)
● Cloud (Amazon, Jiffybox, OpenNebula, ...)
Mehr Funktionen
http://rexify.org/api/
Mehr Funktionen
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● Installation
● 1. Schritte
● Templates
● 1. Modul
● Verzeichnisstruktur
● Das Modul
● Ein Service
Templates
group “frontend“ => “fe[01..03]";
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
source => “files/etc/ntp.conf“,
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
Templates
driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
server ntp01.intern.lan
server ntp02.intern.lan
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
Templates
driftfile /var/lib/ntp/ntp.drift
statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable
<% for my $server (@{ $servers }) { %>
server <%= $server %>
<% } %>
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
Templates
group “frontend“ => “fe[01..03]";
my $servers = [“ntp01.company.lan“, “ntp02.company.lan“];
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
content => template(“files/etc/ntp.conf.tpl“,
servers => $servers),
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
Templates
Templates
● $eth0_ip
● $eth0_netmask
● $hostname
● $domain
● $architecture
● $kernel
● ...
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● 1. Schritte
● Templates
● 1. Modul
● Verzeichnisstruktur
● Das Modul
● Ein Service
Module
bash# rexify NTP --create-module
├── lib
│ └── NTP
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Verzeichnisstruktur
bash# rexify Common::NTP 
--create-module
├── lib
│ └── Common
│ └── NTP
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Verzeichnisstruktur
├── lib
│ └── Common
│ └── NTP
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Verzeichnisstruktur
> cat lib/NTP/meta.yml
Name: NTP
Description: {{ DESCRIPTION }}
Author: {{ your name <your.name@email.com> }}
License: {{ THE LICENSE }}
# If you have dependencies to other Rex Modules.
Require:
- Other::Rex::Module
- 2nd::Rex::Module
Verzeichnisstruktur
Bis hier hin Fragen?
Weiter geht’s mit: Rex
● 1. Schritte
● Templates
● 1. Modul
● Verzeichnisstruktur
● Das Modul
● Ein Service
group “frontend“ => “fe[01..03]";
my $servers = [“ntp01.company.lan“, “ntp02.company.lan“];
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
content => template(“files/etc/ntp.conf.tpl“,
servers => $servers),
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
Das Modul
group “frontend“ => “fe[01..03]";
my $servers = [“ntp01.company.lan“, “ntp02.company.lan“];
task “install_ntpd“, group => “frontend“, make {
install “ntpd“;
file “/etc/ntp.conf“,
content => template(“files/etc/ntp.conf.tpl“,
servers => $servers),
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
Das Modul
package Common::NTP;
use Rex -base;
task example => sub {
my $output = run "uptime";
say $output;
};
1;
Das Modul
package Common::NTP;
use Rex -base;
task “setup“ => make {
my $params = shift;
install “ntpd“;
file “/etc/ntp.conf“,
content => template(“files/etc/ntp.conf.tpl“, %{ $params }),
owner => “root“,
group => “root“,
mode => 644,
on_change => make { service ntpd => “restart“ };
service ntpd => ensure => “started“;
};
1;
Das Modul
├── lib
│ └── NTP
│ ├── files
│ │ └── etc
│ │ └── ntp.conf.tpl
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Das Modul
├── files
│ └── etc
│ └── ntp.conf.tpl
├── lib
│ └── NTP
│ ├── files
│ │ └── etc
│ │ └── ntp.conf.tpl
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Das Modul
├── files
│ └── etc
│ └── ntp.conf.tpl
├── lib
│ └── NTP
│ ├── files
│ │ └── etc
│ │ └── ntp.conf.tpl
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Das Modul
├── files
│ └── etc
│ └── ntp.conf.tpl
├── lib
│ └── NTP
│ ├── files
│ │ └── etc
│ │ └── ntp.conf.tpl
│ ├── meta.yml
│ └── __module__.pm
└── Rexfile
Das Modul
include “NTP“;
group “frontend“ => “fe[01..03]";
my $servers = [“ntp01.company.lan“, “ntp02.company.lan“];
task “prepare“, group => “frontend“, make {
NTP::setup(servers => $servers);
};
Das Modul / der Service
include “NTP“;
group “frontend“ => “fe[01..03]";
my $servers = [“ntp01.company.lan“, “ntp02.company.lan“];
task “prepare“, group => “frontend“, make {
NTP::setup(servers => $servers);
};
Das Modul / der Service
Vielen Dank für Eure Aufmerksamkeit!
Kontakt
Jan Gehring
Systems Architecture
inovex GmbH
Office Pforzheim
Karlsruhe Straße 71
75179 Pforzheim
+49 (0)173 3181 133
jan.gehring@inovex.de
Fragen?
http://rexify.org/
irc: freenode / #rex

Mais conteúdo relacionado

Mais procurados

Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014inovex GmbH
 
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...nine
 
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...Benjamin Kuster
 
Systemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und ForemanSystemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und ForemanB1 Systems GmbH
 
Ceph Introduction @GPN15
Ceph Introduction @GPN15Ceph Introduction @GPN15
Ceph Introduction @GPN15m1no
 
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit VagrantDeployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit VagrantChristoph Möller
 
Unser Weg zum Frankenstack
Unser Weg zum FrankenstackUnser Weg zum Frankenstack
Unser Weg zum FrankenstackSascha Vogt
 
Continuous Deployment mit Rex und Jenkins
Continuous Deployment mit Rex und JenkinsContinuous Deployment mit Rex und Jenkins
Continuous Deployment mit Rex und Jenkinsinovex GmbH
 
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebOSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebNETWAYS
 
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...inovex GmbH
 
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerOSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerNETWAYS
 
Tipps und Tricks im Umgang mit Docker
Tipps und Tricks im Umgang mit DockerTipps und Tricks im Umgang mit Docker
Tipps und Tricks im Umgang mit DockerNicholas Dille
 
docker.io @ CentOS 7 - Secure And Portable Containers Made Easy
docker.io @ CentOS 7 - Secure And Portable Containers Made Easydocker.io @ CentOS 7 - Secure And Portable Containers Made Easy
docker.io @ CentOS 7 - Secure And Portable Containers Made Easyinovex GmbH
 
Einführung in Laravel und GulpJS
Einführung in Laravel und GulpJSEinführung in Laravel und GulpJS
Einführung in Laravel und GulpJSthespazecookie
 
Docker Einführung @GPN15
Docker Einführung @GPN15Docker Einführung @GPN15
Docker Einführung @GPN15m1no
 
docker.io - Secure And Portable Containers Made Easy
docker.io - Secure And Portable Containers Made Easydocker.io - Secure And Portable Containers Made Easy
docker.io - Secure And Portable Containers Made Easyinovex GmbH
 
Continuous Delivery für Infrastrukturdienste in Container-Umgebungen
Continuous Delivery für Infrastrukturdienste in Container-UmgebungenContinuous Delivery für Infrastrukturdienste in Container-Umgebungen
Continuous Delivery für Infrastrukturdienste in Container-UmgebungenNicholas Dille
 

Mais procurados (20)

Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014
 
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...
TechTalkThursday 26.11.2015: Manage the minions - Docker Container mit Kubern...
 
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...
TechTalkThursday: Zentrales Metriken-System - ist der Flügelschlag des Schmet...
 
Systemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und ForemanSystemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und Foreman
 
Ceph Introduction @GPN15
Ceph Introduction @GPN15Ceph Introduction @GPN15
Ceph Introduction @GPN15
 
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit VagrantDeployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
Deployment von Entwicklungsumgebungen eines TYPO3-Intranets mit Vagrant
 
Unser Weg zum Frankenstack
Unser Weg zum FrankenstackUnser Weg zum Frankenstack
Unser Weg zum Frankenstack
 
Continuous Deployment mit Rex und Jenkins
Continuous Deployment mit Rex und JenkinsContinuous Deployment mit Rex und Jenkins
Continuous Deployment mit Rex und Jenkins
 
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael StrebOSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
OSMC 2008 | Monitoring Microsoft SQL Server by Michael Streb
 
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...
Docker Security - Architektur und Sicherheitsfunktionen von Containervirtuali...
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard LaußerOSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
OSMC 2010 | Monitoring mit Shinken by Gerhard Laußer
 
Tipps und Tricks im Umgang mit Docker
Tipps und Tricks im Umgang mit DockerTipps und Tricks im Umgang mit Docker
Tipps und Tricks im Umgang mit Docker
 
docker.io @ CentOS 7 - Secure And Portable Containers Made Easy
docker.io @ CentOS 7 - Secure And Portable Containers Made Easydocker.io @ CentOS 7 - Secure And Portable Containers Made Easy
docker.io @ CentOS 7 - Secure And Portable Containers Made Easy
 
Einführung in Laravel und GulpJS
Einführung in Laravel und GulpJSEinführung in Laravel und GulpJS
Einführung in Laravel und GulpJS
 
Infra coders meetup
Infra coders meetupInfra coders meetup
Infra coders meetup
 
Docker Einführung @GPN15
Docker Einführung @GPN15Docker Einführung @GPN15
Docker Einführung @GPN15
 
docker.io - Secure And Portable Containers Made Easy
docker.io - Secure And Portable Containers Made Easydocker.io - Secure And Portable Containers Made Easy
docker.io - Secure And Portable Containers Made Easy
 
Continuous Delivery für Infrastrukturdienste in Container-Umgebungen
Continuous Delivery für Infrastrukturdienste in Container-UmgebungenContinuous Delivery für Infrastrukturdienste in Container-Umgebungen
Continuous Delivery für Infrastrukturdienste in Container-Umgebungen
 
Dockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloudDockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloud
 

Destaque

Pick1 for Transport for London v1.0
Pick1 for Transport for London v1.0Pick1 for Transport for London v1.0
Pick1 for Transport for London v1.0Paolo Privitera
 
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...João Pedro Batista Tomaz
 
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGIST
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGISTMYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGIST
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGISTMYO AUNG Myanmar
 
Who Sets the News Agenda
Who Sets the News AgendaWho Sets the News Agenda
Who Sets the News AgendaTom Kramer
 
Parte 2 la minería en centro Europa
Parte 2 la minería en centro Europa Parte 2 la minería en centro Europa
Parte 2 la minería en centro Europa Soipuerta Soy-puerta
 
Moteur d'Exploration "Set-Based"
Moteur d'Exploration "Set-Based"Moteur d'Exploration "Set-Based"
Moteur d'Exploration "Set-Based"Vincent HOLLEY
 
Jose roberto rincon elección
Jose roberto rincon elecciónJose roberto rincon elección
Jose roberto rincon elecciónJoseRobertoRincon
 
Guia parkinson juvenil
Guia parkinson juvenilGuia parkinson juvenil
Guia parkinson juvenilJan003
 
xEAC: XForms for EAC-CPF
xEAC: XForms for EAC-CPFxEAC: XForms for EAC-CPF
xEAC: XForms for EAC-CPFewg118
 
Mauro Alovisio Droni e privacy 27 04 2016 2016 museo del cinema smart
Mauro Alovisio Droni e privacy 27 04 2016  2016 museo del cinema  smartMauro Alovisio Droni e privacy 27 04 2016  2016 museo del cinema  smart
Mauro Alovisio Droni e privacy 27 04 2016 2016 museo del cinema smartMauro Alovisio
 

Destaque (20)

Cv Cast
Cv CastCv Cast
Cv Cast
 
Tablas3
Tablas3Tablas3
Tablas3
 
Pick1 for Transport for London v1.0
Pick1 for Transport for London v1.0Pick1 for Transport for London v1.0
Pick1 for Transport for London v1.0
 
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...
Desenvolvimento profissional contínuoem cuidados de saúde primários e integra...
 
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGIST
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGISTMYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGIST
MYANMAR AMBERS REPORT COLLECTION BY MYO AUNG EX-GEOLOGIST
 
Cạm Bẫy
Cạm BẫyCạm Bẫy
Cạm Bẫy
 
Who Sets the News Agenda
Who Sets the News AgendaWho Sets the News Agenda
Who Sets the News Agenda
 
Parte 2 la minería en centro Europa
Parte 2 la minería en centro Europa Parte 2 la minería en centro Europa
Parte 2 la minería en centro Europa
 
Bioclean. CA
Bioclean. CABioclean. CA
Bioclean. CA
 
Capitulo 05 - Redes NGN
Capitulo 05 - Redes NGNCapitulo 05 - Redes NGN
Capitulo 05 - Redes NGN
 
Moteur d'Exploration "Set-Based"
Moteur d'Exploration "Set-Based"Moteur d'Exploration "Set-Based"
Moteur d'Exploration "Set-Based"
 
IDRC14-Miwa ABE
IDRC14-Miwa ABEIDRC14-Miwa ABE
IDRC14-Miwa ABE
 
Jose roberto rincon elección
Jose roberto rincon elecciónJose roberto rincon elección
Jose roberto rincon elección
 
Cava catalan no
Cava catalan noCava catalan no
Cava catalan no
 
Proyecto cis evaristo martín nieto málaga
Proyecto cis evaristo martín nieto   málagaProyecto cis evaristo martín nieto   málaga
Proyecto cis evaristo martín nieto málaga
 
Guia parkinson juvenil
Guia parkinson juvenilGuia parkinson juvenil
Guia parkinson juvenil
 
xEAC: XForms for EAC-CPF
xEAC: XForms for EAC-CPFxEAC: XForms for EAC-CPF
xEAC: XForms for EAC-CPF
 
Que es la web
Que es la webQue es la web
Que es la web
 
Location Map for Adopt Program
Location Map for Adopt ProgramLocation Map for Adopt Program
Location Map for Adopt Program
 
Mauro Alovisio Droni e privacy 27 04 2016 2016 museo del cinema smart
Mauro Alovisio Droni e privacy 27 04 2016  2016 museo del cinema  smartMauro Alovisio Droni e privacy 27 04 2016  2016 museo del cinema  smart
Mauro Alovisio Droni e privacy 27 04 2016 2016 museo del cinema smart
 

Semelhante a Rex - Infrastruktur als Code

Einführung in Puppet und Vagrant
Einführung in Puppet und VagrantEinführung in Puppet und Vagrant
Einführung in Puppet und Vagrants0enke
 
Dnug35 ak-dev.071111-cookbook
Dnug35 ak-dev.071111-cookbookDnug35 ak-dev.071111-cookbook
Dnug35 ak-dev.071111-cookbookUlrich Krause
 
Production-ready Infrastruktur in 3 Wochen
Production-ready Infrastruktur in 3 WochenProduction-ready Infrastruktur in 3 Wochen
Production-ready Infrastruktur in 3 WochenAndré Goliath
 
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbHDocker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbHagilemethoden
 
Herstellerunabhängige RZ Automatisierung mit orcharhino
Herstellerunabhängige RZ Automatisierung mit orcharhinoHerstellerunabhängige RZ Automatisierung mit orcharhino
Herstellerunabhängige RZ Automatisierung mit orcharhinoATIX AG
 
AdminCamp 2011 Performance
AdminCamp 2011 PerformanceAdminCamp 2011 Performance
AdminCamp 2011 PerformanceUlrich Krause
 
JavaScript für Java-Entwickler W-JAX 2013
JavaScript für Java-Entwickler W-JAX 2013JavaScript für Java-Entwickler W-JAX 2013
JavaScript für Java-Entwickler W-JAX 2013Oliver Zeigermann
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickKarin Patenge
 
Docker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsDocker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsQAware GmbH
 
Docker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsDocker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsJosef Adersberger
 
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperr
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperrOracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperr
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperrGunther Pippèrr
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015FromDual GmbH
 
EntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedEntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedRené Winkelmeyer
 
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturContinuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturQAware GmbH
 
PHP Summit 2013 - Make or Buy?
PHP Summit 2013 - Make or Buy?PHP Summit 2013 - Make or Buy?
PHP Summit 2013 - Make or Buy?Sebastian Heuer
 
Grundlagen postgresql
Grundlagen postgresqlGrundlagen postgresql
Grundlagen postgresqlinovex GmbH
 
fn project serverless computing
fn project serverless computingfn project serverless computing
fn project serverless computingWolfgang Weigend
 
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXC
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXCContainer im Betrieb - Ergebnisse der Validieren Docker vs. LXC
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXCBild GmbH & Co. KG
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterDésirée Pfister
 

Semelhante a Rex - Infrastruktur als Code (20)

Einführung in Puppet und Vagrant
Einführung in Puppet und VagrantEinführung in Puppet und Vagrant
Einführung in Puppet und Vagrant
 
Dnug35 ak-dev.071111-cookbook
Dnug35 ak-dev.071111-cookbookDnug35 ak-dev.071111-cookbook
Dnug35 ak-dev.071111-cookbook
 
Production-ready Infrastruktur in 3 Wochen
Production-ready Infrastruktur in 3 WochenProduction-ready Infrastruktur in 3 Wochen
Production-ready Infrastruktur in 3 Wochen
 
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbHDocker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH
Docker Workshop Experten Forum Stuttgart 2015, Agile Methoden GmbH
 
Herstellerunabhängige RZ Automatisierung mit orcharhino
Herstellerunabhängige RZ Automatisierung mit orcharhinoHerstellerunabhängige RZ Automatisierung mit orcharhino
Herstellerunabhängige RZ Automatisierung mit orcharhino
 
AdminCamp 2011 Performance
AdminCamp 2011 PerformanceAdminCamp 2011 Performance
AdminCamp 2011 Performance
 
JavaScript für Java-Entwickler W-JAX 2013
JavaScript für Java-Entwickler W-JAX 2013JavaScript für Java-Entwickler W-JAX 2013
JavaScript für Java-Entwickler W-JAX 2013
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
 
Docker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsDocker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-Patterns
 
Docker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-PatternsDocker und Kubernetes Patterns & Anti-Patterns
Docker und Kubernetes Patterns & Anti-Patterns
 
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperr
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperrOracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperr
Oracle oem 12c_plugin_development-doag-konferenz_11_2014_print_gunther_pipperr
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015
 
EntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloadedEntwicklerCamp 2014 - DOTS reloaded
EntwicklerCamp 2014 - DOTS reloaded
 
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturContinuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
 
Einführung in Docker
Einführung in DockerEinführung in Docker
Einführung in Docker
 
PHP Summit 2013 - Make or Buy?
PHP Summit 2013 - Make or Buy?PHP Summit 2013 - Make or Buy?
PHP Summit 2013 - Make or Buy?
 
Grundlagen postgresql
Grundlagen postgresqlGrundlagen postgresql
Grundlagen postgresql
 
fn project serverless computing
fn project serverless computingfn project serverless computing
fn project serverless computing
 
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXC
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXCContainer im Betrieb - Ergebnisse der Validieren Docker vs. LXC
Container im Betrieb - Ergebnisse der Validieren Docker vs. LXC
 
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman GächterRsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
Rsyslog deutsche Qualitätsarbeit für Linux Roman Gächter
 

Rex - Infrastruktur als Code

Notas do Editor

  1. Und mit Administrieren meine ich nicht nur mal einen Virtuellen Host anlegen oder einen neuen Benutzer ausrollen. Da gehöhrt auch so sachen dazu wie - Backup prüfen (= würde ein Restore funktionieren) - Updates testen und einspielen
  2. Es gibt verschiedene Tools die einem dabei behilflich sind seine tägliche Arbeit zu tun. Wie z.b. Jenkins
  3. Es gibt verschiedene Tools die einem dabei behilflich sind seine tägliche Arbeit zu tun. Wie z.b. Jenkins
  4. Es gibt verschiedene Tools die einem dabei behilflich sind seine tägliche Arbeit zu tun. Wie z.b. Jenkins
  5. Es gibt verschiedene Tools die einem dabei behilflich sind seine tägliche Arbeit zu tun. Wie z.b. Jenkins
  6. Ant oder Maven für die Entwickler um Software Releases zu bauen (oder ähnliche Tools für Perl, PHP, Ruby, …) Und Rex, Ansible, Puppet und andere für uns Sys-Admins.
  7. Ant oder Maven für die Entwickler um Software Releases zu bauen (oder ähnliche Tools für Perl, PHP, Ruby, …) Und Rex, Ansible, Puppet und andere für uns Sys-Admins.
  8. Und noch mehr Tools, wie z.b. Git oder Subversion um unsere Scripte zu verwalten und zu Versionieren.
  9. Und noch mehr Tools, wie z.b. Git oder Subversion um unsere Scripte zu verwalten und zu Versionieren.
  10. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  11. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  12. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  13. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  14. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  15. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  16. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  17. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  18. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  19. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  20. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  21. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  22. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  23. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  24. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  25. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  26. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  27. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  28. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  29. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  30. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  31. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  32. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  33. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  34. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  35. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  36. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  37. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  38. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  39. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  40. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  41. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  42. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  43. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  44. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  45. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  46. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  47. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  48. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  49. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  50. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  51. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  52. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  53. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  54. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  55. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  56. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  57. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  58. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  59. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  60. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  61. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  62. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  63. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  64. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  65. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  66. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  67. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  68. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  69. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  70. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  71. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  72. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  73. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  74. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  75. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  76. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  77. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  78. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  79. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  80. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  81. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  82. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  83. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  84. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  85. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  86. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  87. z.b. wenn man abteilungsspezifisch trennen will. Fuer NTP ist vielleicht eine zentrale Stelle verantwortlich.
  88. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  89. Git Submodule
  90. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  91. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  92. Ihr erinnert euch an den ntp task
  93. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  94. Ihr erinnert euch an den ntp task
  95. Ihr erinnert euch an den ntp task
  96. Ihr erinnert euch an den ntp task
  97. Ihr erinnert euch an den ntp task
  98. Ihr erinnert euch an den ntp task
  99. Ihr erinnert euch an den ntp task
  100. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  101. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  102. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.
  103. Wer schreibt, der bleibt... Vergessen war gestern. Wenn wir jetzt nicht mehr genau wissen wie wir etwas vor einem Jahr aufgebaut haben, das Script weiss es noch.