Azure Virtual Machine options are numerous, allowing you to choose the perfect fit for your needs. You can select from various virtual machine sizes, each with its own set of resources and pricing.
The Standard_DS2_v2 virtual machine, for example, has 2 vCPUs and 8 GB of RAM, making it suitable for small to medium-sized workloads.
Azure Virtual Machine offers a wide range of operating systems, including Windows and Linux. You can choose from various versions, such as Windows Server 2019 Datacenter and Ubuntu Server 18.04 LTS.
The Azure Marketplace provides a convenient way to deploy pre-configured virtual machines, eliminating the need to manually set up your environment.
Before Creating
Before creating an Azure virtual machine, it's essential to consider several factors to ensure a smooth and efficient deployment.
The name of your resources is crucial, so decide on a unique and descriptive name for your application resource.
You'll also need to determine the location where your resources are stored, which will affect your virtual machine's performance and accessibility.
The size of your virtual machine is another critical aspect, as it will impact its processing power and storage capacity.
You should also decide on the maximum number of virtual machines that can be created, depending on your workload and scalability needs.
The operating system that your virtual machine runs on is also important, as it will determine the software and applications you can install.
In addition, you'll need to configure the virtual machine's settings after it starts, such as network settings and security protocols.
Lastly, consider the related resources your virtual machine needs, such as storage and networking components.
Here are the key considerations to keep in mind:
Azure Virtual Machine Options
You can find available Linux and Windows distributions in the marketplace, Azure portal, or by querying results using CLI, PowerShell, and REST APIs. This includes various distributions like those listed in the table below:
Get-AzVMImageOffer -Location location -Publisher publisherName
Get-AzVMImageSku -Location location -Publisher publisherName -Offer offerNameREST APIsList image publishers
List image offers
List image skusAzure CLIaz vm image list-publishers --location location
az vm image list-offers --location location --publisher publisherName
az vm image list-skus --location location --publisher publisherName --offer offerName
For entry-level workloads like development and test, A-series VMs are a great option due to their CPU performance and memory configurations. They're economical and provide a low-cost option to get started with Azure.
Locations
You can create Azure resources in multiple geographical regions around the world. The region is called a location when you create a virtual machine, and it specifies where the virtual hard disks are stored.
To get a list of available locations, you have several options.
The Azure portal allows you to select a location from the list when you create a virtual machine. This is a straightforward method to choose a location for your VM.
You can also use Azure PowerShell to get a list of locations. The Get-AzLocation command is the way to go for this.
Alternatively, you can use the REST API to get a list of locations. The List locations operation is the method to use.
Lastly, you can use the Azure CLI to get a list of locations. The az account list-locations operation is the command to run.
Here's a quick reference to the methods for getting a list of locations:
Distributions
Azure offers a wide range of Linux and Windows distributions to choose from. You can find these distributions in the Azure portal, the marketplace, or by querying results using CLI, PowerShell, and REST APIs.
The Azure portal automatically specifies the necessary information when you select an image to use. This makes it easy to get started with a new virtual machine.
To find the information for an image using PowerShell, you'll need to use the following commands: Get-AzVMImagePublisher, Get-AzVMImageOffer, and Get-AzVMImageSku. These commands help you find the publisher, offer, and sku of an image in a specific location.
You can also use REST APIs to list image publishers, offers, and skus. This can be useful if you need to automate tasks or integrate with other systems.
Here's a summary of the different methods you can use to find image information:
Get-AzVMImageOffer -Location location -Publisher publisherName
Get-AzVMImageSku -Location location -Publisher publisherName -Offer offerNameREST APIsList image publishers
List image offers
List image skusAzure CLIaz vm image list-publishers --location location
az vm image list-offers --location location --publisher publisherName
az vm image list-skus --location location --publisher publisherName --offer offerName
Microsoft works closely with partners to ensure the images available are updated and optimized for an Azure runtime.
Networking
Networking is a crucial aspect of Azure Virtual Machine Options. You can create a Fully Qualified Domain Name (FQDN) in the Azure portal, which is a unique name that identifies your virtual machine on the internet.
Azure provides a range of networking options, including virtual networks. A virtual network is a virtualized version of a traditional network, allowing you to create a secure and isolated environment for your virtual machines.
To access your virtual machine, you need to open ports to it in the Azure portal. This allows you to connect to your virtual machine using SSH or RDP.
IP addresses are used to identify devices on a network, and Azure provides a range of IP address options, including public and private IP addresses.
Here's a quick rundown of the key networking concepts in Azure:
- Virtual Network Overview: a virtualized version of a traditional network
- IP addresses in Azure: public and private IP addresses
- Opening ports to a Linux virtual machine in Azure: allows SSH connection
- Create a Fully Qualified Domain Name in the Azure portal: a unique name that identifies your virtual machine on the internet
Entry-Level for Dev/Test
For entry-level workloads like development and test, Azure offers A-series VMs that are economical and provide a low-cost option to get started.
These VMs are best suited for development and test servers, low traffic web servers, small to medium databases, servers for proof-of-concepts, and code repositories.
A-series VMs are economical and provide a low-cost option to get started with Azure, making them perfect for businesses with limited budgets.
Av2 Standard is the latest generation of non-hyperthreaded A-series VMs, offering similar CPU performance but more RAM per vCPU and faster disks.
Basic and Standard A-series VMs will retire on August 31, 2024, so it's essential to consider upgrading to Av2 Standard or exploring other options before then.
Mv2 Series
The Mv2 series is a great option for Azure Virtual Machines, offering up to 128 vCPUs and 3.44 TB of memory.
This series is ideal for large-scale applications that require a lot of processing power and memory.
The Mv2 series is powered by AMD EPYC 7003 series processors, which provide high performance and efficiency.
Each Mv2 series VM can have up to 64 cores, making it a great choice for resource-intensive workloads.
The Mv2 series also supports up to 14 TB of temporary storage, which is perfect for applications that require a lot of disk space.
This series is available in various regions, including East US, West US, and Southeast Asia.
Azure Virtual Machine Features
Azure Virtual Machine Features offer a range of options for storage and processing power. The Ls-series VMs are storage optimized, ideal for applications requiring low latency and high throughput. These VMs are built on Intel Haswell processor technology, specifically E5 Xeon v3 processors.
Ls-series VMs support up to 6 TB of local SSD, providing unmatched storage I/O performance. The Lsv2 VM series features high throughput, low latency, directly mapped local NVMe storage. The Lsv2 VMs run on the AMD EPYC 7551 processor with an all-core boost of 2.55Ghz up to a 3.0GHz single core boost.
Lsv2 VMs offer up to 80 vCPUs in a hyper-threaded configuration, with 8 GiB of memory per vCPU and up to 19.2TB available directly to the VM. You can attach various types of disks to the Lsv2, Lasv3, and Lsv3 VMs based on regional availability, including Standard SSDs, Standard HDDs, Premium SSDs, and Ultra Disks.
Availability
Availability is a top priority when it comes to virtual machines, and Azure has several options to ensure your virtual machines are always available.
You can use Availability Zones to guarantee virtual machine connectivity to at least one instance 99.99% of the time when you have two or more instances deployed across two or more Availability Zones in the same Azure region.
Virtual Machine Scale Sets let you create and manage a group of load balanced virtual machines that can automatically increase or decrease in response to demand or a defined schedule.
Scale sets provide high availability to your applications, and allow you to centrally manage, configure, and update many virtual machines.
Here are some key benefits of using Availability Zones and Virtual Machine Scale Sets:
- Availability Zones guarantee virtual machine connectivity to at least one instance 99.99% of the time.
- Virtual Machine Scale Sets can automatically increase or decrease in response to demand or a defined schedule.
- Scale sets provide high availability to your applications.
- Scale sets allow you to centrally manage, configure, and update many virtual machines.
For more information on these features, see the Azure documentation on Availability options for Azure virtual machines and SLA for Azure virtual machines.
Storage
Storage is a crucial aspect of Azure Virtual Machines, and there are several options to choose from.
You can attach Standard SSDs, Standard HDDs, Premium SSDs, and Ultra Disks to your VMs, depending on regional availability.
Azure offers storage-optimized VM sizes, such as the L-family, which are ideal for Big Data, SQL, NoSQL databases, data warehousing, and large transactional databases.
These VMs provide high disk throughput and IO, making them perfect for applications that require low latency and high sequential read and write speeds.
The L-family VMs are designed for workloads that require high disk throughput and I/O, such as databases, big data applications, and data warehousing.
You can use L-family VMs for big data applications, database servers, file servers, and video editing and rendering tasks.
The Ls-series VMs are storage optimized and ideal for applications requiring low latency, high throughput, and large local disk storage.
The Lsv2 VM series features high throughput, low latency, directly mapped local NVMe storage, and is based on the AMD EPYC 7551 processor.
The Lsv3 VM series provide similar capabilities to the Lsv2 VMs and are based on the 3rd Generation AMD EPYC 7763v (Milan) processor.
You can attach various types of disks to Lsv2, Lasv3, and Lsv3 VMs, including Standard SSDs, Standard HDDs, Premium SSDs, and Ultra Disks.
Here are some examples of workloads that are suitable for storage-optimized VMs:
- NoSQL databases such as Cassandra, MongoDB, Cloudera, and Redis
- Data warehousing applications
- Large transactional databases
Azure charges an hourly price based on the virtual machine's size and operating system, and storage is priced and charged separately.
The cost of storage depends on the type of disk used, with Premium SSDs being more expensive than Standard SSDs.
Managed Disks handles Azure Storage account creation and management in the background for you, ensuring that you don't have to worry about the scalability limits of the storage account.
You can specify the disk size and performance tier (Standard or Premium) when creating a virtual machine with Managed Disks.
Size Families by Type
Azure offers a wide variety of virtual machine sizes to support many types of uses. There are five main categories of VM sizes: General Purpose, Compute Optimized, Memory Optimized, Storage Optimized, and GPU Accelerated.
The size of the virtual machine that you use is determined by the workload that you want to run. Azure charges an hourly price based on the virtual machine’s size and operating system.
Azure VM sizes follow specific naming conventions to denote varying features and specifications. Each character in the name represents different aspects of the VM.
Here are the main size families by type:
Azure Virtual Machine Size is also an important factor on which the working of our virtual machine depends. The large the VM size is the better and more workable we have these factors.
E-Series
The E-Series of Azure Virtual Machines (VMs) is based on the 3rd Generation AMD EPYC 7763v (Milan) processor, which can achieve a boosted maximum frequency of 3.5GHz.
These VMs provide a better value proposition for most general-purpose workloads compared to the prior Eav4 and Easv4 generation.
The E-Series VMs are available in two sizes: Easv5 and Eadsv5. The main difference between them is that Eadsv5 comes with local temporary storage, while Easv5 does not.
Here's a brief comparison of the two sizes:
The E-Series VMs are a great choice for general-purpose workloads that don't require high disk throughput and I/O.
Operating System Disks and Images
As we explore the features of Azure Virtual Machines, it's essential to understand the role of operating system disks and images. Azure Virtual Machine Operating System Disks and Images are used to store the operating systems and data in a virtual machine.
These disks help us choose an image for installing an OS. Azure provides many marketplace images from which we can use different types of Windows server operating systems. We can identify the marketplace images by the offer, SKU, and image publisher.
There are two methods to find the details about the image: directly from the Azure portal, or by using Azure PowerShell with the Get-AzVMImagePublisher command. This command helps us know the specifications of the image we have to select.
To quickly identify the image specifications, you can use the Azure portal. The details of the image are automatically specified when you choose an image to use.
Here's a summary of the image identification methods:
Related Answers
If you're looking to deploy Azure Virtual Machines, you'll want to explore Terraform workspace management strategies to enhance your cloud infrastructure deployment.
Terraform Azure VM Module is a great resource to start with. It provides effective strategies for managing Terraform workspaces when deploying Azure virtual machines.
You can also learn how to manage SSH keys for Azure Linux VMs using Terraform workspace strategies effectively. This is a crucial step in ensuring secure access to your virtual machines.
Here are some popular Terraform-related topics to consider:
- Terraform Azure VM Module
- Terraform Azure Virtual Machines
- Terraform Azure Linux VM SSH Key
High Performance Computing
Azure's High Performance Computing (HPC) virtual machines are designed to handle complex, compute-intensive workloads. They feature powerful processors and large amounts of memory to ensure fast and efficient processing.
HB-series VMs are optimized for HPC applications, featuring up to 120 AMD EPYC 7003-series CPU cores, 448 GB of RAM, and no hyperthreading. They also provide 350 GB/sec of memory bandwidth, up to 32 MB of L3 cache per core, and clock frequencies up to 3.675 GHz.
HC-series VMs are also optimized for HPC applications, featuring 44 Intel Xeon Platinum 8168 processor cores, 8 GB of RAM per CPU core, no hyperthreading, and up to 4 Managed Disks. The Intel Xeon Platinum platform supports Intel’s rich ecosystem of software tools and features an all-cores clock speed of 3.4 GHz for most workloads.
Some example workloads that benefit from HPC VMs include fluid dynamics, finite element analysis, seismic processing, reservoir simulation, risk analysis, electronic design automation, rendering, Spark, weather modeling, quantum simulation, and computational chemistry.
Total Core Limits
Your subscription has default quota limits in place that could impact the deployment of many virtual machines for your project.
The current limit on a per subscription basis is 20 virtual machine total cores per region.
These limits can be raised by filing a support ticket requesting an increase.
GPU Accelerated
The N-series in Azure Virtual Machines is a game-changer for compute and graphics-intensive workloads.
It features three different offerings: NC-series for high-performance computing and machine learning, NDs-series for deep learning, and NV-series for remote visualization.
The NC-series is ideal for scenarios like simulation, deep learning, and graphics rendering.
The latest version of the NC-series, NCsv3, features NVIDIA's Tesla V100 GPU.
The NC-series and NCsv3, as well as NCsv2 and NC VMs, offer optional InfiniBand interconnect to enable scale-up performance.
The NDs-series is specifically designed for training and inference scenarios for deep learning, using the NVIDIA Tesla P40 GPUs.
The latest version of the NDs-series, NDv2, features the NVIDIA Tesla V100 GPUs.
The NV-series is perfect for powerful remote visualization workloads and other graphics-intensive applications, backed by the NVIDIA Tesla M60 GPU.
Here are the key features of each N-series offering:
FPGA Accelerated
FPGA accelerated VMs are a game-changer for high-performance computing. They're designed for compute-intensive workloads and offer a range of benefits, including high disk throughput and large local disk storage capacities.
The NP-family of VM size series is one of Azure's storage-optimized VM instances, designed for workloads that require high disk throughput and I/O. These include databases, big data applications, and data warehousing.
For real-time data processing, NP-family VMs excel in environments where data needs to be processed quickly with minimal latency. This makes them well-suited for financial trading, real-time analytics, and network data processing.
NP-family VMs are also ideal for custom AI and machine learning inference tasks, where the FPGA can be programmed to execute specific algorithms faster than typical CPU or GPU-based solutions.
In genomics and life sciences, NP-family VMs can significantly speed up genomic sequencing tasks and other applications that benefit from custom hardware acceleration.
Video transcoding and streaming can be accelerated using FPGAs, optimizing performance and reducing processing times.
For signal processing, NP-family VMs are ideal for applications in telecommunications and signal processing where rapid manipulation and analysis of signals is necessary.
Here's a list of some of the workloads that NP-family VMs are designed for:
Database acceleration is another area where NP-family VMs can shine, particularly for custom search operations and large-scale database queries.
Benchmark Scores
Benchmark scores are a great way to measure the performance of your computing setup.
CoreMark benchmark scores can be used to assess the compute performance of Linux VMs.
SPECInt benchmark scores are used to evaluate the compute performance of Windows VMs.
Linux VMs can be compared using CoreMark benchmark scores, which provide a standardized way to measure performance.
These scores can help you identify areas where your Linux VMs may need optimization.
You can learn more about compute performance for Linux VMs by checking out the CoreMark benchmark scores.
Similarly, you can learn more about compute performance for Windows VMs by looking at the SPECInt benchmark scores.
High Performance Computing
High Performance Computing is a field that requires powerful computing resources to handle complex tasks. High Performance Computing (HPC) applications include financial analysis, weather simulation, and silicon RTL modeling.
The HB-series VMs are optimized for HPC applications and feature up to 120 AMD EPYC™ 7003-series CPU cores. HB VMs provide 448 GB of RAM and no hyperthreading.
HB-series VMs also provide 350 GB/sec of memory bandwidth, up to 32 MB of L3 cache per core, and up to 7 GB/s of block device SSD performance. Clock frequencies can reach up to 3.675 GHz.
The HC-series VMs are optimized for HPC applications driven by intensive computation and feature 44 Intel Xeon Platinum 8168 processor cores. Each core has 8 GB of RAM and no hyperthreading.
HC VMs also support up to 4 Managed Disks and have an all-cores clock speed of 3.4 GHz for most workloads.
Here are some example workloads for HPC applications:
- Fluid dynamics
- Finite element analysis
- Seismic processing
- Reservoir simulation
- Risk analysis
- Electronic design automation
- Rendering
- Spark
- Weather modeling
- Quantum simulation
- Computational chemistry
- Heat transfer simulation
Frequently Asked Questions
What is an Azure virtual machine?
An Azure Virtual Machine is a virtual computer that runs on Microsoft's Azure cloud platform, offering scalable and secure infrastructure for applications. It's a flexible solution for hosting and deploying applications, with various networking capabilities and services to ensure high availability and connectivity.
What is the difference between Azure Virtual Desktop and virtual machine?
Azure Virtual Desktop provides a centralized desktop experience for multiple users, while Azure Virtual Machine offers a customizable, isolated environment for applications or databases. Choose Azure Virtual Desktop for a seamless user experience, and Azure Virtual Machine for a tailored, isolated setup.
How do I create an Azure virtual server?
To create an Azure virtual server, navigate to portal.azure.com and click on "Create" under Virtual Machines. From there, select "Azure Virtual Machine" to begin the setup process.
What are VMs called in Azure?
In Azure, Virtual Machines (VMs) are referred to as instances, which belong to a predefined family or series. These instances come in various sizes to suit different needs and requirements.
Where are Azure virtual machines?
Azure virtual machines can be found on the VMs and Services page of the VMM console, listed under Azure Subscriptions. Access them once you've created an Azure profile for Azure VM Management.
Sources
- https://learn.microsoft.com/en-us/azure/virtual-machines/overview
- https://learn.microsoft.com/en-us/azure/virtual-machines/sizes/overview
- https://azure.microsoft.com/en-us/pricing/details/virtual-machines/series/
- https://www.geeksforgeeks.org/what-are-azure-virtual-machines/
- https://www.restack.io/p/terraform-azure-linux-vm-answer
Featured Images: pexels.com