SUSE Linux Expert Days 2018 Frankfurt

SUSE Linux Expert Days-Aufsteller

Vergangenen Dienstag fand eines der zahlreichen SUSE Linux Expert Days 2018-Events in Frankfurt statt. SUSE veranstaltet jährlich zahlreiche solcher Veranstaltung weltweit, um Kunden in Form von Vorträgen und Demos über neue Produkte und Aktualisierungen zu informieren. Anstatt weniger größerer Veranstaltungen werden bewusst 80 regionale Events geplant, um die Teilnehmerzahlen überschaubar zu halten und individuelle Diskussionen zu fördern. Bei Fragen stehen erfahrene Experten zur Seite. Die diesjährige Veranstaltung stand unter dem Motto "Open. Redefined. Open is more than just code.".

Im Jahr 2015 hatte ich zuletzt eine solche Veranstaltung besucht - also war es mal wieder an der Zeit, sich über Updates informieren. 🙂

Agenda

Das Event bestand aus zahlreichen interessanten Fachvorträgen:

  • Keynote - Open. Redefined. Open is more than just code - Michael Jores, Regional Director Central Europe
  • Container as a Service - Carsten Duch, Sales Engineer
  • SUSE OpenStack Cloud - Carsten Duch, Sales Engineer
  • SUSE Enterprise Storage - Ulrich Rüße, Sales Engineer
  • SUSE Manager - Jörg Bunse, Sales Engineer
  • SUSE Enterprise Linux / Mission Critical Computing, Jörg Bunse, Sales Engineer

SUSE CaaS

Mit SUSE CaaS (Container as a Service) haben die Nürnberger im vergangenen Oktober ein neues Produkt vorgestellt, um in das Cloud Native-Geschäft einzusteigen. Wie der Name vermuten lässt zielt dieses auf Container bzw. Microservices und deren effiziente Bereitstellung und Skalierung ab. Hierbei kommen vor allem Kubernetes und zusätzliche Management-Tools, wie beispielsweise Helm, zum Einsatz. Helm versteht sich als eine Art Paketmanager für Kubernetes und kann dazu verwendet werden, Erweiterungen (sogenannte Helm Charts) zu installieren und zu verwalten. Helm ist eine Server-/Client-Applikation - die dazugehörige Serverkomponente heißt Tiller.

Technisch gesehen basiert die im November 2017 vorgestellte Version 2.0 auf Kubernetes 1.8.7 (aktuell ist derzeit 1.9.3) und bringt darüber hinaus noch eine Container-Registry sowie durch SUSE verwaltete Container-Vorlagen für Applikationen wie MariaDB mit.

Zentraler Bestandteil des Produkts ist SUSE MicroOS, welches sich als minimalistisches Betriebssystem versteht, das primär für Container und Microservices konzipiert wurde. Es hat einen sehr geringen Footprint und wurde für Masseninstallationen optimiert. Gegenüber vollwertigen SUSE Linux Enterprise Server-Installation gibt es einige feine Unterschiede:

  • Minimale Software-Auswahl
  • Anstatt des cron-Dienstes kommen systemd-Timer zum Einsatz
  • Btrfs ist das verwendete Dateisystem
  • AppArmor wird vollständig unterstützt, während SELinux derzeit noch in der Diskussion ist

Es wird auf einem physischen oder virtuellen Host installiert und dient lediglich dazu, Container auszuführen. Betriebssystemaktualisierungen werden atomar durchgeführt - es handelt hierbei sich um eine inkrementelle Aktualisierung. Im Gegensatz zu konventionellen RPM- bzw. Delta-RPM-Aktualisierungen kommt OSTree zum Einsatz. Hierbei werden versionierte, unveränderliche Dateisystem-Bäume synchronisiert, was vor allem die Wartungszeit drastisch verkürzt. Nach einem Update wird lediglich ein Verweis geändert, der neue Dateisystem-Baum wird beim Neustart des Containers geladen. Im Umkehrschluss bedeutet dies auch sehr einfache Rollbacks, da lediglich ein Verweis geändert werden muss.

SUSE CaaS unterstützt derzeit bis zu 250 Clusterknoten. Die Konfiguration der einzelnen Clusterknoten wird mit Salt und cloud-init automatisiert - so lassen sich auch große Systemlandschaften in wenigen Minuten umsetzen. cloud-init ist ein Werkzeug aus dem Hause Canonical und dient zur Konfiguration eines neuen Systems beim ersten Boot - es konfiguriert u.a. SSH, Mountpoints und das Netzwerk. Zur Verwaltung der Systemlandschaft dient ein Dashboard, welches auf einem Admin-Knoten installiert wird. Es dient zur Steuerung der Kubernetes Masters und Workers.

