Containerisierung: Pulumi erweitert das Open-Source-Portfolio für Kubernetes

Der Infrastructure-as-Code-Anbieter veröffentlicht unter anderem einen Kubernetes-Operator und eine Anbindung an Open Policy Agent und Helm 3.

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen

(Bild: Travel mania/Shutterstock.com)

Von
  • Rainald Menge-Sonnentag

Pulumi hat einige Erweiterungen für seine Infrastructure-as-Code-Plattform (IaC) veröffentlicht. Die Werkzeuge zielen auf ein besseres Zusammenspiel mit Kubernetes und sind allesamt ebenso Open-Source-Projekte wie die Kernplattform. Laut dem Blogbeitrag zu den neuen Tools setzen viele Pulumi-Installationen auf die Containerisierungsplattform Kubernetes. Dem tragen die nun vorgestellten Werkzeuge Rechnung.

Pulumi steht mit der gleichnamigen Plattform, die im April in Version 2.0 erschienen ist, unter anderem im Wettbewerb zu HashiCorp Terraform. Als Besonderheit setzt Pulumi nicht auf YAML oder JSON zur Definition der Infrastruktur, sondern bietet eine Anbindung an zahlreiche Programmiersprachen für das Provisionieren: JavaScript beziehungsweise TypeScript, Python, Go und C#.

Der neue Kubernetes-Operator bietet eine direkte Anbindung an Git-Repositories zum Verwalten. Administratoren definieren dazu eine Stack-Extension in Form einer Custom Resource im Kubernetes-Cluster. Der Stack kann ein beliebiges Pulumi-Programm innerhalb eines Git-Repository sein, und der Operator gleicht stetig den Status der Cloud-Ressourcen mit den Definitionen innerhalb des Stack ab. Dabei lassen sich auch Richtlinien über Policy as Code definieren.

Der Kubernetes-Operator bietet eine direkte Anbindung an Definitionen in einem Git-Repository.

(Bild: Pulumi)

CrossGuard, das Framework, das für das Umsetzen von Vorgaben über Policy as Code verantwortlich ist, kann neuerdings mit Open Policy Agent (OPA) zusammenarbeiten. OPA ist ein Projekt der Cloud Native Computing Foundation, das eine Engine und Sprache für Policys im Cloud-nativen Umfeld bietet. CrossGuard kann die von OPA genutzten .rego-Policy-Dateien einbinden.

Bei der Programmiersprachenvielfalt der IaS-Plattform setzt das Tool kube2pulumi an. Es übersetzt die in YAML oder JSON verfassten Kubernetes-Konfigurationen in Python-, TypeScript-, JavaScript-, Go- oder C#-Code. Das Werkzeug kann sowohl einzelne Manifest-Dateien als auch komplette Verzeichnisse in einem Aufwasch übersetzen. Anschließend lässt sich der Cluster über pulumi up ausrollen. Pulumi hat eine interaktive Demo-Seite eingerichtet, auf der Entwickler das Übersetzen von Code ausprobieren können.

Auf der interaktiven Seite können Entwickler das Umwandeln mit kube2pulumi in fünf Programmiersprachen ausprobieren.

Analog zum Übersetzen von YAML kommt das Tool crd2pulumi für Custom Resources zum Einsatz. Es übersetzt die CustomResourceDefinitions (CRDs) in Pulumi und ermöglicht damit stark typisierte Erweiterungen über die CustomResource-API.

Weitere Details zu den neuen Tools sowie den beiden bereits seit geraumer Zeit verfügbaren Werkzeugen zur Integration in die Continuous-Delivery-Plattform Spinnaker und zum Zusammenspiel mit dem Kubernetes-Paketmanager Helm 3 lassen sich dem Pulumi-Blog entnehmen.

(rme)