This document provides an overview of Pulumi, an infrastructure as code platform. It discusses what Pulumi is, the programming languages supported like TypeScript, JavaScript, Python, Go and .NET, and the cloud providers supported like AWS, Azure, GCP etc. It also provides a comparison of Pulumi with other infrastructure as code tools like Terraform, CloudFormation and ARM templates in terms of factors like supported languages, state management, stack management etc. Finally, it outlines the steps to get started with Pulumi including installing it, logging into Azure and creating a new Pulumi project.
1 of 12
Download to read offline
More Related Content
Infrastructure as "Code" with Pulumi
1. Infrastructure as Code with
Pulumi
Venura Athukorala [@venura9]
Practice Lead - Azure @AC3
5. What is Pulumi?
Modern infrastructure as code platform.
CLI, runtime, libraries, and a hosted service
TypeScript, JavaScript, Python, Go,
and .NET, and their native tools, libraries,
and package managers.
6. What programming languages?
Node.js - JavaScript, TypeScript, or any other Node.js compatible
language
Python - Python 3.6 or greater
.NET Core - C#, F#, and Visual Basic on .NET Core 3.1 or greater
Go - statically compiled Go binaries
8. What about others?
Frequency of
Update
Community
Infrastructure
Size
Tooling
E.g., Error,
Logging,
Extras
State
Management
Stack
Management
Modularisatio
n
Language
ARM Highest Highest
Small-Medium
Medium Yes No Moderate JSON
Terraform Medium High Any High Yes Yes Easy HCL
API Highest Low Small Low Custom Custom Easy Any
SDK High Low Any Low Custom Custom Easy Many
Pulumi Medium Low Any High Yes Yes Easy Many
CLI Highest High Small Medium No Custom Easy PS/Shell
9. Getting Started
# Install on macos
$ brew install pulumi
# Install on linux
$ curl -fsSL https://get.pulumi.com | sh
# Install Python
$ brew install python
# Pulumi uses `az` when not using a Service Principal
$ az login
$ az account set --subscription venura9
https://www.pulumi.com/docs/get-started/
# New Project
$ pulumi new azure-python