Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsApr 11, 2026·3 min de lectura

Pulumi — Infrastructure as Code in Any Programming Language

Pulumi is infrastructure as code using general-purpose languages: TypeScript, Python, Go, C#, Java, YAML. Unlike Terraform HCL, Pulumi lets you use loops, functions, classes, and real package ecosystems to describe cloud infra.

Introducción

Pulumi is infrastructure as code using general-purpose programming languages. Unlike Terraform HCL or CloudFormation YAML, Pulumi lets you write infrastructure in TypeScript, Python, Go, C#, Java, or YAML — giving you loops, functions, classes, and the full power of a real programming ecosystem (npm, pip, Maven).

What Pulumi Does

  • Multi-language IaC — TS, Python, Go, C#, Java, YAML
  • Multi-cloud — AWS, Azure, GCP, Kubernetes, 140+ providers
  • State management — Pulumi Cloud (SaaS), self-hosted, S3, Azure Blob, local file
  • Policy as Code — CrossGuard policies in TS/Python
  • Secrets — encrypted state and config
  • Component Resources — package reusable abstractions
  • Automation API — programmatically drive Pulumi
  • Import — bring existing cloud resources under Pulumi
  • ESC — environments, secrets, configuration service

Architecture

Your program is a regular TS/Python/Go app using Pulumi SDK. At runtime it builds a resource graph. Pulumi engine computes a plan against current state and executes changes via provider plugins (which wrap Terraform providers or native cloud SDKs).

Self-Hosting

Pulumi CLI is open source. State backend options include Pulumi Cloud (managed SaaS) or self-hosted backends (S3, Azure Blob, GCS, local file). For enterprise: Pulumi Cloud Self-Hosted.

Key Features

  • Real programming languages
  • 140+ cloud providers
  • Policy as Code (CrossGuard)
  • Component resources for abstraction
  • Secrets encryption
  • Import existing resources
  • Automation API
  • Stack references across projects
  • Easy testing via unit tests
  • Pulumi ESC for environment/secrets management

Comparison

Tool Language State Provider Count
Pulumi TS/Py/Go/C# Managed or self 140+
Terraform HCL tfstate file 3000+
OpenTofu HCL (Terraform fork) tfstate Same as TF
CDK (AWS) TS/Py/Java/C# CloudFormation AWS only
Cdktf TS/Py/Go/C# tfstate TF-compatible
CloudFormation YAML/JSON AWS AWS only

FAQ

Q: Pulumi vs Terraform? A: Terraform HCL is a DSL (quick to learn but limited in expressiveness); Pulumi uses real programming languages (complex logic, loops, classes, testing feel more natural). Terraform has a larger ecosystem; Pulumi offers a better developer experience.

Q: Can I write K8s in TypeScript? A: Yes. @pulumi/kubernetes provides all K8s resource types with strongly-typed autocomplete. Much nicer than YAML.

Q: Where to put state? A: Pulumi Cloud is recommended by default (the free tier is enough for small teams). For fully private setups, use S3/Azure Blob/GCS + encryption-provider.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados