Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article compares Microsoft Azure and Amazon Web Services (AWS) core compute services.
For links to articles that compare other AWS and Azure services, see Azure for AWS professionals.
For a complete listing and charts that show the service mapping between AWS and Azure, see AWS to Azure services comparison.
For Azure architectures, see Browse Azure compute architectures.
Compare AWS and Azure compute services
The following tables describe and compare the core compute services on AWS and Azure.
Virtual machines and servers
Virtual machines (VMs) and servers help you deploy, manage, and maintain the OS and other software. You pay only for what you use and can change sizes as needed.
| AWS service | Azure service | Description |
|---|---|---|
| Amazon Lightsail | Azure App Service, Azure Virtual Machines (B-series) | Amazon Lightsail provides simplified, predictably priced VMs with preconfigured application stacks. Azure doesn't have a dedicated equivalent, but you can achieve similar outcomes by using Azure App Service for web apps or Azure Virtual Machines configured with B-series burstable sizes and Microsoft Marketplace images. |
| Amazon EC2 instance types | Azure Virtual Machines | AWS and Azure on-demand VMs bill per second used. AWS instance types and Azure VM sizes have similar categories, but the RAM, CPU, and storage capabilities differ. |
| AWS ParallelCluster | Azure CycleCloud | Create, manage, operate, and optimize high-performance computing (HPC) and large compute clusters of any scale. |
View all the VMs architectures.
Autoscaling
You can use autoscaling to automatically change the number of compute instances or resources based on defined metrics and thresholds.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Auto Scaling | Azure Virtual Machine Scale Sets, Azure App Service autoscaling | In Azure, you can use virtual machine scale sets to deploy and manage identical sets of VMs. The number of sets can automatically scale. You can use Azure App Service to automatically scale Azure App Service applications. |
View all the autoscaling architectures.
Resource optimization recommendations
Resource optimization services analyze usage telemetry and configuration to recommend rightsizing, idle-resource detection, and cost-saving actions.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Compute Optimizer | Azure Advisor (Cost category) | Both services analyze usage metrics to recommend rightsizing for compute resources. AWS Compute Optimizer focuses on Amazon EC2, Auto Scaling groups, Amazon EBS volumes, Lambda functions, Amazon ECS services on AWS Fargate, and Amazon Relational Database Service (Amazon RDS). Azure Advisor provides reliability, security, cost, operational, and performance recommendations across VMs, virtual machine scale sets, and most Azure services. |
| AWS Trusted Advisor | Azure Advisor | AWS Trusted Advisor provides checks across cost optimization, security, performance, fault tolerance, and service limits. Azure Advisor covers the same pillars in a single integrated experience. |
Batch processing
Batch processing runs large-scale parallel and HPC applications efficiently in the cloud.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Batch | Azure Batch | Azure Batch helps you manage compute-intensive work across a scalable collection of VMs. |
View all the batch processing architectures.
Storage
Several services provide different types of data storage for VM disks.
| AWS service | Azure service | Description |
|---|---|---|
| Amazon Elastic Block Store (Amazon EBS) | Azure managed disks | Azure managed disks provide persistent block-level storage for Azure VMs, similar to Amazon EBS for Amazon EC2. Azure provides the Standard HDD, Standard SSD, Premium SSD, Premium SSD v2, and Ultra Disk Storage performance tiers. These tiers correspond to Amazon EBS volume types such as gp2, gp3, io1, io2, st1, and sc1. |
| Amazon EC2 instance store | Azure VM local/temporary disks | Azure VM sizes that include a local disk (typically SKUs with a d in their name, such as the Ddsv5 or Ddsv6 series) provide local Non-Volatile Memory Express (NVMe) or solid-state drive (SSD) storage for low-latency temporary data, similar to Amazon EC2 instance store. Local storage is nonpersistent and is lost when the VM is deallocated or relocated. |
| Amazon EBS provisioned IOPS volumes (io1/io2, io2 Block Express, gp3) | Premium SSD, Premium SSD v2, and Ultra Disk Storage | Azure provides several high-performance managed disk tiers. Premium SSD v2 allows input/output operations per second (IOPS) and throughput to be configured independently from capacity, comparable to Amazon EBS gp3. Ultra Disk Storage provides submillisecond latency and high IOPS and throughput for the most demanding workloads, comparable to Amazon EBS io2 Block Express. For current limits, see Scalability and performance targets for VM disks in Azure. |
| Amazon Elastic File System (Amazon EFS) | Azure Files | Azure Files provides VMs with similar functionality to Amazon EFS. |
View all the storage architectures.
Containers and container orchestrators
Both AWS and Azure services provide containerized application deployment and orchestration.
| AWS service | Azure service | Description |
|---|---|---|
| Amazon Elastic Container Service (Amazon ECS) | Azure Container Apps | Amazon ECS is a container orchestration service for deploying and managing containerized applications. Azure Container Apps is a managed container platform that provides built-in scaling, service discovery, and traffic management. |
| AWS Fargate | Azure Container Instances, Azure Container Apps | AWS Fargate is a serverless compute engine that provides compute capacity for Amazon ECS tasks and Amazon EKS pods. Azure Container Instances provides on-demand serverless container compute and integrates with Azure Kubernetes Service (AKS) through virtual nodes. Azure Container Apps also provides serverless infrastructure management with higher-level orchestration features. |
| Amazon Elastic Container Registry (Amazon ECR) | Azure Container Registry | Container registries store Docker-formatted images and create all types of container deployments in the cloud. Both services support vulnerability scanning, geo-replication, and private networking. |
| Amazon Elastic Kubernetes Service (Amazon EKS) | Azure Kubernetes Service (AKS) | You can use Amazon EKS and Azure Kubernetes Service (AKS) to orchestrate Docker containerized application deployments with Kubernetes. Azure Kubernetes Service (AKS) provides two modes: AKS Standard for full control and customization and AKS Automatic for simplified, production-ready deployments with built-in best practices. For specifics about the hosting environment, see Container runtime configuration. |
| Amazon ECS Anywhere, Amazon EKS Anywhere | Azure Arc-enabled Kubernetes, AKS on Azure Arc | Both platforms support container orchestration services on-premises or in other cloud environments with centralized management from the respective cloud control planes. |
| Amazon ECS Service Connect | Built-in service discovery in Azure Container Apps, optionally with Dapr service invocation Istio add-on for AKS |
Service discovery and a service mesh for the managed container platform. ECS Service Connect is a feature of Amazon ECS. The Container Apps and AKS equivalents pair with their respective orchestrator (see the ECS and EKS rows above). |
Example container architectures
| Architecture | Description |
|---|---|
| Baseline architecture on Azure Kubernetes Service (AKS) | Deploy a baseline infrastructure that deploys an Azure Kubernetes Service (AKS) cluster with a focus on security. |
| Microservices architecture on Azure Kubernetes Service (AKS) | Deploy a microservices architecture on Azure Kubernetes Service (AKS). |
| Continuous integration and continuous delivery (CI/CD) pipeline for container-based workloads | Build a DevOps pipeline for a Node.js web app with Jenkins, Azure Container Registry, Azure Kubernetes Service (AKS), Azure Cosmos DB, and Grafana. |
View all the container architectures.
Platform as a service for web apps and APIs
You can use platform as a service (PaaS) services to deploy web apps, APIs, and mobile back ends without managing the underlying infrastructure.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Elastic Beanstalk | Azure App Service | Both services provide fully managed hosting for web apps and APIs in common runtimes like .NET, Java, Node.js, Python, PHP, and Ruby. They handle capacity provisioning, load balancing, autoscaling, and health monitoring. |
| AWS App Runner | Azure App Service (Linux container), Azure Container Apps | AWS App Runner automatically deploys containerized web apps and APIs from a source repository or container image. Azure provides equivalent capability through Azure App Service for Linux containers or Azure Container Apps for a container-first serverless experience. |
| AWS Amplify Hosting | Azure Static Web Apps | Managed hosting for modern front-end web apps with built-in CI/CD from Git, global distribution, and serverless API integration. |
Hybrid and edge compute
Hybrid and edge compute refers to services that extend cloud infrastructure and management to on-premises, edge, and customer-owned locations.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Outposts (rack and servers) | Azure Local (formerly Azure Stack HCI) | Both services deliver cloud-managed, on-premises infrastructure for low-latency workloads and data-residency requirements. Azure Local provides a validated hyperconverged infrastructure (HCI) platform managed through the Azure portal. |
| AWS Systems Manager for non-AWS resources | Azure Arc | Azure Arc extends Azure management and services, such as policy, monitoring, role-based access control (RBAC), and GitOps, to servers, Kubernetes clusters, and data services across on-premises, multicloud, and edge environments. |
| AWS Wavelength | Azure private multiaccess edge compute, Azure public multiaccess edge compute (Azure edge zones) | Edge compute for 5G and ultra-low-latency mobile workloads, available through partnerships with telecom carriers. |
| AWS Local Zones | Azure Edge Zone | Extensions of cloud regions that place compute and storage closer to users in metropolitan areas for latency-sensitive workloads. |
Serverless computing
You can use serverless compute to integrate systems and run back-end processes without server provisioning or maintenance.
| AWS service | Azure service | Description |
|---|---|---|
| AWS Lambda | Azure Functions | Both services provide serverless, event-driven code execution with pay-per-execution pricing and automatic scaling. |
| AWS Step Functions | Azure durable functions, Azure Logic Apps | Azure durable functions extend Azure Functions with stateful workflows written in code. Azure Logic Apps provides a low-code visual designer for workflow orchestration across software as a service (SaaS) and on-premises services. |
| AWS EventBridge | Azure Event Grid | Managed event routing for event-driven architectures. |
Example serverless architectures
| Architecture | Description |
|---|---|
| Cross-cloud scaling pattern | Learn how to improve cross-cloud scalability by using a solution architecture that includes Azure Stack. A step-by-step flowchart details instructions for implementation. |
View all the serverless architectures.
Migration
If you plan to migrate an AWS workload to Azure, see Migrate compute from Amazon Web Services to Azure, which includes some specific example migration scenarios that might align to your use case.
Contributors
Microsoft maintains this article. The following contributors wrote this article.
Principal author:
- Kobi Levi | Cloud Solution Architect
Other contributor:
- Juan Carlos Osorio | Cloud Solution Architect
To see nonpublic LinkedIn profiles, sign in to LinkedIn.
Next steps
- Quickstart: Create a Linux VM in the Azure portal
- Deploy a Node.js web app in Azure
- Get started with Azure Functions
- Quickstart: Create an Azure Kubernetes Service (AKS) Automatic cluster
- Quickstart: Deploy your first container app by using the Azure portal
- Azure Kubernetes Service (AKS) architecture design
Related resources
- Baseline architecture for an Azure Kubernetes Service (AKS) cluster
- Microservices architecture on Azure Kubernetes Service (AKS)
- Run a Linux VM on Azure
- Basic web application
- Baseline Azure App Service web application with zone redundancy
- Discover AWS instances
- Assess AWS instances
- Migrate AWS VMs
- Migrate AWS to managed disks
Container and Kubernetes architectures
- Baseline architecture for an Azure Kubernetes Service (AKS) cluster
- Microservices architecture on Azure Kubernetes Service (AKS)
- CI/CD pipeline for container-based workloads
VMs and web applications
- Run a Linux VM on Azure
- Basic web application
- Baseline Azure App Service web application with zone redundancy