azure logo
Azure Classic v5.38.0, Mar 21 23

Azure VM Scale Sets | C#

View Code Deploy

This example deploys Scale Set of Linux web servers with autoscaling and starts a HTTP server on it. A Load Balancer is connected in order to balance among VMs.

Deploying the App

To deploy your infrastructure, follow the below steps.


  1. Install Pulumi
  2. Install .NET Core 3.0+


  1. Login to Azure CLI (you will be prompted to do this during deployment if you forget this step):

    $ az login
  2. Set an appropriate Azure location like:

    $ pulumi config set azure:location westus
  3. Run pulumi up to preview and deploy the changes:

  4. Run pulumi up to preview and deploy changes:

    $ pulumi up
    Previewing changes:
    Performing changes:
    7 resources created
  5. Get the IP address of the newly-created instance from the stack’s outputs:

    $ pulumi stack output IpAddress
  6. Check to see that your server is now running:

    $ curl http://$(pulumi stack output IpAddress)
    Hello, World By <HOSTNAME>!
  7. From there, feel free to experiment. Simply making edits and running pulumi up will incrementally update your stack.

  8. Once you’ve finished experimenting, tear down your stack’s resources by destroying and removing it:

    $ pulumi destroy --yes
    $ pulumi stack rm --yes