Systemmanagement mit Puppet und Foreman

606 Aufrufe

Veröffentlicht am

Systemmanagement mit Puppet und Foreman

Veröffentlicht in: Software
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
606
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
8
Aktionen
Geteilt
0
Downloads
11
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Systemmanagement mit Puppet und Foreman

  1. 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. 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. 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. 4. Überblick über verwendete Komponenten B1 Systems GmbH Systemmanagement mit Puppet und Foreman 4 / 53
  5. 5. Verwendete Komponenten B1 Systems GmbH Systemmanagement mit Puppet und Foreman 5 / 53
  6. 6. Foreman Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 6 / 53
  7. 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. 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. 9. Foreman Architektur B1 Systems GmbH Systemmanagement mit Puppet und Foreman 9 / 53
  10. 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. 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. 12. Foreman GUI: Dashboard B1 Systems GmbH Systemmanagement mit Puppet und Foreman 12 / 53
  13. 13. Foreman GUI: Hosts Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 13 / 53
  14. 14. Foreman GUI: Hosts Detail B1 Systems GmbH Systemmanagement mit Puppet und Foreman 14 / 53
  15. 15. Foreman GUI: Puppet Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 15 / 53
  16. 16. Foreman GUI: Puppet Reports Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 16 / 53
  17. 17. Foreman GUI: Puppet Report Detail B1 Systems GmbH Systemmanagement mit Puppet und Foreman 17 / 53
  18. 18. Foreman GUI: Puppet Classes Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 18 / 53
  19. 19. Icinga Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 19 / 53
  20. 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. 21. Icinga CGI GUI: Services B1 Systems GmbH Systemmanagement mit Puppet und Foreman 21 / 53
  22. 22. Icinga CGI GUI: Hosts Down B1 Systems GmbH Systemmanagement mit Puppet und Foreman 22 / 53
  23. 23. Logstash Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 23 / 53
  24. 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. 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. 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. 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. 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. 29. Kibana3: Log Search and Filters B1 Systems GmbH Systemmanagement mit Puppet und Foreman 29 / 53
  30. 30. Kibana3: IRC Log Example B1 Systems GmbH Systemmanagement mit Puppet und Foreman 30 / 53
  31. 31. Kibana3: Twitter Example mit Geo-IP B1 Systems GmbH Systemmanagement mit Puppet und Foreman 31 / 53
  32. 32. Puppet Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 32 / 53
  33. 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. 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. 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. 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. 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. 38. Einstieg in PuppetDB B1 Systems GmbH Systemmanagement mit Puppet und Foreman 38 / 53
  39. 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. 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. 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. 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. 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. 44. PuppetDB Dashboard 1/2 B1 Systems GmbH Systemmanagement mit Puppet und Foreman 44 / 53
  45. 45. PuppetDB Dashboard 2/2 B1 Systems GmbH Systemmanagement mit Puppet und Foreman 45 / 53
  46. 46. Spacewalk Kurzvorstellung B1 Systems GmbH Systemmanagement mit Puppet und Foreman 46 / 53
  47. 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. 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. 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. 50. Spacewalk: GUI Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 50 / 53
  51. 51. Spacewalk: System Details B1 Systems GmbH Systemmanagement mit Puppet und Foreman 51 / 53
  52. 52. Spacewalk: Channel Overview B1 Systems GmbH Systemmanagement mit Puppet und Foreman 52 / 53
  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

×