We recommend using Azure Native.
Web Server Component Using Azure Virtual Machine
This example provisions a configurable number of Linux web servers in an Azure Virtual Machine, and returns the
resulting public IP addresses. This example uses a reusable Pulumi component to simplify the creation of new virtual machines. By
defining a WebServer class, we can hide many details (see here for its definition).
Prerequisites
- Node.js
- Download and install the Pulumi CLI
- Connect Pulumi with your Azure account (if your
azCLI is configured, no further changes are required)
Running the App
Create a new stack:
$ pulumi stack init devConfigure the deployment. The username and password here will be used to configure the Virtual Machine. The password must adhere to the Azure restrictions on VM passwords.
$ pulumi config set azure:location westus # any valid Azure region will do $ pulumi config set username webmaster $ pulumi config set password <your-password> --secret $ pulumi config set count 5 # optional -- will default to 2 if left outNote that
--secretensures your password is encrypted safely.Login to Azure CLI (you will be prompted to do this during deployment if you forget this step):
$ az loginRun
pulumi upto preview and deploy changes:$ pulumi up Previewing changes: ... Performing changes: ... info: 15 changes performed: + 15 resources created Update duration: 4m27sCheck the resulting IP addresses:
$ pulumi stack output ipAddresses [ 40.112.181.239, ..., 40.112.181.240 ]