97 lines
2.2 KiB
Markdown
97 lines
2.2 KiB
Markdown
<a href="#" class="image navigate-down">
|
|
<img src="/img/chef_logo.png" alt="Chef">
|
|
</a>
|
|
|
|
## Konfigurationsmanagement
|
|
|
|
von Jörg Thalheim, (Gruppe 4, Matrikel 3749175)
|
|
|
|
Dresden, 22 Januar #TODO aktualisieren
|
|
|
|
|
|
## Inhaltsübersicht
|
|
|
|
- Was ist Chef/Puppet
|
|
- Einführung in Chef
|
|
- Testing
|
|
- Demo
|
|
|
|
|
|
## Was ist Chef/Puppet? (1/2)
|
|
|
|
- Konfigurationsmanagement
|
|
- Beispiele: Chef, Puppet, Salt, Ansible, CFEngine
|
|
|
|
<img src="/img/chef_logo.png" height="150" alt="Chef">
|
|
<img src="/img/puppet_logo.png" height="150" alt="Puppet">
|
|
<img src="/img/saltstack_logo.jpg" height="150" alt="Salt">
|
|
<img src="/img/ansible_logo.png" height="150" alt="Ansible">
|
|
<img src="/img/cfengine_logo.jpg" height="150" alt="CFEngine">
|
|
|
|
Note:
|
|
- in der Praxis mehr Knoten
|
|
- wechselnde Admins
|
|
- Dokumentation veraltet schnell
|
|
- sowohl bestehende Knoten müssen aktuell gehalten werden,
|
|
als auch neue eingerichtet
|
|
- Komplexe Shell-Skripte sind schlecht maintainbar,
|
|
häufig nicht portable und langsam
|
|
- Problem wird durch Konfigurationsmanagements gelöst.
|
|
- Grundidee: Infrastruktur wird durch eine Konfigurationsdatei oder Sprache beschrieben
|
|
und das Konfigurationsmanagement, versucht diesen Zustand herzustellen.
|
|
- Hier ein paar Beispiele, Im folgenden werde ich näher auf chef und Puppet
|
|
eingehen.
|
|
|
|
|
|
## Was ist Chef/Puppet? (2/2)
|
|
|
|
<table class="reveal">
|
|
<thead>
|
|
<tr>
|
|
<th>Kriterium</th>
|
|
<th>Chef</th>
|
|
<th>Puppet</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<th>Programmiersprache</th>
|
|
<td>Ruby</td>
|
|
<td>Ruby</td>
|
|
</tr>
|
|
<tr>
|
|
<th>Konfigurationsprache</th>
|
|
<td>Ruby</td>
|
|
<td>eigene DSL (Ruby)</td>
|
|
</tr>
|
|
<tr>
|
|
<th>Paradigma</th>
|
|
<td>Prozedural</td>
|
|
<td>Model-Driven</td>
|
|
</tr>
|
|
<tr>
|
|
<th>Codezeilen</th>
|
|
<td>108,726<sup>[1][1]</sup></td>
|
|
<td>353,651<sup>[2][2]</sup></td>
|
|
</tr>
|
|
<tr>
|
|
<th>Community</th>
|
|
<td>11,270 Repositories<sup>[3][3]</sup></td>
|
|
<td>13.020 Repositories<sup>[4][4]</sup></td>
|
|
</tr>
|
|
<tr>
|
|
<th>kommerzieller Support</th>
|
|
<td>✓</td>
|
|
<td>✓</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
[1]: https://www.ohloh.net/p/puppet
|
|
[2]: https://www.ohloh.net/p/chef
|
|
[3]: https://github.com/search?q=chef
|
|
[4]: https://github.com/search?q=puppet
|
|
|
|
Note:
|
|
- Beide Projekte sind in Ruby geschrieben.
|