SlideShare ist ein Scribd-Unternehmen logo
Systemmanagement mit Puppet und
Foreman
CeBIT 2015 19. März 2015
Mattias Giese
System Management & Monitoring Architect
B1 Systems GmbH
giese@b1-systems.de
B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development
Vorstellung B1 Systems
gegründet 2004
primär Linux/Open Source-Themen
national & international tätig
über 60 Mitarbeiter
unabhängig von Soft- und Hardware-Herstellern
Leistungsangebot:
Beratung & Consulting
Support
Entwicklung
Training
Betrieb
Lösungen
dezentrale Strukturen
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 2 / 53
Schwerpunkte
Virtualisierung (XEN, KVM & RHEV)
Systemmanagement (Spacewalk, Red Hat Satellite, SUSE
Manager)
Konfigurationsmanagement (Puppet & Chef)
Monitoring (Nagios & Icinga)
IaaS Cloud (OpenStack & SUSE Cloud & RDO)
Hochverfügbarkeit (Pacemaker)
Shared Storage (GPFS, OCFS2, DRBD & CEPH)
Dateiaustausch (ownCloud)
Paketierung (Open Build Service)
Administratoren oder Entwickler zur Unterstützung des Teams
vor Ort
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 3 / 53
Überblick über verwendete Komponenten
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 4 / 53
Verwendete Komponenten
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 5 / 53
Foreman Kurzvorstellung
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 6 / 53
Foreman 1/2
System Lifecycle Management Software
Benutzung via Web-UI/CLI/Restful API
modular aufgebaut
kann DHCP/DNS/TFTP/Puppet/Puppet CA verwalten
teilweise Support von Chef (Reports)
Zukunft: Support von cfengine
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 7 / 53
Foreman 2/2
Provisionierung von virtuellen Maschinen (libvirt, VMWare)
Cloud: AWS, OpenStack, GCE, oVirt, RHEV
Steuerung von iLO/DRAC/andere
installierbar auf RHEL/Fedora/Debian/Ubuntu
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 8 / 53
Foreman Architektur
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 9 / 53
Foreman – Komponenten
erweiterbar durch Plugins
Foreman Discovery: Metal as a Service
Hooks: Beliebigen Code in verschiedenen Phasen ausführen
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 10 / 53
Foreman Discovery
besteht aus zwei Teilen
Plugin für Foreman Web-Applikation
Livesystem basierend auf oVirt-Node
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 11 / 53
Foreman GUI: Dashboard
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 12 / 53
Foreman GUI: Hosts Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 13 / 53
Foreman GUI: Hosts Detail
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 14 / 53
Foreman GUI: Puppet Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 15 / 53
Foreman GUI: Puppet Reports Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 16 / 53
Foreman GUI: Puppet Report Detail
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 17 / 53
Foreman GUI: Puppet Classes Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 18 / 53
Icinga Kurzvorstellung
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 19 / 53
Icinga
Fork des Monitoringsystems Nagios (2009)
Kompatibel mit Nagios-Konfiguration und Plugins
verbessertes CGI Interface sowie neue Oberfläche Icinga-Web
zusätzliche Bugfixes und Features, die nicht in Nagios
aufgenommen wurden
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 20 / 53
Icinga CGI GUI: Services
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 21 / 53
Icinga CGI GUI: Hosts Down
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 22 / 53
Logstash Kurzvorstellung
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 23 / 53
Logstash 1/2
komplette Log-Infrastruktur
unterstützt eine Vielzahl von Protokollformaten durch Filter
einfach zu implementieren
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 24 / 53
Logstash 2/2
benutzt Elasticsearch für Datenhaltung
skaliert horizontal (Indexer, Elasticsearch, Redis)
Kibana3 ist eine sehr flexible GUI zur Visualisierung der Logs
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 25 / 53
Logstash Inputs
file: Normale Datei
syslog: lauscht auf Port 514 und kann somit Ziel von
rsyslog/syslog-ng usw. sein
lumberjack: Input für eigenen Transportmechanismus
(logstash-forwarder)
. . .
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 26 / 53
Logstash Filters
grok: Regexes auf Steroiden. Vorgefertigte Pattern erleichtern
die Benutzung von Regex
mutate: Log nachträglich anpassen
geoip: z. B. das Land zu einer IP-Adresse im Log herausfinden.
. . .
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 27 / 53
Logstash Outputs
elasticsearch: Empfohlen für Produktiveinsatz (und für Kibana)
file: In Datei schreiben
graphite: Output nach Graphite für Graphing
. . .
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 28 / 53
Kibana3: Log Search and Filters
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 29 / 53
Kibana3: IRC Log Example
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 30 / 53
Kibana3: Twitter Example mit Geo-IP
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 31 / 53
Puppet Kurzvorstellung
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 32 / 53
Puppet 1/2
Konfigurationsverwaltungssystem
Entwicklung seit 2005 durch Puppet Labs
eine der drei „Großen“ neben cfengine/Chef
unterstützt verschiedene Unixe/Linux, Windows
Community und Enterprise Variante
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 33 / 53
Puppet 2/2
implementiert eine Modellsprache auf Ruby
wir beschreiben, was getan werden soll, nicht wie
führt nur benötigte Änderungen am System durch
abstrahiert Unterschiede zwischen
Distributionen/Betriebssystemen
dynamische Konfiguration basierend auf Hardware/Softwareinfo
(facter)
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 34 / 53
Einfaches Manifest
Einfaches Manifest
file{’/etc/myservice.conf’:
ensure => present,
content => ’Hallo Weltn’,
owner => ’root’,
group => ’root’,
mode => ’644’,
}
package{’firefox’:
ensure => present,
}
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 35 / 53
Abstraktion des Codes
Ressource: Datei, Paket, Dienst, Benutzer, Gruppe, usw.
Manifest: Datei mit Endung .pp
enthält ein oder mehrere Ressourcen
Anwendung: puppet apply myconfig.pp
Klassen bündeln Ressourcen, z.B.: Paket, Datei und Dienst
Module bündeln Klassen
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 36 / 53
Einfache Klasse
Einfache 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 GmbH
Systemmanagement mit Puppet und
Foreman 37 / 53
Einstieg in PuppetDB
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 38 / 53
PuppetDB
Data Warehouse für Puppet
Ablösung für altes storeconfigs Konzept
Deduplizierung der gesammelten Daten
bietet Restful-API für Abfragen
Anwendungsfall: Exportierte Ressourcen
Web-UI: PuppetBoard
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 39 / 53
PuppetDB
Exportierte Ressourcen am Beispiel von Monitoring
Ressourcen werden auf den zu überwachenden Systemen
eingesammelt (exportiert)
exportierte Ressourcen werden in PuppetDB gespeichert
exportierte Ressourcen werden dann auf dem Monitoringsystem
(Icinga) angewendet
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 40 / 53
PuppetDB
Exportierte Nagios Host Ressource
@@nagios_host{"nagios_${::hostname}":
ensure => present,
address => "$::ipaddress",
host_name => "$::fqdn",
check_command => ’check_ping!100.0,20%!500.0,60%’,
display_name => "$::fqdn",
max_check_attempts => ’3’,
use => ’generic-host’,
target => 
"/etc/icinga/conf.d/service_ssh_${::hostname}.cfg",
}
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 41 / 53
PuppetDB
Anwenden der exportierten Ressourcen
# Collect all exported monitoring resources
if $::monitoring_server == $::fqdn {
Nagios_Host<<| |>> {
}
Nagios_Service<<| |>> {
}
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 42 / 53
Beispielabfragen
Beispielabfragen
Alle 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 GmbH
Systemmanagement mit Puppet und
Foreman 43 / 53
PuppetDB Dashboard 1/2
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 44 / 53
PuppetDB Dashboard 2/2
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 45 / 53
Spacewalk Kurzvorstellung
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 46 / 53
Spacewalk Kurzvorstellung
System Lifecycle Management Software (2002)
Grundlage für RH Satellite bis 5.x und SUSE Manager
seit 2008 offenes Software Projekt (GPL2)
unterstützt RHEL/SUSE (und Derivate), teilweise
Debian/Ubuntu (nur Softwareverwaltung)
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 47 / 53
Spacewalk Features 1/2
Provisionierung von Systemen (Anbindung an Cobbler)
Steuerung von Hypervisoren (KVM/Xen)
Softwaremanagement mit Channelstruktur
Staging (Einfrieren bestimmter Versionsstände)
einfache Konfigurationsverwaltung
Ausführung von Skripten auf verwalteten Maschinen
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 48 / 53
Spacewalk Features 2/2
zeitgesteuerte Ausführung von Aufgaben
Monitoring
„Verwaltung“ von Crashes (abrt)
OpenSCAP Einbindung (Software-Auditing)
Bedienung durch Web-UI/CLI/XMLRPC-API
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 49 / 53
Spacewalk: GUI Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 50 / 53
Spacewalk: System Details
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 51 / 53
Spacewalk: Channel Overview
B1 Systems GmbH
Systemmanagement mit Puppet und
Foreman 52 / 53
Vielen Dank für Ihre Aufmerksamkeit!
Bei weiteren Fragen wenden Sie sich bitte an info@b1-systems.de
oder +49 (0)8457 - 931096.
Besuchen Sie uns auch hier auf der CeBIT,
Halle 6, H16/312.
B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development

Weitere ähnliche Inhalte

PDF
System- & Konfigurationsmanagement mit Foreman & Puppet
PDF
Lifecycle Management mit Puppet und Foreman
PDF
Systemmanagement mit Puppet und Foreman
PDF
Entwicklungsumgebungen mit Vagrant
PDF
TYPO3 CMS 6.2 LTS - Die Neuerungen
PDF
Storage Cluster mit CEPH
PDF
Ubuntu-/Debian-Packaging
PDF
Ubuntu-Server als Backup- und Fileserver betreiben
System- & Konfigurationsmanagement mit Foreman & Puppet
Lifecycle Management mit Puppet und Foreman
Systemmanagement mit Puppet und Foreman
Entwicklungsumgebungen mit Vagrant
TYPO3 CMS 6.2 LTS - Die Neuerungen
Storage Cluster mit CEPH
Ubuntu-/Debian-Packaging
Ubuntu-Server als Backup- und Fileserver betreiben

Was ist angesagt? (20)

PDF
TYPO3 CMS 7.1 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 7.6 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 8.0 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 7.3 - Die Neuerungen - pluswerk
PDF
Upgrade auf TYPO3 6.2
PDF
TYPO3 CMS 8.1 - Die Neuerungen - pluswerk
ODP
TYPO3: Extension news
PDF
TYPO3 CMS 7.0 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 7.4 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 7.5 - Die Neuerungen - pluswerk
PDF
TYPO3 CMS 6.1 - Die Neuerungen - typovision GmbH
PDF
TYPO3 CMS 6.0 - Die Neuerungen (typovision GmbH)
PDF
TYPO3 CMS 8.4 - Die Neuerungen - pluswerk
PDF
Typo3 4.3 Die Neuerungen im Überblick
PDF
TYPO3 CMS 7.2 - Die Neuerungen - pluswerk
PDF
Neos CMS - das Kompendium (Version 2.0.0)
PDF
Ambilight, Raspberry Pi, Ubuntu & Hyperion
PDF
systemd im Alltag
PDF
OpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SE
PDF
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
TYPO3 CMS 7.1 - Die Neuerungen - pluswerk
TYPO3 CMS 7.6 - Die Neuerungen - pluswerk
TYPO3 CMS 8.0 - Die Neuerungen - pluswerk
TYPO3 CMS 7.3 - Die Neuerungen - pluswerk
Upgrade auf TYPO3 6.2
TYPO3 CMS 8.1 - Die Neuerungen - pluswerk
TYPO3: Extension news
TYPO3 CMS 7.0 - Die Neuerungen - pluswerk
TYPO3 CMS 7.4 - Die Neuerungen - pluswerk
TYPO3 CMS 7.5 - Die Neuerungen - pluswerk
TYPO3 CMS 6.1 - Die Neuerungen - typovision GmbH
TYPO3 CMS 6.0 - Die Neuerungen (typovision GmbH)
TYPO3 CMS 8.4 - Die Neuerungen - pluswerk
Typo3 4.3 Die Neuerungen im Überblick
TYPO3 CMS 7.2 - Die Neuerungen - pluswerk
Neos CMS - das Kompendium (Version 2.0.0)
Ambilight, Raspberry Pi, Ubuntu & Hyperion
systemd im Alltag
OpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SE
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
Anzeige

Andere mochten auch (10)

PDF
Zdö b1 homepage m
PDF
B-1 - SharePoint für Einsteiger
PDF
PuppetConf. 2016: Puppet Best Practices: Roles & Profiles – Gary Larizza, Puppet
PDF
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
PDF
Puppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and Kibana
PDF
Managing Windows Systems with Puppet - PuppetConf 2013
PDF
Designing Puppet: Roles/Profiles Pattern
PDF
So geht 39_s_noch_besser_zum_goethe-_214_sd-zertifikat
PPT
Prüfungsvorbereitung ZDF B1
PDF
Build Features, Not Apps
Zdö b1 homepage m
B-1 - SharePoint für Einsteiger
PuppetConf. 2016: Puppet Best Practices: Roles & Profiles – Gary Larizza, Puppet
PuppetConf 2016: Puppet and vRealize Automation: The Next Generation – Ganesh...
Puppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and Kibana
Managing Windows Systems with Puppet - PuppetConf 2013
Designing Puppet: Roles/Profiles Pattern
So geht 39_s_noch_besser_zum_goethe-_214_sd-zertifikat
Prüfungsvorbereitung ZDF B1
Build Features, Not Apps
Anzeige

Ähnlich wie Systemmanagement mit Puppet und Foreman (7)

PDF
Systemmanagement mit Puppet und Foreman
PDF
Opensource Tools für das Data Center Management
PDF
OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...
PDF
Foreman: Klassen und Parametrisierung in Puppet (Webinar vom 20. Mai 2016)
PDF
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
PDF
Serverprovisioning in einer dynamischen Infrastruktur
PPTX
Icinga mit Puppet - Hamburg 2013
Systemmanagement mit Puppet und Foreman
Opensource Tools für das Data Center Management
OSMC 2010 | Verwendung von Puppet in verteilten Monitoring Umgebungen by Birg...
Foreman: Klassen und Parametrisierung in Puppet (Webinar vom 20. Mai 2016)
OSMC 2012 | Automatische Konfiguration von Nagios/Icinga mit Agordamon by Chr...
Serverprovisioning in einer dynamischen Infrastruktur
Icinga mit Puppet - Hamburg 2013

Mehr von B1 Systems GmbH (20)

PDF
Android mit Google Befreiung, PlayStore Apps im eigenen Repo
PDF
B1 Thin Client Management bei der Fraport AG
PDF
Salt - A Scalable Systems Management Solution for Datacenters
PDF
Ausrollen von Multi-Tier-Applikationen mit Docker
PDF
Simplify and run your development environments with Vagrant on OpenStack
PDF
Simplify and run your development environments with Vagrant on OpenStack
PDF
Bits and Bytes im Flow - Netzwerk im Wandel der Zeit
PDF
End of the Road - Facing Current Scaling Limits within OpenStack
PDF
E-Mail-Verschlüsselung mit GnuPG
PDF
Some Bashing II - Mit der Kommandozeile Abläufe automatisieren
PDF
Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...
PDF
Btrfs - das Dateisystem der Zukunft?
PDF
Softwarepaketierung und Continuous Integration bei Airbus Defence and Space
PDF
Ceph - Software Defined Storage für die Cloud
PDF
Migrating deployment processes and Continuous Integration at SAP SE
PDF
Salt - A Scalable Systems Management Solution for Datacenters
PDF
Openstack im unternehmerischen Einsatz
PDF
Klein, aber oho - Continuous Delivery von Micro Applications mit Jenkins, Doc...
PDF
DevOps environment with OpenStack and NetApp
PDF
Images for the Clouds with KIWI & OBS
Android mit Google Befreiung, PlayStore Apps im eigenen Repo
B1 Thin Client Management bei der Fraport AG
Salt - A Scalable Systems Management Solution for Datacenters
Ausrollen von Multi-Tier-Applikationen mit Docker
Simplify and run your development environments with Vagrant on OpenStack
Simplify and run your development environments with Vagrant on OpenStack
Bits and Bytes im Flow - Netzwerk im Wandel der Zeit
End of the Road - Facing Current Scaling Limits within OpenStack
E-Mail-Verschlüsselung mit GnuPG
Some Bashing II - Mit der Kommandozeile Abläufe automatisieren
Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...
Btrfs - das Dateisystem der Zukunft?
Softwarepaketierung und Continuous Integration bei Airbus Defence and Space
Ceph - Software Defined Storage für die Cloud
Migrating deployment processes and Continuous Integration at SAP SE
Salt - A Scalable Systems Management Solution for Datacenters
Openstack im unternehmerischen Einsatz
Klein, aber oho - Continuous Delivery von Micro Applications mit Jenkins, Doc...
DevOps environment with OpenStack and NetApp
Images for the Clouds with KIWI & OBS

Systemmanagement mit Puppet und Foreman

  • 1. Systemmanagement mit Puppet und Foreman CeBIT 2015 19. März 2015 Mattias Giese System Management & Monitoring Architect B1 Systems GmbH giese@b1-systems.de B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development
  • 2. Vorstellung B1 Systems gegründet 2004 primär Linux/Open Source-Themen national & international tätig über 60 Mitarbeiter unabhängig von Soft- und Hardware-Herstellern Leistungsangebot: Beratung & Consulting Support Entwicklung Training Betrieb Lösungen dezentrale Strukturen B1 Systems GmbH Systemmanagement mit Puppet und Foreman 2 / 53
  • 3. Schwerpunkte Virtualisierung (XEN, KVM & RHEV) Systemmanagement (Spacewalk, Red Hat Satellite, SUSE Manager) Konfigurationsmanagement (Puppet & Chef) Monitoring (Nagios & Icinga) IaaS Cloud (OpenStack & SUSE Cloud & RDO) Hochverfügbarkeit (Pacemaker) Shared Storage (GPFS, OCFS2, DRBD & CEPH) Dateiaustausch (ownCloud) Paketierung (Open Build Service) Administratoren oder Entwickler zur Unterstützung des Teams vor Ort B1 Systems GmbH Systemmanagement mit Puppet und Foreman 3 / 53
  • 4. Überblick über verwendete Komponenten B1 Systems GmbH Systemmanagement mit Puppet und Foreman 4 / 53
  • 5. Verwendete Komponenten B1 Systems GmbH Systemmanagement mit Puppet und Foreman 5 / 53
  • 6. Foreman Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 6 / 53
  • 7. Foreman 1/2 System Lifecycle Management Software Benutzung via Web-UI/CLI/Restful API modular aufgebaut kann DHCP/DNS/TFTP/Puppet/Puppet CA verwalten teilweise Support von Chef (Reports) Zukunft: Support von cfengine B1 Systems GmbH Systemmanagement mit Puppet und Foreman 7 / 53
  • 8. Foreman 2/2 Provisionierung von virtuellen Maschinen (libvirt, VMWare) Cloud: AWS, OpenStack, GCE, oVirt, RHEV Steuerung von iLO/DRAC/andere installierbar auf RHEL/Fedora/Debian/Ubuntu B1 Systems GmbH Systemmanagement mit Puppet und Foreman 8 / 53
  • 9. Foreman Architektur B1 Systems GmbH Systemmanagement mit Puppet und Foreman 9 / 53
  • 10. Foreman – Komponenten erweiterbar durch Plugins Foreman Discovery: Metal as a Service Hooks: Beliebigen Code in verschiedenen Phasen ausführen B1 Systems GmbH Systemmanagement mit Puppet und Foreman 10 / 53
  • 11. Foreman Discovery besteht aus zwei Teilen Plugin für Foreman Web-Applikation Livesystem basierend auf oVirt-Node B1 Systems GmbH Systemmanagement mit Puppet und Foreman 11 / 53
  • 12. Foreman GUI: Dashboard B1 Systems GmbH Systemmanagement mit Puppet und Foreman 12 / 53
  • 13. Foreman GUI: Hosts Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 13 / 53
  • 14. Foreman GUI: Hosts Detail B1 Systems GmbH Systemmanagement mit Puppet und Foreman 14 / 53
  • 15. Foreman GUI: Puppet Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 15 / 53
  • 16. Foreman GUI: Puppet Reports Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 16 / 53
  • 17. Foreman GUI: Puppet Report Detail B1 Systems GmbH Systemmanagement mit Puppet und Foreman 17 / 53
  • 18. Foreman GUI: Puppet Classes Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 18 / 53
  • 19. Icinga Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 19 / 53
  • 20. Icinga Fork des Monitoringsystems Nagios (2009) Kompatibel mit Nagios-Konfiguration und Plugins verbessertes CGI Interface sowie neue Oberfläche Icinga-Web zusätzliche Bugfixes und Features, die nicht in Nagios aufgenommen wurden B1 Systems GmbH Systemmanagement mit Puppet und Foreman 20 / 53
  • 21. Icinga CGI GUI: Services B1 Systems GmbH Systemmanagement mit Puppet und Foreman 21 / 53
  • 22. Icinga CGI GUI: Hosts Down B1 Systems GmbH Systemmanagement mit Puppet und Foreman 22 / 53
  • 23. Logstash Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 23 / 53
  • 24. Logstash 1/2 komplette Log-Infrastruktur unterstützt eine Vielzahl von Protokollformaten durch Filter einfach zu implementieren B1 Systems GmbH Systemmanagement mit Puppet und Foreman 24 / 53
  • 25. Logstash 2/2 benutzt Elasticsearch für Datenhaltung skaliert horizontal (Indexer, Elasticsearch, Redis) Kibana3 ist eine sehr flexible GUI zur Visualisierung der Logs B1 Systems GmbH Systemmanagement mit Puppet und Foreman 25 / 53
  • 26. Logstash Inputs file: Normale Datei syslog: lauscht auf Port 514 und kann somit Ziel von rsyslog/syslog-ng usw. sein lumberjack: Input für eigenen Transportmechanismus (logstash-forwarder) . . . B1 Systems GmbH Systemmanagement mit Puppet und Foreman 26 / 53
  • 27. Logstash Filters grok: Regexes auf Steroiden. Vorgefertigte Pattern erleichtern die Benutzung von Regex mutate: Log nachträglich anpassen geoip: z. B. das Land zu einer IP-Adresse im Log herausfinden. . . . B1 Systems GmbH Systemmanagement mit Puppet und Foreman 27 / 53
  • 28. Logstash Outputs elasticsearch: Empfohlen für Produktiveinsatz (und für Kibana) file: In Datei schreiben graphite: Output nach Graphite für Graphing . . . B1 Systems GmbH Systemmanagement mit Puppet und Foreman 28 / 53
  • 29. Kibana3: Log Search and Filters B1 Systems GmbH Systemmanagement mit Puppet und Foreman 29 / 53
  • 30. Kibana3: IRC Log Example B1 Systems GmbH Systemmanagement mit Puppet und Foreman 30 / 53
  • 31. Kibana3: Twitter Example mit Geo-IP B1 Systems GmbH Systemmanagement mit Puppet und Foreman 31 / 53
  • 32. Puppet Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 32 / 53
  • 33. Puppet 1/2 Konfigurationsverwaltungssystem Entwicklung seit 2005 durch Puppet Labs eine der drei „Großen“ neben cfengine/Chef unterstützt verschiedene Unixe/Linux, Windows Community und Enterprise Variante B1 Systems GmbH Systemmanagement mit Puppet und Foreman 33 / 53
  • 34. Puppet 2/2 implementiert eine Modellsprache auf Ruby wir beschreiben, was getan werden soll, nicht wie führt nur benötigte Änderungen am System durch abstrahiert Unterschiede zwischen Distributionen/Betriebssystemen dynamische Konfiguration basierend auf Hardware/Softwareinfo (facter) B1 Systems GmbH Systemmanagement mit Puppet und Foreman 34 / 53
  • 35. Einfaches Manifest Einfaches Manifest file{’/etc/myservice.conf’: ensure => present, content => ’Hallo Weltn’, owner => ’root’, group => ’root’, mode => ’644’, } package{’firefox’: ensure => present, } B1 Systems GmbH Systemmanagement mit Puppet und Foreman 35 / 53
  • 36. Abstraktion des Codes Ressource: Datei, Paket, Dienst, Benutzer, Gruppe, usw. Manifest: Datei mit Endung .pp enthält ein oder mehrere Ressourcen Anwendung: puppet apply myconfig.pp Klassen bündeln Ressourcen, z.B.: Paket, Datei und Dienst Module bündeln Klassen B1 Systems GmbH Systemmanagement mit Puppet und Foreman 36 / 53
  • 37. Einfache Klasse Einfache 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 GmbH Systemmanagement mit Puppet und Foreman 37 / 53
  • 38. Einstieg in PuppetDB B1 Systems GmbH Systemmanagement mit Puppet und Foreman 38 / 53
  • 39. PuppetDB Data Warehouse für Puppet Ablösung für altes storeconfigs Konzept Deduplizierung der gesammelten Daten bietet Restful-API für Abfragen Anwendungsfall: Exportierte Ressourcen Web-UI: PuppetBoard B1 Systems GmbH Systemmanagement mit Puppet und Foreman 39 / 53
  • 40. PuppetDB Exportierte Ressourcen am Beispiel von Monitoring Ressourcen werden auf den zu überwachenden Systemen eingesammelt (exportiert) exportierte Ressourcen werden in PuppetDB gespeichert exportierte Ressourcen werden dann auf dem Monitoringsystem (Icinga) angewendet B1 Systems GmbH Systemmanagement mit Puppet und Foreman 40 / 53
  • 41. PuppetDB Exportierte Nagios Host Ressource @@nagios_host{"nagios_${::hostname}": ensure => present, address => "$::ipaddress", host_name => "$::fqdn", check_command => ’check_ping!100.0,20%!500.0,60%’, display_name => "$::fqdn", max_check_attempts => ’3’, use => ’generic-host’, target => "/etc/icinga/conf.d/service_ssh_${::hostname}.cfg", } B1 Systems GmbH Systemmanagement mit Puppet und Foreman 41 / 53
  • 42. PuppetDB Anwenden der exportierten Ressourcen # Collect all exported monitoring resources if $::monitoring_server == $::fqdn { Nagios_Host<<| |>> { } Nagios_Service<<| |>> { } B1 Systems GmbH Systemmanagement mit Puppet und Foreman 42 / 53
  • 43. Beispielabfragen Beispielabfragen Alle 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 GmbH Systemmanagement mit Puppet und Foreman 43 / 53
  • 44. PuppetDB Dashboard 1/2 B1 Systems GmbH Systemmanagement mit Puppet und Foreman 44 / 53
  • 45. PuppetDB Dashboard 2/2 B1 Systems GmbH Systemmanagement mit Puppet und Foreman 45 / 53
  • 46. Spacewalk Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 46 / 53
  • 47. Spacewalk Kurzvorstellung System Lifecycle Management Software (2002) Grundlage für RH Satellite bis 5.x und SUSE Manager seit 2008 offenes Software Projekt (GPL2) unterstützt RHEL/SUSE (und Derivate), teilweise Debian/Ubuntu (nur Softwareverwaltung) B1 Systems GmbH Systemmanagement mit Puppet und Foreman 47 / 53
  • 48. Spacewalk Features 1/2 Provisionierung von Systemen (Anbindung an Cobbler) Steuerung von Hypervisoren (KVM/Xen) Softwaremanagement mit Channelstruktur Staging (Einfrieren bestimmter Versionsstände) einfache Konfigurationsverwaltung Ausführung von Skripten auf verwalteten Maschinen B1 Systems GmbH Systemmanagement mit Puppet und Foreman 48 / 53
  • 49. Spacewalk Features 2/2 zeitgesteuerte Ausführung von Aufgaben Monitoring „Verwaltung“ von Crashes (abrt) OpenSCAP Einbindung (Software-Auditing) Bedienung durch Web-UI/CLI/XMLRPC-API B1 Systems GmbH Systemmanagement mit Puppet und Foreman 49 / 53
  • 50. Spacewalk: GUI Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 50 / 53
  • 51. Spacewalk: System Details B1 Systems GmbH Systemmanagement mit Puppet und Foreman 51 / 53
  • 52. Spacewalk: Channel Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 52 / 53
  • 53. Vielen Dank für Ihre Aufmerksamkeit! Bei weiteren Fragen wenden Sie sich bitte an info@b1-systems.de oder +49 (0)8457 - 931096. Besuchen Sie uns auch hier auf der CeBIT, Halle 6, H16/312. B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development