Für die nächste Version 3.0 sind neben kleineren Container-Images auch ein HA-Setup und Installationen mit nur einem Knoten geplant. Zukünftige Produktversionen sollen auf SUSE Linux Enterprise Server 15 basieren und ein verbessertes Dashboard mitbringen. Der Supportzeitraum soll auf mindestens 3 Jahre anwachsen.

SUSE OpenStack Cloud

Da SUSE CaaS eindeutig den Cloud Native-Ansatz fokussiert, eignet es sich nicht für konventionelle (Silo-)Workloads. Für diese stellt OpenStack die entsprechende Cloud Computing-Architektur dar. Mithilfe dieser lassen sich automatisiert hochverfügbare Private Clouds verschiedener Hypervisor bereitstellen. Technisch betrachtet besteht eine OpenStack-Systemlandschaft in der Regel aus:

  • Admin Server
    • Beinhaltet Web-Oberfläche zur Verwaltung der Systeme
    • Stellt DHCP, TFTP und Chef bereit
    • OpenStack-Knoten werden automatisiert Crowbar bereitgestellt
  • Control Nodes
    • Führen Verwaltungsaufgaben aus
    • Stellt u.a. Dashboard, Vorlagen, Message Queue und Identitätsinformationen bereit
  • Compute Nodes
    • Führt virtuelle Maschinen aus, XEN und KVM werden unterstützt
  • Swift Storage Nodes
    • Stellt Objektspeicher via Swift zur Verfügung, z. B. mithilfe SUSE Linux Enterprise Storage

OpenStack kann für Hochverfügbarkeit konfiguriert werden. Ein einem solchen Fall können einzelne VMs per Pacemaker und Corosync physische Ausfälle überleben. Gegenüber manueller OpenStack-Installationen bietet SUSE OpenStack Cloud den Vorteil der automatischen Konfiguration. Darüber hinaus bietet das Produkt ausgefeilte Management- und Monitoring-Optionen. So können beispielsweise ein vollwertiger ELK-Stack (Elasticsearch, Logstash, Kibana) sowie Grafana für Systemgraphen auf einem dediziertem Knoten installiert werden.

Die aktuelle Version 7.0 basiert auf OpenStack Newton (2016.2). Zwischen zwei SUSE OpenStack Cloud-Versionen liegen immer zwei OpenStack-Versionen.

2018 soll die nächste Version 8.0 auf Basis von OpenStack Pike (2017.2) erscheinen. Diese soll auf SLES 12 SP3 basieren und SDN-Unterstützung (software-defined networking) für NSX-V, NSX-T und Cisco ACI bieten. Darüber hinaus sollen Kapazitäts-, Performance- und Mandanten-Monitoring mit an Board sein. Der Support soll mindestens 3 Jahre betragen.

2019 soll OpenStack Cloud 9.0 auf Basis von OpenStack Rocky erscheinen. Für dieses Release soll SLES 15 als Basis verwendet werden und mehr Skalierungsmöglichkeiten bieten.

SUSE Enterprise Storage

Mit SUSE Enterprise Storage wird schon seit einigen Jahren ein SDN-Produkt (Software-defined Storage) angeboten. Dieses soll vor allem durch die Verwendung von Standard-Hardware durchschnittliche Speicherkosten gegenüber konventionellen Speichersystemen drastisch reduzieren und schnellere Skalierungen durch das Erweitern des Clusters ermöglichen. Das Produkt basiert auf der verteilten Speicherlösung Ceph und bietet so unter anderem iSCSI, NFS und mit AWS-kompatiblem S3-Objektspeicher an. Eine typische Ceph-Installation besteht in der Regel aus verschiedenen Servertypen:

  • Storage / Infrastructure Nodes
    • Stellen Standard-Speichergeräte (Festplatten, SSDs) als Objektspeicher (OSD) zur Verfügung
    • Separate 10G-/40G-Netzwerke empfohlen
  • Monitor Nodes
    • Überwachen Integrität und stellen Hochverfügbarkeit sicher
  • Administration Node
    • Server zur Verwaltung des Clusters

Der Vorteil von SUSE Enterprise Storage gegenüber manuellen Installationen ist, dass die Komplexität dank automatisierter Konfigurationen deutlich abnimmt. Hierbei kommt vor allem das eigens entwickelte DeepSea-Framework zum Einsatz. Dieses konfiguriert sämtliche Server und Produkt-Komponenten (Prometheus, Grafana, openATTIC) vollständig per Salt. Mit openATTIC steht ein grafisches Konfigurationswerkzeug zur Verfügung, mit welchem auch die Performance pro Knoten überwacht werden kann.

Die aktuelle Version 5 wurde am 24.11.2017 veröffentlicht.

