Pulumi 3.270.0 介绍与选型指南

Pulumi 3.270.0 介绍与选型指南:官方资料溯源的多语言基础设施即代码平台,详解 Engine/Provider/State 架构、编程语言 IaC 与 Pulumi Cloud 双轨、许可证沿革(MPL 2.0→Apache-2.0),以及与 Terraform、OpenTofu、CloudFormation 的量化选型对比。

PulumiPulumiDevOps基础设施即代码2026/10/19

Pulumi 3.270.0 介绍与选型指南

目标:基于官方公开资料(官网、官方文档站、GitHub 发行页)溯源介绍 Pulumi CLI 3.270.0 并给出同类选型对比;本文不做本地安装与运行实测,所有版本与社区数据实查日期为 2026-10-19。

一、信息基准

1.1 查询说明

  • 查询日期:2026-10-19。
  • 信息获取方式:纯官方资料溯源(pulumi.com 官网、官方文档站、GitHub 官方仓库 pulumi/pulumi 发行页),本文不做本地安装与运行实测。
  • 版本结论:本次介绍的版本为 Pulumi CLI 3.270.0(2026-10-16 发布),是 3.x 线当前最新版本;10 月内已连续发布 3.268.0(2026-10-07)与 3.270.0,minor 号高频滚动。

1.2 版本依据

项目实查结果(2026-10-19)来源
最新版本v3.270.0(2026-10-16)github.com/pulumi/pulumi/releases
近期版本v3.268.0(2026-10-07)同上
代码仓库pulumi/pulumi(主语言 Go)github.com/pulumi/pulumi
开源许可Apache License 2.0(CLI 与 SDK)仓库 LICENSE(GitHub 实查);官方 What is Pulumi 页
GitHub stars26kshields.io 徽章接口实查
商业服务Pulumi Cloud(Free/Essentials/Pro/Enterprise 套餐)pulumi.com/what-is/what-is-pulumi/
许可沿革早期以 MPL-2.0 发布,2023 年调整为 Apache-2.0;2023-08 HashiCorp 将 Terraform 转为 BUSL 后官方博客重申 Pulumi 纯开源立场仓库许可历史;pulumi.com/blog/pulumi-hearts-opensource

1.3 官方来源清单

来源地址
官方站点https://www.pulumi.com/
官方文档https://www.pulumi.com/docs/
入门指南https://www.pulumi.com/docs/iac/get-started/
源码仓库https://github.com/pulumi/pulumi
3.270.0 发行页https://github.com/pulumi/pulumi/releases/tag/v3.270.0
Pulumi vs Terraform 官方对比https://www.pulumi.com/docs/iac/comparisons/terraform/

二、软件概述

本文介绍的是 Pulumi CLI 3.270.0(开源核心,2026-10-16 发布)。

Pulumi 是一个「用熟悉编程语言写基础设施」的 IaC(基础设施即代码)与密钥管理平台:开发者用 TypeScript/JavaScript、Python、Go、.NET 等通用语言(以及 YAML)声明云资源,由 Pulumi Engine 计算差异并执行部署,状态(State)与密钥可存放在 Pulumi Cloud 托管服务或自托管后端(官方 What is Pulumi 页)。与 HCL 类声明式 DSL 不同,Pulumi 将 IaC 融入通用语言的类型系统、工具链与测试生态,这是其最核心的差异化定位。

项目由 Pulumi 公司主导,CLI/SDK 开源(Apache-2.0),可选接入商业托管 Pulumi Cloud(个人免费,团队按套餐付费)。GitHub 上拥有 26k stars(2026-10-19 实查),3.x 线以约每周 1-2 个 minor/patch 的节奏高频滚动(10 月内已发 3.268.0 与 3.270.0)。本站 Pulumi 专栏既有安装与 Stack 管理文档可配合阅读。

三、核心架构

3.1 Engine 与语言运行时

  • Pulumi CLI/Engine:Go 实现的编排引擎,负责解析程序、与 Provider 通信、计算 diff 并执行变更。
  • 语言 SDK 运行时:用户程序运行在 Node.js/Python/Go/.NET 运行时中,向 Engine 注册资源期望状态。
  • Automation API:以库形式将 Engine 嵌入应用代码,适合平台工程团队封装自研发布工具(3.268.0 发行说明为 NodeJS/Python/Go 的 Automation API 增补 version/whoami/install 接口)。

3.2 核心对象

对象说明
Project(Pulumi.yaml)项目声明:运行时语言、主程序路径等
Stack(Pulumi.<stack>.yaml)环境实例(dev/staging/prod)与差异化配置
Resource云资源抽象,由 Provider 提供 CRUD 实现
Provider对接 AWS/Azure/GCP/Kubernetes 等的桥接组件
State资源实际状态的账本,存于 Pulumi Cloud 或自托管后端
Secret/ESC加密密文与集中式密钥/配置管理

3.3 状态与协作

State 记录资源映射与依赖,Pulumi Cloud 在其上提供托管状态、RBAC、审计日志与策略(Policy Pack)执行;自托管形态支持对象存储/数据库后端(官方文档 Concepts)。

四、功能特性

4.1 多语言 IaC

用通用语言获得类型检查、IDE 补全、单元测试与包管理生态;官方对比文档将此列为其相对 HCL 工具的首要优势(pulumi.com/docs/iac/comparisons/terraform/)。

4.2 引擎能力

3.270.0 修复 pulumi env 系列命令的并发覆写问题与 pulumi stack drift status 未知状态报告;3.268.0 为 Invoke 协商 OutputValues(SDK 可传递依赖值)、改进 refresh/update 场景下的资产状态恢复(官方发行说明),可见引擎在类型协商与状态一致性上持续增强。

