Pulumi 是一个开源工具,用于配置和管理云基础架构和资源。

概览

Pulumi是一个基础架构即代码的自动化工具,它是构建在Terraform工具基础上的。它与Terraform的重要区别在于:您可以用熟悉的编程语言来编写声明式配置,而不需要额外学习厂商特定的模板语言来写配置。Pulumi是个可扩展的工具,通过 Provider 来支持新的基础架构。Pulumi提供了客户端,能够让您轻松定义、预览和部署云基础结构。您可以使用Pulumi来创建、修改、删除ECS、VPC、RDS、SLB等多种资源。Pulumi还提供一个可视化的控制台,通过控制台您可以方便的查看每个堆栈的配置版本历史、活动、关联资源和设置。

阿里云是国内第一家与 Pulumi 集成的云厂商,pulumi-alicloud目前覆盖计、存储、网络、负载均衡、CDN、容器服务、中间件、访问控制、数据库等41款产品,已经满足了大量大客户的自动化上云需求。Pulumi基于Terraform构建,因此具备和Terraform一样多的云资源支持。

Pulumi支持的语言:TypeScript、JavaScript、Python、Go(预览版)、C#(预览版)。

优势

  • 混合云支持

    开发运维人员可以使用同一个工具来管理、部署云资源、OpenStack资源及Kubernetes集群。

  • 多语言支持

    支持常用的编程语言来编写声明式配置,而不需要额外学习厂商特定的模板语言。

  • 声明式编程

    Pulumi以可重复、可预测的方式定义、预配和配置资源,减少因人为因素导致的部署和管理错误。声明式编程让您只需要关心最终的资源状态和无需关心过程。能够使用同一配置,创建相同的环境。

  • 基础架构即代码(Infrastructure as Code)

    可以用代码来管理维护资源。允许保存基础设施状态,从而使您能够跟踪对系统(基础设施即代码)中不同组件所做的更改,并与其他人共享这些配置 。

  • 利用成熟的IDE支持开发

    Pulumi采用成熟的编程语言来进行配置,因此您能更方便地利用IDE的语法高亮、语法检测和测试功能。

  • 统一工具

    您可以使用同一种语言工具进行资源的自动化管理和应用开发。例如您可以通过Pulumi Python 创建数据库资源,并用Python语言创建数据库表等操作。