Introduction to Azure Virtual Machines
Hi there 👋🏾. I'm a software engineer that enjoys building stuff and talking about them. I also tinker a bit with hardware and robotics using Arduino and ROS.
Introduction
Virtual Machines (VMs) on Azure are computers that can be run on-demand without buying physical hardware. They form the basis of Infrastructure as a Service (IaaS). IaaS means that you rent hardware and do whatever you like with it in the lease period.
The basic concept behind VMs is that the OS is configured within network rules and memory. The configured OS is then used to host a server like Apache, a database like MySQL, or an analytics engine such as Apache Spark.

VM costs
Azure VMs are priced based on storage and compute resources consumed. Other costs arise from OS licensing. A Windows VM will cost more because of its license while a Linux VM will cost less because Linux is Free and Open Source (FOSS).
Where is my data? 🧐
Azure stores disk data in Azure Storage Accounts. Storage Accounts are billed based on the amount of data they contain.
Infrastructure as Code (IaC)
ARM, Terraform, Ansible, Jenkins, and Cloud-init
Availability
Availability only applies when there are > 2 VMs in an availability set. If a disaster occurs in a data center, availability ensures that services don't go down. The more availability a VM has, the more fault tolerance is experienced.
Availability can be scoped by data center, region, or global
Backups
Azure offers a native backup service that fits into the Azure stack and gives you goodies such as 1. 2. 3.
Conclusion
Virtual Machines are the most fundamental layer of cloud computing. They offer ways to configure applications to fit scenarios such as
Data processing
Shared server as a service
Machine Learning Model training
Knowing how to configure and administer VMs is fundamental to System Admins and to some extent, DevOps engineers and software developers.
