Aufrufe
vor 2 Monaten

Netzwoche 8/2019

  • Text
  • Kategorie
  • Kubernetes
  • Webcode
  • Devops
  • Schweizer
  • Schweiz
  • Netzmedien
  • Container
  • Swiss
  • Unternehmen

42 Technology Focus

42 Technology Focus Kubernetes verleiht Flügel Keine Technologie stellt die Welt rund um das Ausliefern von Applikationen so sehr auf den Kopf wie die Containerorchestrierungsplattform Kubernetes. Und das nicht ohne Grund. Kubernetes beflügelt regelrecht die Bereitstellung von Anwendungen. DER AUTOR Nikolas Philips DevOps Engineer, Basler Versicherungen Da Entwickler mit Kubernetes neue Applikationen und Updates zügiger ausliefern können, wird deren Produk tivität gesteigert. Container haben sich in den letzten Jahren als dominierende Technologie zum Verpacken und Bereitstellen von Applikationen durchgesetzt. Im Gegensatz zum herkömmlichen Deployment von Applikationen auf virtuellen Maschinen oder dedizierten Servern wird eine Anwendung in einem Container mit allen erforderlichen Abhängigkeiten und Konfigurationsdateien gebündelt. Diese müssen somit nicht auf dem Hostsystem installiert werden. Dadurch können Server homogenisiert werden, was Aufwand und Betriebskosten deutlich reduziert. Traditionell werden für neue Applikationen oft zusätzliche Server bereitgestellt, was jedoch bis zu mehreren Wochen dauern kann. Dies sieht mit Kubernetes ganz anders aus. Kubernetes kann containerbasierte Anwendungen einem oder mehreren Servern automatisch zuweisen, ordnungsgemäss starten, überwachen und stoppen. Durch eine deklarative Konfiguration wird der gewünschte Zustand einer Applikation definiert, unter anderem mit wie vielen Ressourcen und Replikationen diese verfügbar sein soll. Kubernetes kümmert sich dann darum, dass dieser gewünschte Zustand erreicht und aufrechterhalten wird. So müssen Anwendungen nicht mehr auf den Zielservern durch manuelle Schritte oder aufwändig entwickelte Skripte bereitgestellt werden. Die Auslieferung von Anwendungen, wie auch das Anpassen des Ressourcenbedarfs, kann stattdessen innerhalb weniger Minuten durchgeführt werden. Einsatz im Unternehmen Der Einsatz von Kubernetes im Unternehmen bringt einige Herausforderungen mit sich. Bestehende Applikationen müssen in Container-Images verpackt und möglicherweise für den Gebrauch auf der Plattform angepasst werden. Neben dieser Migration müssen die Abläufe zum Bauen, Testen und Bereitstellen der Anwendungen angepasst und die Organisation der Konfigurationen geregelt werden. Ein weiterer wichtiger Baustein ist die gut durchdachte Konzeption der rollenbasierten Zugriffskontrolle, welche die Einsicht und Anpassungsmöglichkeiten der auf Kubernetes bereitgestellten Anwendungen für Mitarbeitende regelt, um etwa Revisionsanforderungen gerecht zu werden. Zusätzlich muss entschieden werden, wo Kubernetes laufen soll: Bei einem Cloud-Anbieter wie Amazon, Google oder Microsoft, wo Installation und Updates auf Knopfdruck möglich sind, oder doch lieber im eigenen Rechenzentrum. Kubernetes bringt auch neue Problemstellungen beim Thema Sicherheit mit sich. Beispielsweise werden sensible Applikationsparameter wie Passwörter in sogenannten Secrets zentral in der Plattform abgelegt. Zwar ist deren Zugriff gut geregelt, sollte es jedoch einem Angreifer gelingen, Einblick in den Konfigurationsspeicher von Kubernetes zu bekommen, wären auch die Secrets betroffen. Hier bieten sich Vault-Lösungen an, die sensible Secrets ausserhalb der Plattform aufbewahren, um deren Zugriff besser zu schützen. Da Entwickler mit Kubernetes neue Applikationen und Updates zügiger ausliefern können, wird deren Produktivität gesteigert. Durch Standardisierung der darunterliegenden Serverinfrastruktur wird ebenfalls Zeit und Aufwand gespart. Nicht umsonst werden bei über 70 Prozent der Fortune-100-Firmen Container eingesetzt und bei mehr als 50 Prozent Kubernetes zur Orchestrierung. Bild: mirpic / Fotolia.com 08 / 2019 www.netzwoche.ch © netzmedien ag

