Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Phönix Server: Mit Foreman Server aus der Asche...

Avatar for Felix Massem Felix Massem
November 13, 2014

Phönix Server: Mit Foreman Server aus der Asche heben

Foreman is a bare metal as a service (MAAS) Tool

Avatar for Felix Massem

Felix Massem

November 13, 2014

More Decks by Felix Massem

Other Decks in Technology

Transcript

  1. codecentric AG 13.11.14 Phönix Server: Mit Foreman Server aus der

    Asche heben Felix Massem und Jan-Frederic Markert
  2. codecentric AG 13.11.14 Was bedeutet das denn jetzt? Systemadmins bekommen

    die Möglichkeit zur: • Automatisierung sich wiederholender Tätigkeiten • Schnellen Installation und Konfigurieration von Hosts • Verwaltung lokaler und/oder in der Cloud gehosteter Server
  3. codecentric AG 13.11.14 Einsatzideen für „The Foreman“ • Entwicklungsumgebung •

    Continuous Delivery • Private Cloud • Disaster Recovery Management – Hot – Warm – Cloud-Standby-System – Cold
  4. codecentric AG 13.11.14 Wieso also „The Foreman“? • Technologie-unabhängiger •

    Aktive Community • Gutes Monitoring / Reporting Cloud: • Amazon EC2 • Google Compute Engine • Libvirt • OpenStack • oVirt and RHEV • Rackspace • VMware Lokal: • RHEL, CentOS • Fedora • Debian, Ubuntu • Solaris 8, 10 • OpenSUSE Viele Einsatzgebiete
  5. codecentric AG 13.11.14 • RESTful API auf Basis der Dienste

    – DHCP – DNS – TFTP – Puppet und Puppet CA • Smart Proxies werden auf bzw. nahe der Maschinen, welche die Dienste, anbieten platziert. • Werden bei Inbetriebnahme eines neuen Hosts benötigt. Smart Proxies
  6. codecentric AG 13.11.14 Vorbereitende Schritte zur Inbetriebnahme eines neuen Systems

    Konfiguration innerhalb von Foreman 1. Provisioning Setup – Infrastructure • Smart-Proxys mit verschiedenen Aufgaben (TFTP, DNS, DHCP, Puppet & Puppet CA) • Domain mit Verweis auf den Smart-Proxy für DNS • Subnet mit Verweis auf den Smart-Proxy für DHCP, TFTP, DNS 2. Provisioning Setup – Puppet • Environment für Puppet Klassen
  7. codecentric AG 13.11.14 Vorbereitende Schritte zur Inbetriebnahme eines neuen Systems

    3. Provisioning Setup – Host • OS-Images sowie einen dazugehörigen Mirror • Provisioning Templates für eine unbeaufsichtigte Installation (preseed, kickstart …) • Templates für Partitions-Tabellen • Verknüpfen des OS-Image mit den Templates für die Provisionierung und der Partition 4. Erstellen eines neuen Systems oder Forman-Discovery (Live-Demo) • Zuordnen einer Puppet Environments • Eintragen der MAC-Adresse • Zuordnen zu einer Domain und einem Subnet • Smart-Proxy weist dem System automatisch eine IP-Adresse zu • Zuordnen eines Betriebssystems
  8. codecentric AG Eine Zusammenfassung • Foreman hilft Systeme über den

    gesamten Lebenszyklus zu begleiten. – Wir erhalten also Reproduzierbarkeit, Fehlertolerant und Verfügbarkeit • Foreman bietet Smart-Proxies (DHCP, DNS, TFTP) und einen PXE-Server. – Vollautomatische Betriebssysteminstallation wird möglich • Foreman nutzt Puppet als Configuration Management Tool – Automatische Installation und Konfiguration weiterer Software Pakete • Puppet unterstützt uns dabei Infrastruktur genauso wie Anwendungscode zu entwickeln, zu testen und zu releasen • Ein Administrator kann somit mehr Systeme und Anwendungen administrieren 13.11.14
  9. codecentric AG Wo hilft „The Foreman“ nun in der Continous

    Delivery Pipeline? • Mit Foreman nicht nur den Code, sondern die gesamte Infrastruktur ausrollen. • Ermöglicht identische Umgebungen für Entwicklung, Test und Produktion. • Also z.B. keine Concurrency Probleme mehr, welche erst in der Produktion erkannt werden. Die Folge: • Auch Veränderungen an der Infrastruktur führen zu einem Deployment. • Die Infrastruktur wird mit dem Code und umgekehrt getestet. • Verschiedene Infrastrukturen existieren innerhalb eines Server Pools. Das Ziel: • Mehr Zeit und Geld für die Entwicklung und das Testen von Features. • Weniger Kosten für das Auffinden von Fehlern zwischen Entwicklung, Test und Produktion. 13.11.14
  10. codecentric AG Eine mögliche Architektur, um das Ziel zu erreichen?

    • MAAS: Mit Foreman die Erstellung von Metal as a Service • IAAS: OpenStack nutzen um eine Infrastruktur zu erstellen • PAAS: OpenShift stellt eine Java PAAS zur Verfügung • Continuos Delivery Pipeline: Jenkins, um das ganze zu verknüpfen 13.11.14