- 1. Objective
- 2. Virtual Servers
- 3. Automatic scalings
- 4. Container service
1. ObjectiveThis article discusses the main differences and similarities between Azure and Alibaba Cloud compute services. It covers the following products:
|Virtual Servers||Azure Virtual Machines||Elastic Compute Service (ECS)|
|Block Storage||General and Premium Disk Storage||ECS Disks|
|Automatic Scaling||Virtual Machine Scale Sets||Auto Scaling|
|Container Service||Azure Container Service (ACS) Azure Container Service for Kubernetes (AKS)||Container Service|
|High Performance Computing||Azure Virtual Machines N-Series, no native PaaS Offering but 3rd party vendor offerings on Azure Marketplace||Elastic High Performance Computing (E-HPC), Super Computing Cluster|
2. Virtual ServersBoth Azure Virtual Machines and Alibaba Cloud ECS provide virtual servers for cloud computing. Virtual servers, or virtual machines, provide IaaS services to users. Alibaba Cloud and Azure servers share similar terminologies and concepts, as shown in the following table:
|Virtual Servers||Azure Virtual Machine||Alibaba Cloud ECS|
|Ephemeral Compute||Low-priority VMs||Spot Instance|
|Firewall||Network Security Group||Security Group|
|Automatic Instance Scaling||Virtual Machine Scale Sets||Auto Scaling|
|Persistent Block Storage||Managed Disks (Premium SSD, Standard SSD and PremiumStandard HDD)||Cloud Disk (Basic, Ultra, SSD)|
|Local Mount Disk||Temporary Storage||Local Disk|
|Shared Block Storage||N/A||Shared Block Storage|
|Disk Volume Backup||Snapshot||Snapshot|
|VM Import||VHD, VHDX, VMDK||RAW, VHD|
|High Availability||Availability Set, Availability Zone, Paired Regions||Availability Zone|
|Third Party Integrations||VM Extensions||N/A|
2.1 Instance Family Types
Alibaba Cloud and Azure employ the same method to categorize VM instances by specifications, types, and application scenarios. Each family is composed of different instance type configurations.
Alibaba Cloud ECS provides multiple types of instance families and configurations to meet business requirements and performance requirements in different scenarios. The following table lists Azure Virtual Machine instance types and Alibaba Cloud ECS instance families.
|Scenario||Azure Instance Type||Alibaba Cloud ECS Instance Family|
|General Purpose Burstable||B||t5|
|General Purpose||Dv2, Dsv2, Dv3, Dsv3, Av2, A0-A7||g5, sn1, sn1ne, sn2, sn2e|
|Compute optimized||F, Fs, Fsv2||c4, c5, cm4, ce4, hfc5|
|Memory optimized||Esv3, Ev3, M, Gs, G||r5, re4, se1, se1ne|
|Big Data||Ls||i1, i2|
|Storage optimized||Ls||i1, i2|
|GPU||NV, NC, NCv2, NCv3, ND||ga1, gn4, gn5|
|HPC||H, A8-11 (no bare metal)||ebmg5, sccg5, scch5|
2.2 Instance ImagesInstance image refers to the running environment template for virtual machine instances. Azure Virtual Machines and Alibaba Cloud ECS use images to create instances. Azure instance images are referred to as VM Images, and Alibaba Cloud instance images are simply referred to as Images.
When an instance is created, Alibaba Cloud ECS provides four types of images for users to choose from: public images, cloud marketplace images, user shared images, and custom images.Azure provides officially endorsed images, custom images, and Azure marketplace images.
Public images are system images provided by Alibaba Cloud ECS for users, which are similar to the Azure officially endorsed images.
Cloud marketplace images are provided by third-party ISV partners on the Alibaba Cloud Marketplace. Beside the OS, cloud marketplace images may be preinstalled with other software and services.
Like the custom images of Azure, Alibaba Cloud custom images are created by users based on snapshots or the current state of an instance. Custom images can be shared to other specific Alibaba Cloud users by using the image sharing function of Alibaba Cloud ECS.
Like custom images in Azure, ECS images are a type of regional resource. Custom images (and shared images) can be used only in the same region. To use the images in a different region, you need to replicate them to that region first.
Azure supports the use of uploaded images. An on premises image can be created and uploaded into Azure storage to be used to create one or more virtual machines based on that image.
|Basic (Magnetic)||Standard Disk||Basic Cloud Disk|
|Intermediate (Hybrid)||N/A||Ultra Cloud Disk|
|Advanced (I/O optimized)||Premium Disk||SSD Cloud Disk|
Additionally, Alibaba Cloud also provides two types of local block storage for instances, which feature low access latency, high random IOPS, and high I/O throughput: local NVMe SSD and SATA HDD.
In Azure, except for the A0-7 and Av2 instance types (which have magnetic local disks) every VM type has SSD-based storage as local disk. The size and number are not configurable, however, and depend on the instance type.
Instance pricing model: Alibaba Cloud ECS provides pay-as-you-go and yearly/monthly subscription options. The pay-as-you-go model is similar to that of Azure Virtual Machines, which can be either pay-as-you-go or can draw from an upfront payment called an Azure Pre-commitment as part of a larger enterprise agreement or through self-service what is called Azure Reserved Instances (ARIs). The yearly/monthly purchase is a payment and settlement method used in the prepaid model, and similar to Azure Reserved Instances. Note though, that ARIs only offer yearly (1 and 3 years) reservations which can be canceled but incur a cancelation fee. Alibaba Cloud Subscriptions, in contrast, can be bought on a flexible monthly (or yearly) cadence.
As for ephemeral compute, Alibaba Cloud ECS currently provides billing models for spot instances, meaning that un-used compute capacity is traded on a spot market. Azure does not provide a spot market but rather provides Azure low-priority VMs which allows you to purchase Azure VMs at a fixed discount which is not subject to supply and demand on a spot market.
3. Virtual ServersAuto Scaling is a feature that automatically adjusts computing resources based on the volume of user requests. Both Azure and Alibaba Cloud support automatic scaling. On Azure that feature is called Azure Virtual Machine Scale Sets, on Alibaba Cloud it is called Auto Scaling. Auto Scaling enables users to set automatic scaling policies according to actual business circumstances and add/release ECS instance resources to meet business requirements.
Both Alibaba Cloud Auto Scaling and Azure Virtual Machine Scale Sets support the following scaling modes:
- Custom mode: Add/release compute instances, such as Azure VMs and Alibaba Cloud ECS, manually.
- Scheduled mode: Users configure periodic tasks to add/release compute instances according to a schedule.
- Dynamic mode: Auto Scaling is performed automatically by monitoring compute resources. Azure adds/releases VMs instances based on the different metric sources that it can consume from host-based metrics, storage accounts, Service Bus Queues, and Applications Insights, while Alibaba Cloud adds/releases ECS instances based on the CloudMonitor scaling policy.
|Function Feature||Azure Virtual Machine Scale Sets||Alibaba Cloud Auto Scaling|
|Vertical Scaling||Supported||Not Supported|
|Launch Ephemeral Instances||Supported||Not supported yet (no spot instance integration)|
Azure Virtual Machine Scale Sets are available for use at no additional fees. However, the usage of the Azure VM instances that are part of the scale set, and any other services that store or provide metrics data such as Application Insights are billed separately. Similar to Azure, Alibaba Cloud Auto Scaling is offered to customers at no extra cost. You will only be charged for the usage of the ECS instances automatically created or manually added to Auto Scaling.
4. Container ServiceAzure Container Service (ACS and AKS for Kubernetes) and Alibaba Cloud Container Service are container orchestration services that simplify container management and application scaling. Both services replace the need to install, operate, and scale your container cluster infrastructure. ACS supports three different orchestrators (Docker Swarm, DC/OS, and Kubernetes). The master nodes are not, however, fully managed by ACS. In contrast, AKS only supports Kubernetes. Its master nodes are fully managed by Azure, though.
Alibaba Cloud Container Service enables you to efficiently run and manage Docker applications on a distributed cluster of Alibaba Cloud ECS instances. Being a fully-managed service, Container Service helps you to focus on your applications rather than managing container infrastructure. With Alibaba Cloud Container Service, users can deploy, manage, and expand Docker containers with ease. Alibaba Cloud Container Service supports App lifecycle management using Docker containers, provides a variety of App publishing methods and continuous delivery capabilities, supports microservice architecture, and integrates with Server Load Balancer, Security Group, Cloud Disk, and Resource Access Management.
Like Azure Container Registry, Alibaba Cloud Container Service provides an image warehouse (Container registry) hosted by Alibaba Cloud, allowing access to official Alibaba Cloud images and those of Docker, and enables accelerated access to official Docker images.Azure ACS/AKS and Alibaba Cloud Container Service have a similar pricing model in that you do not pay for the service itself but only pay for the resources being consumed. With Azure Container Instances, AKS provides an additional fully managed option, though, to spawn containers without the need to provision a virtual machine similar to AWS Fargate. A similar feature (Serverless Kubernetes) is currently in beta on Alibaba Cloud and will be announced soon.
Just like Azure, Alibaba Cloud Container Service is free of charge. Resources used in collaboration with Container Server (including Server Load Balancer and ECS) are charged separately. ECS instances or Server Load Balancer instances automatically created from the Container Service or manually added are billed by their respective prices.
Azure Service Fabric is Microsoft’s proprietary container orchestration technology allowing customers to build microservices applications that can scale up as necessary. Azure Service Fabric allows both Linux and Windows container based implementations. Service Fabric can be used to build microservices based applications that are packaged in containers or other executables and scripts.