Technology Focus 43 Altern wie Milch, nicht wie Wein: Die Realität der Containersicherheit In vielerlei Hinsicht bringt das Alter Verfeinerung. Wein und Käse verbessern sich mit zunehmendem Alter. Aber in der Welt der Unternehmens-IT hat das Alter eine andere Bedeutung. Veraltete Systeme und Software können erhöhte Sicherheitsrisiken mit sich bringen. Bild: oldiefan / pixabay.com Obsolete Container sind okay In komplexen IT-Umgebungen von Unternehmen ist ein System nur so sicher wie sein schwächstes Glied, was bedeutet, dass ein veralteter Container zum Sprungbrett für böswillige Akteure werden könnte, um geschäftskritische Prozesse zum Erliegen zu bringen, Daten zu stehlen oder Schlimmeres. Die Frage wird dann lauten: Wie verjünge ich meine veralteten Container? Die Antwort ist erschreckend einfach. Gar nicht. Die Überalterung eines Containers ist unvermeidlich und muss anders angegangen werden. Der Betrieb von containerisierten Anwendungen muss berücksichtigen, dass Container-Images unveränderlich und somit nicht dazu bestimmt sind, langfristig gepflegt zu werden; sie dienen einem bestimmten Zweck, und wenn dieser Zweck erreicht ist oder der Container diesen nicht mehr erfüllt, werden sie durch eine neue Version ersetzt. Neue Container mit aktualisierten Parametern werden eingeführt, um dem sich verändernden Software- Ökosystem besser gerecht zu werden. Es ist wichtig, containerisierte Workloads als Fliessbandarbeit zu betrachten – diejenigen, die veraltet oder in irgendeiner Weise «auffällig» sind, werden laufend aussortiert und ersetzt. Linux-Container sind zwar von Natur aus Open Source, aber sie sind nicht ohne Weiteres durchschaubar; ein Mangel an Metadaten und unterstützenden Technologien rund um containerisierte Anwendungen können ihr Innenleben und vor allem das Alter aller darin enthaltenen Komponenten leicht verschleiern, was im Bereich von IT-Sicherheit schnell gefährlich werden kann. DER AUTOR Lars Herrmann Senior Director Technology Partnerships, Red Hat Einfach gesagt: Container altern wie Milch, nicht wie Wein. Milch ist eine Schlüsselkomponente beim Kochen. Wenn die Milch sauer oder schlecht ist, dann wird es auch das zubereitete Gericht. Das Gleiche gilt für Container, zumal sie als Schlüsselkomponenten für Produktionssysteme angesehen werden. Ein abgestandener oder «gesäuerter» Container könnte einen ansonsten vielversprechenden Einsatz ruinieren. Containersicherheit: Es ist ein Ökosystem, kein Job Eine funktionale Containersicherheit erfordert, dass das Ökosystem ineinandergreift. Im ersten Schritt muss der Container unter Berücksichtigung der entsprechenden Sicherheitsvorkehrungen gebaut werden. Anschliessend muss der Entwickler oder Hersteller, der die containerisierte Applikation erstellt, die notwendigen Massnahmen für eine schadstellenfreie Anwendung ergreifen, und zwar fortlaufend, immer wieder – «continuous». Wenn die Applikation zur Bereitstellung an das Operations-Team übergeben wird, muss es die entsprechenden Sicherheitskontrollen aktivieren. Ein Container-Stack ist nur so sicher wie sein schwächstes Element. Operationsund Sicherheitsteams müssen Ankündigungen von Fehlern und Schwachstellen beobachten und beurteilen, ob und welche ihrer containerisierten Anwendungen gefährdet sind. Wenn sie gefährdete Container finden, dann wiederholt sich der Zyklus der Herstellung und Bereitstellung, mit neu erstellten – somit gepatchten – containerisierten Anwendungen, um das Problem zu entschärfen. Einfach ausgedrückt, ist es Aufgabe des Containerlieferanten (egal ob externer ISV oder interner Entwicklungsbetrieb) und nicht der Endbenutzer, Sicherheits-Updates kontinuierlich und häufig einzubinden. Plattform- Hersteller unterstützen hier mit ihren Angeboten für Container-Zertifizierung und automatisierten Services für die fortlaufende Qualitätssicherung und Patch-Automatisierung. www.netzwoche.ch © netzmedien ag 08 / 2019

Archiv