Virtual Machine Scale Sets (VMSS)
Scenario: Application in Need of Resources
- Consider we have an hypothetical ticketing (movie) which is called QTbooking
- This application has 3 tier architecute
- Now due to some holiday season, the load on your application is increased, i.e. number of users have increased, to solve this we would like to scale horizontal
- How to do this if the application is hosted in azure in an effective way?
- Lets look at possibilities assuming the servers are virtual machines, we have two possibilities for managing computing
- Virtual Machines
- Virtual Machine Scale sets
- To make the access to external world easier, we would use Load balancer and there are two possibilities
- Azure Load Balancer
- Azure Application Gateway
If we decide to Scale using Virtual Machines
- To add additional azure vm => Manually add it
- When to add addition azure vm => Manully monitor it
- Add additional vms to loadbalancer => Manual integration with Loadbalancer or Application Gateway
- High Availability => Manually create Availability Set or choose Availability zone options
If we decide to Scale using Virtual Machine Scale Sets
- To add additional azure vms => Automatically by creating a configuration
- When to add addition azure vm => Automatically by creating a configuration
- Adding additional vms to loadbalancer => Automatic integration with Loadbalancer or Application Gateway
- Hight Avaliability => Automatic distributiion is enabled by configuration
what is required for VMSS
- Generally all the machines in VMSS will have the same VM Image and Same VM size
- VMSS becomes the backend for Loadbalancer or Application Gateway
Steps
- Create an VM Image: Refer Here
- Create a Load Balancer
- Create a VMSS
LoadBalancer
- Create a Loadbalancer from portal
- Select
- Resource Group
- Name
- Region
- Type => Public
- SKU => Basic
- Public IpAddress => Create New with Static
- For the cli options to create loadbalancer
- For powershell options