Pulumis Infrastructure as Code SDK ist die einfachste Möglichkeit, Infrastrukturen jeder Architektur und in jeder Cloud mithilfe von Programmiersprachen, die Sie bereits kennen und lieben, aufzubauen und bereitzustellen. Programmieren und liefern Sie die Infrastruktur schneller mit Ihren bevorzugten Sprachen und Tools und betten Sie IaC überall mit der Automatisierungs-API ein.
Schreiben Sie einfach Code in Ihrer Lieblingssprache und Pulumi stellt Ihre Ressourcen automatisch auf AWS, Azure, Google Cloud Platform, Kubernetes und über 120 Anbietern bereit und verwaltet sie mithilfe eines Infrastructure-as-Code-Ansatzes. Überspringen Sie YAML und nutzen Sie Standard-Sprachfunktionen wie Schleifen, Funktionen, Klassen und Paketverwaltung, die Sie bereits kennen und lieben.
Erstellen Sie beispielsweise drei Webserver:
const aws = require("@pulumi/aws");const sg = new aws.ec2.SecurityGroup("web-sg", {ingress: [{ Protokoll: "tcp", fromPort: 80, toPort: 80, cidrBlocks: ["0.0.0.0/0"] }],});for (let i = 0; i < 3; i++) {new aws.ec2.Instance(`web-${i}`, {ami: "ami -7172b611",instanceType: "t2.micro",vpcSecurityGroupIds: [sg.id],userData: `#!/bin/bash echo "Hello, World!" > index.html nohup python -m SimpleHTTPServer 80 &`,} );}
Oder ein einfacher serverloser Timer, der Hacker-News jeden Tag um 8:30 Uhr archiviert:
const aws = require("@pulumi/aws");const snapshots = new aws.dynamodb.Table("snapshots", {attributes: [{ name: "id", type: "S", }],hashKey: " id", billingMode: "PAY_PER_REQUEST",});aws.cloudwatch.onSchedule("daily-yc-snapshot", "cron(30 8 * * ? *)", () => {require("https"). get("https://news.ycombinator.com", res => {let content = "";res.setEncoding("utf8");res.on("data", chunk => content += chunk); res.on("end", () => new aws.sdk.DynamoDB.DocumentClient().put({TableName: snapshots.name.get(),Item: { date: Date.now(), content }, }).promise());}).end();});
In pulumi/examples sind viele Beispiele verfügbar, die Container, Serverlos und Infrastruktur umfassen.
Pulumi ist Open Source unter der Apache 2.0-Lizenz, unterstützt viele Sprachen und Clouds und ist einfach zu erweitern. Dieses Repo enthält die pulumi
-CLI, Sprach-SDKs und die Kern-Pulumi-Engine, und einzelne Bibliotheken befinden sich in ihren eigenen Repos.
Erste Schritte mit Pulumi : Stellen Sie mit Pulumi eine einfache Anwendung in AWS, Azure, Google Cloud oder Kubernetes bereit.
Lernen : Folgen Sie den Pulumi-Lernpfaden, um Best Practices und Architekturmuster anhand authentischer Beispiele kennenzulernen.
Beispiele : Durchsuchen Sie mehrere Beispiele in vielen Sprachen, Clouds und Szenarien, einschließlich Containern, serverlos und Infrastruktur.
Dokumente : Erfahren Sie mehr über Pulumi-Konzepte, befolgen Sie Benutzerhandbücher und konsultieren Sie die Referenzdokumentation.
Registrierung : Finden Sie das Pulumi-Paket mit den benötigten Ressourcen. Installieren Sie das Paket direkt in Ihrem Projekt, durchsuchen Sie die API-Dokumentation und beginnen Sie mit der Erstellung.
Pulumi ESC : Zentralisierte Verwaltung und Orchestrierung von Geheimnissen. Beherrschen Sie die Ausbreitung von Geheimnissen und die Konfigurationskomplexität sicher in Ihrer gesamten Cloud-Infrastruktur und Ihren Anwendungen.
Pulumi-Roadmap : Überprüfen Sie die geplanten Arbeiten für das kommende Quartal und einen ausgewählten Rückstand an Problemen, die uns beschäftigen, aber noch nicht geplant sind.
Community Slack : Machen Sie mit bei Pulumi Community Slack. Alle Gespräche und Fragen sind willkommen.
GitHub-Diskussionen : Stellen Sie Fragen oder teilen Sie mit Pulumi, was Sie erstellen.
Sehen Sie sich den Leitfaden „Erste Schritte“ an, um schnell mit Pulumi auf der Plattform und Cloud Ihrer Wahl zu beginnen.
Ansonsten zeigen die folgenden Schritte, wie Sie Ihr erstes Pulumi-Programm mit AWS Serverless Lambdas in wenigen Minuten bereitstellen:
Installieren :
Um die neueste Pulumi-Version zu installieren, führen Sie Folgendes aus (weitere Installationsoptionen finden Sie in den vollständigen Installationsanweisungen):
$ curl -fsSL https://get.pulumi.com/ | sh
Erstellen Sie ein Projekt :
Nach der Installation können Sie mit dem Befehl pulumi new
beginnen:
$ mkdir pulumi-demo && cd pulumi-demo $ Pulumi neues Hallo-aws-Javascript
Der new
Befehl bietet Vorlagen für alle Sprachen und Clouds. Führen Sie es ohne Argument aus und Sie werden zu den verfügbaren Projekten aufgefordert. Mit diesem Befehl wurde ein in JavaScript geschriebenes AWS Serverless Lambda-Projekt erstellt.
Bereitstellung in der Cloud :
Führen Sie pulumi up
um Ihren Code in die Cloud zu übertragen:
$ Pulumi aufwärts
Dadurch werden alle Cloud-Ressourcen bereitgestellt, die zum Ausführen Ihres Codes erforderlich sind. Nehmen Sie einfach Änderungen an Ihrem Projekt vor, und nachfolgende pulumi up
berechnen den minimalen Unterschied, um Ihre Änderungen bereitzustellen.
Nutzen Sie Ihr Programm :
Nachdem Ihr Code nun bereitgestellt wurde, können Sie mit ihm interagieren. Im obigen Beispiel können wir den Endpunkt einrollen:
$ curl $(Pulumi-Stack-Ausgabe-URL)
Greifen Sie auf die Protokolle zu :
Wenn Sie Container oder Funktionen verwenden, zeigt der einheitliche Protokollierungsbefehl von Pulumi alle Ihre Protokolle an:
$ pulumi logs -f
Zerstöre deine Ressourcen :
Nachdem Sie fertig sind, können Sie alle von Ihrem Programm erstellten Ressourcen entfernen:
$ pulumi destroy -y
Um mehr zu erfahren, besuchen Sie pulumi.com. Dort finden Sie viele weitere Informationen, einschließlich Tutorials, Beispiele und Details zu den Kernkonzepten der Pulumi-CLI und des Programmiermodells.
Die Pulumi CLI v1 und v2 werden nicht mehr unterstützt. Wenn Sie Version 3 noch nicht verwenden, ziehen Sie bitte eine Migration auf Version 3 in Betracht, um weiterhin das Neueste und Beste zu erhalten, was Pulumi zu bieten hat! ?
Informationen zur Migration von v2 auf v3 finden Sie in unserem v3-Migrationsleitfaden.
Besuchen Sie die Registry für die vollständige Liste der unterstützten Cloud- und Infrastrukturanbieter.
Besuchen Sie CONTRIBUTING.md für Informationen zum Erstellen von Pulumi aus dem Quellcode oder zum Beitragen zu Verbesserungen.