Die kommende Version 6 soll auf Ceph Mimic, sowie SLES 15 und CaaS basieren. Neben asynchroner iSCSI-Replikation sind auch SNMP, Snapshot-Verwaltung und ein CIFS/Samba-Gateway geplant. Erstmals sollen auch Nicht-SUSE RBDs (RADOS Block Device) sowie ein RBD Client-Cache unterstützt werden.

Version 7.0 soll auf Ceph Nautilus basieren und sich in Kubernetes integrieren. Neben IPv6 sollen auch CephFS Verzeichnis-Quotas unterstützt werden. Als Highlights wurden Daten-Deduplizierung und cluster-übergreifende Dashboards geplant.

SUSE Cloud Application Platform

Mit Cloud Application Platform steigt SUSE in das Cloud Foundry-Geschäft ein. Die Multi-Cloud PaaS-Lösung (Platform as a Service) wird vor allem in agilen Software-Entwicklungs- und Operations-Teams eingesetzt, um standardisiert und automatisiert Cloud Native Applications zu entwickeln.

Cloud Foundry bietet ein ansprechendes mandantenfähiges Dashboard, über welches die verschiedenen Benutzerstämme Ressourcen jeglicher Art (Anwendungen, Load-Balancer, Container,...) bestellen können. Dabei stehen eine schnelle Bereitstellung sowie Skalierungsfähigkeit und das Verstecken von Komplexität im Vordergrund. Die Platform fokussiert cloud-native Anwendungen und verfügt so über ausgefeilte Laufzeitumgebungen für zahlreiche Programmiersprachen - u.a. Java, Node, Go und Python. Neben Bare-Metal-Maschinen und gängigen Hypervisoren (XEN, KVM, vSphere, Hyper-V) werden auch OpenStack Private Clouds und verschiedene Public Clouds (AWS, Azure, Google Cloud Platform) unterstützt.

Technisch gesehen basiert SUSE Cloud Application Platform neben Cloud Foundry auf Kubernetes, um das Bereitstellen von Containern zu automatisieren und standardisieren.

Der Vorteil von SUSE Cloud Application Platform gegenüber manuellen Cloud Foundry-Installationen ist, dass sich entsprechende Systemlandschaften schnell implementieren lassen. Die einzelnen Komponenten werden automatisiert aufgesetzt und man muss sich nicht mit allen Details auseinander setzen. Wer ohnehin bereits SUSE CaaS und/oder SUSE Enterprise Storage einsetzt und über Cloud Foundry nachdenkt, dürfte mit SUSE Cloud Application Platform gut bedient sein.

SUSE Manager

Regelmäßige Leser meines Blogs wissen, dass ich mich sehr stark mit Spacewalk bzw. deren Enterprise-Ableger Red Hat Satellite 5 und SUSE Manager beschäftige. Auf die Veränderungen in diesem Produkt war ich sehr gespannt. Prinzipiell ist SUSE Manager eine Erweiterung für SLES, die zusätzlich lizensiert werden muss. Auch wenn optisch eine Verwandtschaft zum Upstream-Projekt erkennbar ist, gibt es jedoch zahlreiche technische Unterschiede:

  • Für Konfigurationsmanagement kommt Salt zum Einsatz
  • Oracle Datenbank-Support entfernt, PostgreSQL ist die einzige Auswahl
  • Der von OSA Dispatcher (Open Source Architecture) verwendete Jabber-Server verwendet SQLite anstatt Oracle Berkeley DB als Backend
  • Das in Spacewalk integrierte Monitoring wurde entfernt, SUSE liefert Icinga 1.x-Pakete mit. So kann auf einem dedizierten Server eine Icinga-Instanz installiert werden

Seit dem Release von SUSE Manager 3.0 im April 2016 hat sich einiges getan. Wesentliche Veränderungen seit der aktuellen Version 3.1.4 vom 18.01.2018 sind:

  • Unterstützung für SUSE Linux Enterprise Storage 5, SUSE OpenStack Cloud Continuous Delivery (Jenkins) und SUSE CaaS (Kubernetes)
  • Verwaltung von SLES-basierten Containern
  • Migration von PostgreSQL 9.4 auf 9.6
  • IPMI-Steuerung von Salt Minions (Stromverwaltung, Reboot,...)
  • Salt Konfigurationsmanagement wird nun vollständig vom Support abgedeckt
  • Web-Oberfläche wurde weiter überarbeitet