4.3 平台化配套

Pulumi Cloud 提供托管状态/密钥、Web 控制台与 CI/CD 集成;Pulumi ESC(Environments, Secrets and Configuration)提供集中配置管理;策略即代码(CrossGuard)支持合规校验(官方 What is Pulumi 与 Get started 页)。

4.4 许可与开源口径

CLI/SDK 以 Apache-2.0 发布(仓库 LICENSE 实查);官方对比页明确以「是否真开源」作为与 BUSL 化的 Terraform 的分界。许可证沿革方面:Pulumi 早期仓库许可为 MPL-2.0,2023 年调整为 Apache-2.0;同年 HashiCorp 将 Terraform 改为 BUSL 引发社区争议并催生 OpenTofu 分支(行业同时出现 FSL 等新型源可用许可),Pulumi 官方博客《Pulumi Loves Open Source》重申其使用 Apache-2.0 且不依赖 BSL 软件。

五、快速上手

以下路径转述自官方 Get started 文档,本文不做本地实测。

5.1 安装

官方 Download & install 页(https://www.pulumi.com/docs/iac/download-install/ )提供各平台安装方式(脚本、包管理器、二进制)。

5.2 首个 AWS 项目(官方 Get Started AWS 路径)

pulumi new aws-python        # 从模板创建项目(含 Pulumi.yaml 与程序骨架)
pulumi config set aws:region us-west-2
pulumi up                    # 预览并执行首次部署
pulumi destroy               # 释放资源

官方 AWS Get started 指南(https://www.pulumi.com/docs/clouds/aws/get-started/ )逐节演示安装 CLI、配置 AWS 凭证并运行第一次 update;Azure/GCP/Kubernetes 各有对应入口(Get started 页列出全部路径)。

5.3 状态与协作

默认引导接入 Pulumi Cloud(个人免费)托管 State 与 Secret;自托管后端可切换(官方 Concepts 文档)。

六、适用场景与限制

6.1 适用场景

  • 团队具备较强软件工程能力,希望用通用语言+测试框架治理 IaC。
  • 多云与 Kubernetes 混合基础设施,追求 Provider 覆盖与抽象组件复用。
  • 平台工程需要将部署能力嵌入自研工具(Automation API)。
  • 需要托管 State/Secret/策略与审计(Pulumi Cloud)或自托管灵活后端。

6.2 限制与注意事项

  • 版本滚动极快(3.268→3.270 仅隔 9 天),生产环境需固定版本并关注发行说明。
  • 生态重心为 Pulumi 公司维护的 Provider 与模板;存量 HCL 资产迁移需评估官方转换工具。
  • State 管理选择托管 Cloud 时涉及数据出域合规评估;自托管则自行承担可用性。
  • 社区规模与 Terraform 尚有差距(stars 26k vs 50k,2026-10-19 实查),招聘与资料检索面需纳入考量。

七、同类选型对比

7.1 候选概览

工具定位开源许可
Pulumi 3.270.0多语言 IaC 平台(CLI/SDK 开源 + 托管 Cloud)Apache-2.0
Terraform 1.16HCL 声明式 IaC 事实标准BUSL-1.1(2023-08 起由 MPL-2.0 变更)
OpenTofu 1.13Terraform 开源分支(Linux 基金会)MPL-2.0
AWS CloudFormationAWS 原生托管 IaC 服务AWS 托管服务(无独立开源仓库)

7.2 量化对比(2026-10-19 实查)

维度Pulumi 3.270.0Terraform 1.16.6OpenTofu 1.13.1CloudFormation
开源许可Apache-2.0BUSL-1.1MPL-2.0商业服务条款
GitHub stars26k(pulumi/pulumi)50k(hashicorp/terraform)31k(opentofu/opentofu)不适用
最近发版3.270.0(2026-10-16)v1.16.6(2026-10-14);1.17.0-rc2(2026-10-14)v1.13.1(2026-10-01);1.12.8 维护版(2026-10-14)持续托管更新(AWS 控制台/文档)
版本节奏minor/patch 高频(周级)季度 minor + 补丁,双线维护(1.16/1.17-rc)季度 minor + LTS 补丁双线(1.12/1.13)服务化,无版本节奏概念
语言TS/Python/Go/.NET/YAMLHCLHCLJSON/YAML 模板
生态与注册表Pulumi Registry(Provider 丰富)Terraform Registry 最大兼容 Terraform Provider 生态AWS 原生资源 + Registry(第三方)
状态后端Pulumi Cloud/自托管HCP Terraform/本地/对象存储自托管/合作后端AWS 托管(Stack 状态由服务管理)
测试能力通用语言测试框架 + Assert 类库原生 test 块(HCL 内)继承 Terraform 测试能力CloudFormation Guard 等

(stars/发版取自 shields.io 徽章接口与各仓库 Releases Atom 实查;许可信息据各仓库 LICENSE 与 pulumi.com 官方对比文档;CloudFormation 为 AWS 托管服务故无 stars/版本号。)

7.3 选型建议

追求工程化(类型、单测、复用抽象)与多语言团队体验的选 Pulumi,且其 Apache-2.0 许可对商业化集成最友好;已重度投资 HCL 模块与 Registry 生态的团队若接受 BUSL 许可可继续 Terraform(参见本站 《Terraform 常用 CLI 命令与工具详解》),介意许可风险的则以 OpenTofu 承接存量 HCL;单云深耕 AWS、希望服务化免运维且不介意模板表达力的,CloudFormation 仍是最低集成成本的官方选项(参见本站 《AWS CloudFormation 介绍与选型指南》)。

八、参考链接