systemmanagement mit puppet und foreman
DESCRIPTION
Im heutigen IT-Alltag müssen neue Systeme innerhalb kürzester Zeit konfiguriert und verfügbar sein. Immer mehr Systeme werden von immer weniger Administratoren betreut. Werkzeuge zum Deployment und zum Konfigurationsmanagement bieten die nötige Automatisierung. Dieser Vortrag führt ein in das Systemmanagement mit Puppet und Foreman und zeigt beispielhaft, wie ein System frisch eingerichtet, konfiguriert und in eine Monitoringumgebung eingebunden wird.TRANSCRIPT
![Page 1: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/1.jpg)
Systemmanagement mit Puppet undForemanCLT 2014 16. März 2014
Mattias GieseSolution Architect for Systemsmanagement and Monitoring
B1 Systems [email protected]
B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development
![Page 2: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/2.jpg)
Agenda
Vorstellung B1 Systems
Überblick über verwendete Komponenten
Foreman Kurzvorstellung
Puppet Kurzvorstellung
Spacewalk Kurzvorstellung
Einstieg in PuppetDB
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 2 / 31
![Page 3: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/3.jpg)
Vorstellung B1 Systems
gegründet 2004primär Linux/Open Source-Themennational & international tätigüber 60 Mitarbeiterunabhängig von Soft- und Hardware-HerstellernLeistungsangebot:
Beratung & ConsultingSupportEntwicklungTrainingBetriebLösungen
dezentrale Strukturen
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 3 / 31
![Page 4: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/4.jpg)
SchwerpunkteVirtualisierung (XEN, KVM & RHEV)Systemmanagement (Spacewalk, Red Hat Satellite, SUSEManager)Konfigurationsmanagement (Puppet & Chef)Monitoring (Nagios & Icinga)IaaS Cloud (OpenStack & SUSE Cloud)Hochverfügbarkeit (Pacemaker)Shared Storage (GPFS, OCFS2, DRBD & CEPH)Dateiaustausch (ownCloud)Paketierung (Open Build Service)Administratoren oder Entwickler zur Unterstützung des Teamsvor Ort
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 4 / 31
![Page 5: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/5.jpg)
Überblick über verwendete Komponenten
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 5 / 31
![Page 6: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/6.jpg)
Verwendete Komponenten
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 6 / 31
![Page 8: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/8.jpg)
Foreman Kurzvorstellung
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 8 / 31
![Page 9: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/9.jpg)
Foreman 1/2
Lebenszyklusverwaltung von Computernmodular aufgebautverwaltet DHCP/DNS/TFTP/Puppet/Puppet CAZukunft: cfengine/Chef und andereAnbindung an verschiedene Hypervisor
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 9 / 31
![Page 10: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/10.jpg)
Foreman 2/2
Cloud: AWS, OpenStackSteuerung von iLO/DRAC/andereunterstützt RHEL/Fedora/Debian/UbuntuWeb-UI/CLI/Restful APIAlternativen: Cobbler, Razor, Rudder (cfengine)
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 10 / 31
![Page 11: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/11.jpg)
Foreman Architektur
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 11 / 31
![Page 12: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/12.jpg)
Foreman – Komponenten
erweiterbar durch PluginsForeman Discovery: Metal as a ServiceHooks: Beliebigen Code in verschiedenen Phasen ausführen
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 12 / 31
![Page 13: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/13.jpg)
Foreman Discovery
besteht aus zwei TeilenPlugin für Foreman Web-ApplikationLivesystem basierend auf oVirt-Node
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 13 / 31
![Page 14: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/14.jpg)
Demo: Metal as a Service
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 14 / 31
![Page 15: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/15.jpg)
Puppet Kurzvorstellung
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 15 / 31
![Page 16: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/16.jpg)
Puppet 1/2
KonfigurationsverwaltungssystemEntwicklung seit 2005 durch Puppet Labseine der drei „Großen“ neben cfengine/Chefunterstützt verschiedene Unixe/Linux, WindowsCommunity und Enterprise Variante
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 16 / 31
![Page 17: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/17.jpg)
Puppet 2/2
implementiert eine Modellsprache auf Rubywir beschreiben was getan werden soll, nicht wieist idempotentabstrahiert Unterschiede zwischenDistributionen/Betriebssystemendynamische Konfiguration basierend auf Hardware/Softwareinfo(facter)erweiterbar durch eigenen Code
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 17 / 31
![Page 18: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/18.jpg)
Einfaches Manifest
Einfaches Manifestfile{’/etc/myservice.conf’:
ensure => present,content => ’Hallo Welt\n’,owner => ’root’,group => ’root’,mode => ’644’,
}package{’firefox’:
ensure => present,}
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 18 / 31
![Page 19: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/19.jpg)
Abstraktion des Codes
Ressource: Datei, Paket, Dienst, Benutzer, Gruppe, usw.Manifest: Datei mit Endung .pp
enthält ein oder mehrere RessourcenAnwendung: puppet apply myconfig.pp
Klassen bündeln Ressourcen, z.B.: Paket, Datei und DienstModule bündeln KlassenWichtig: Reihenfolge muss explizit definiert werden
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 19 / 31
![Page 20: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/20.jpg)
Einfache KlasseEinfache Klasse
class sshserver() {package{’openssh’:
ensure => present,}file{’/etc/ssh/sshd_config’:
ensure => present,source => puppet:///sshd_config,[...]notify => Service[’sshd’],require => Package[’openssh’],
}service{’sshd’,
ensure => running,enable => true,
}}
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 20 / 31
![Page 21: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/21.jpg)
Spacewalk Kurzvorstellung
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 21 / 31
![Page 22: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/22.jpg)
Spacewalk Kurzvorstellung
System Lifecycle Management Software (Déjà-vu?)Grundlage für RH Satellite bis 5.x/SUSE ManagerEntwicklung durch Red Hat seit 2002 (Einführung RHN)seit 2008 offenes Software Projekt (GPL2)
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 22 / 31
![Page 23: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/23.jpg)
Spacewalk Features 1/3
Provisionierung von Systemen (Anbindung an Cobbler)Softwaremanagement mit ChannelstrukturSubskriptionsverwaltung (Satellite/SUSE Manager)Staging (Einfrieren bestimmter Versionsstände)einfache KonfigurationsverwaltungAusführung von Skripten auf verwalteten Maschinen
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 23 / 31
![Page 24: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/24.jpg)
Spacewalk Features 2/3
Monitoring„Verwaltung“ von Crashes (abrt)OpenSCAP Einbindung (Software-Auditing)Bedienung durch Web-UI/CLI/XMLRPC-API
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 24 / 31
![Page 25: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/25.jpg)
Spacewalk Features 3/3
unterstützt RHEL/SUSE (und Derivate), teilweiseDebian/UbuntuAlternative (Softwareverwaltung): Katello/Pulp/Candlepin (nurRHEL/Fedora)Foreman/Katello/Pulp/Candlepin == Satellite 6
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 25 / 31
![Page 26: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/26.jpg)
Demo: Spacewalk/Foreman/Icinga
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 26 / 31
![Page 27: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/27.jpg)
Einstieg in PuppetDB
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 27 / 31
![Page 28: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/28.jpg)
PuppetDB
Data Warehouse für PuppetAblösung für altes storeconfigs Konzeptimplementiert in Clojure (Lisp in Java)bietet Restful-API für AbfragenAnwendungsfall: Exportierte RessourcenJunge Web-UI: PuppetBoard
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 28 / 31
![Page 29: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/29.jpg)
Beispielabfragen
BeispielabfragenAlle Nodes mit Debian["and",
["=", "name", "operatingsystem"],["=", "value", "Debian"]]
Uptime zwischen ca. 28h und ca. 12d["and",
["=", "name", "uptime_seconds"],[">=", "value", 100000],["<", "value", 1000000]]
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 29 / 31
![Page 30: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/30.jpg)
Demo: Puppetmanifeste und ExportedResources
B1 Systems GmbHSystemmanagement mit Puppet und
Foreman 30 / 31
![Page 31: Systemmanagement mit Puppet und Foreman](https://reader034.vdocuments.us/reader034/viewer/2022052622/55936fa01a28abf55b8b4626/html5/thumbnails/31.jpg)
Vielen Dank für Ihre Aufmerksamkeit!Bei weiteren Fragen wenden Sie sich bitte an [email protected]
oder +49 (0)8457 - 931096
Zu diesem Vortrag gehörige Beispieldateien gibt es unter:https://github.com/mattiasgiese/foreman-clt
B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development