Für die kommende Version 3.2 ist die Visualisierung abweichender Konfigurationen geplant. Ein weiteres Feature soll ein ELK-basiertes (Elasticsearch, Logstash, Kibana) Monitoring- und Log-Management sein - hierauf bin ich sehr gespannt. Das altbackene Spacewalk-Monitoring war zweifelsfrei schon lange nicht mehr zeitgemäß und die optionale Icinga-Alternative verstand sich meiner Meinung nach mehr als Workaround oder Übergangslösung. Mit Icinga2 hätte es eine deutlich flexiblere und mächtigere Monitoring-Alternative gegeben.

Spacewalk stellte das Upstream-Projekt für Red Hat Satellite 5 dar, seit Version 6 setzt das Produkt jedoch auf die Projekte Foreman und Katello. Seither stagniert die Entwicklung etwas - zumindest empfinde ich das subjektiv so. SUSE gehört seit Jahren maßgeblich zu den Mitwirkenden des Projekts - so war u.a. die 2014 modernisierte Web-Oberfläche eine SUSE-Entwicklung. Die Integration von Salt in SUSE Manager erachte ich als äußerst sinnvoll - und würde diese auch sehr gerne im offiziellen Spacewalk-Projekt sehen.

SUSE Linux Enterprise Server

Auch wenn sich die meisten Vorträge der Veranstaltung um Zusatzprodukte drehten, gab es einige Neuigkeiten rund um das Betriebssystem und Hauptprodukt.

Der aktuelle SLES 12 Server-Pack SP3 wurde am 30.11.2017 veröffentlicht. Für das dritte bzw. vierte Quartal 2018 ist SP4 geplant. Dieses soll die Verwendung neuer Hardware ermöglichen und Modulinhalte gemäß Lebenszyklus aktualisieren. Im letztem Quartal 2018 soll mit SP5 der letzte Service-Pack für SLES 12 erscheinen.

Für die nächste Hauptversion wurde die Zahl 15 ausgewählt. Die Versionen 13 und 14 werden so übersprungen, da diese in westlichen und östlichen Kulturen als Unglückszahlen gelten. Derzeit gibt es den dritten Veröffentlichungskandidat, welcher öffentlich von der SUSE-Webseite heruntergeladen werden kann.

SLES 15 soll im ersten bzw. zweiten Quartal 2018 erscheinen. Gegenüber der vorherigen Version gibt es dann keine dedizierten Abbilder für SLES, SLES for SAP Applications und SLED (SUSE Linux Enterprise Desktop) mehr. Das einzige verfügbare Abbild eignet sich sowohl für Container als auch physische und virtuelle Systeme. Die neue Version wird als IoT-ready bezeichnet und liefert einige neue Bibliotheken und Programmversionen:

  • Linux-Kernel 4.12
  • TLS 1.3
  • OpenSSL 1.1
  • GCC 7
  • Gnome 3.26
  • Python 3.x ist Standard (SUSE behält sich das Recht vor, Python 2.x im Produktzyklus zu entfernen)
  • chrony ersetzt ntpd (da u.a. schneller und akkurater)
  • firewalld ersetzt SUSEFirewall2
  • Wayland ist der Standard Displayserver auf der x86_64-Plattform

Vor allem der neue Linux-Kernel dürfte interessant sein. Er liefert gleich zwei neue IO-Scheduler: BFQ I/O und Kyber I/O. Ersterer soll sich positiv auf die Performance von Desktops auswirken, während Kyber I/O minimalistischer aufgebaut ist und für Multiqueue-Devices optimiert wurde. Neu hinzugekommen ist auch die Dreiwege-Replikation für DRBD-Installationen (Distributed Replicated Block Device).

Für das erste bzw. zweite Quartal 2019 ist der erste Service-Pack für SLES 15 geplant. Dieser soll neue Hardware-Unterstützung (u.a. für NVDIMMs) sowie eine FIPS 140-2 Zertifizierung mitbringen.

Mit SUSE Hawk (High Availability Web Konsole) gibt es eine ansprechende Web-Oberfläche zur Verwaltung von Pacemaker-Clustern. Das Tool basiert auf Twitter Bootstrap 3 und Ruby on Rails und steht im Rahmen des High Availability-Addons zur Verfügung. In einer Demonstration wurde einige der Funktionen präsentiert; es lassen sich sämtliche Pacemaker-Resourcen komfortabel erstellen, anpassen und entfernen. Für das Erstellen neuer Ressourcen stehen sinnvolle Assistenten zur Verfügung.

Fazit

Für mich war die Veranstaltung äußerst hilfreich, um mich über die letzten Produktaktualisierungen zu informieren - in den letzten drei Jahren hat sich einiges getan. Ich finde auch nach wie vor die kleineren Teilnehmerzahlen äußerst begrüßenswert, da sich so zahlreiche interaktive Diskussionen ergeben haben und Networking gefördert wurde. Die einzelnen Fachvorträge habe ich als interessant empfunden.

Übersetzungen: