Posted in Information Technology

AWS vs Azure vs Google Cloud

The competition for leadership in the public cloud computing is fierce three-way race: AWS vs. Azure vs. Google. Clearly, for infrastructure as a service (IaaS) and platform as a service (PaaS), Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP) hold a commanding position among the many cloud companies.

Service-to-Service Comparison

Enterprises typically look to CSPs for three levels of service: Infrastructure as a Service (IaaS, i.e., outsourcing of self-service compute-storage capacity); Platform as a Service (PaaS, i.e., complete environments for developing, deploying, and managing web apps); and secure, performant hosting of Software as a Service (SaaS) apps. Keeping these levels in mind, we have chosen to compare:

  1. Storage (IaaS)
  2. Compute (IaaS)
  3. Management Tools (IaaS, PaaS, SaaS)

Note:   We won’t be comparing pricing since it is quite difficult to achieve apples-to-apples comparisons without a very detailed use case. Once you have determined your organization’s CSP requirements, you can use the CSP price calculators to check if there are significant cost differences: AWSAzureGCP. And we’ve written more about AWS EBS pricing here.

Storage

The CSPs offer a wide range of object, block, and file storage services for both primary and secondary storage use cases. You will find that object storage is well suited to handling massive quantities of unstructured data (images, videos, and so on), while block storage provides better performance for structured transactional data. Storage tiers offer varying levels of accessibility and latency to cost-effectively meet the needs of both active (hot) and inactive (cold) data. In terms of differentiators, Azure takes the lead in managed DR and backup services. When it comes to managing hybrid architectures, AWS and Azure have built-in services, while GCP relies on partners.

AWS Azure GCP
Object storage Amazon Simple Storage Services (Amazon S3): The very first AWS public service Blob Storage Google Cloud Storage
VM disk storage Amazon Elastic Block Store (Amazon EBS) Azure Managed Disks Persistent Disk (both HDD and SSD)
File storage Amazon Elastic File System (Amazon EFS) Azure Files Cloud Filestore
Disaster recovery Provides a set of cloud-based disaster recovery services Site Recovery (DRaaS) Does not provide out-of-the-box DR or backup services
Backup Amazon S3 is often used for secondary backup storage Backup (built into the Azure platform)
Archive storage ●      S3 One Zone-Infrequent Access(introduced April 2018) ●      Amazon Glacier, with data querying capabilities Azure Long-Term Storage: ●      Cool Blob Storage (slightly lower availability than Hot) ●      Archive Storage (offline blob storage) Archival Cloud Storage: ●    Nearline (low frequency) ●    Coldline (lowest frequency)
Bulk data transfer ●      AWS Import/Export Disk: Shipping disk drives ●      AWS Snowball(device-based) ●      AWS SnowMobile: Exabyte-scale data transfer via ruggedized shipping container ●      Azure Import/Export service:Shipping disk drives ●      Azure Data Box Disk service (in preview) Storage Transfer Service
Hybrid support AWS Storage Gateway: Provides a managed virtual tape infrastructure across hybrid environments StorSimple: Enterprise-grade hybrid cloud storage Relies on partners such as Egnyte

Compute

The CSPs offer a range of predefined instance types that define, for each virtual server launched, the type of CPU (or GPU) processor, the number of vCPU or vGPU cores, RAM, and local temporary storage. The instance type determines compute and I/O speeds and other performance parameters, allowing you to optimize price/performance according to different workload requirements. It should be noted that GCP, in addition to its predefined VM types, also offers Custom Machine Types. The CSPs offer pay-as-you-go PaaS options that automatically handle the deployment, scaling, and balancing of web applications and services developed in leading frameworks such as Java, Node.js, PHP, Python, Ruby, and more. AWS offers auto scaling at no additional charge, based on scaling plans that you define for all the relevant resources used by the application. Azure offers auto scaling per app, or as part of platforms that manage groups of apps or groups of virtual machines. GCP offers auto scaling only within the context of its Managed Instance Groups platform. Both AWS and Azure offer services that let you create a virtual private server in a few clicks, but GCP does not yet offer this capability.

AWS Azure GCP
Virtual servers Amazon Elastic Compute Cloud(Amazon EC2) Virtual Machines(Windows or Linux servers) Compute Engine
PaaS Elastic Beanstalk Azure Cloud Services Google App Engine
Scaling AWS Auto Scaling ●      Azure Autoscale(per app or for a group of apps as part of an Azure App Service plan) ●      Virtual Machine Scale Sets (for hyperscale, high-availability apps) Through managed instance groups
Virtual private server support Lightsail   Virtual machine (VM) image N/A

Management Tools

As you may have already experienced, managing and orchestrating cloud resources across multiple business units and complex infrastructures can be a daunting challenge. All three CSPs offer platforms and services to streamline and provide visibility into the organization, configuration, provisioning, deployment, and monitoring of cloud resources. These offerings range from predefined deployment templates and catalogs of approved services to centralized access control. However, AWS and Azure seem to have invested more heavily in this area than GCP, and AWS even offers outsourced managed services (AWS Managed Services).

AWS Azure GCP
Server manage- ment services AWS Systems Manager: Visibility & automation across groups of resources Azure Operational Insights: Operational data analysis, SaaS N/A
Cloud deployment templates AWS CloudFormation: Text files for modeling & provisioning cloud resources Azure Resource Manager: Deploy & control access to categorized resources; includes templates (Azure Building Blocks) ●    Resource Manager: Group, organize, & control access to resources; track & manage projects ●    Cloud Deployment Manager: Template- driven deployment
Logging & monitoring ●    Amazon CloudWatch: Real-time visibility into apps & infrastructure ●    AWS CloudTrail: Logging & monitoring of AWS accounts Azure Monitor,including Log Analytics(data collection & proactive insights) and Application Insights(Application Performance Management platform) Google StackDriver, including monitoring, logging, error reporting, tracing, & debugging
Server automation ●    AWS OpsWorksManaged instances of Chef & Puppet ●    AWS Service CatalogCatalog of IT services approved for AWS ●    Azure Resource Manager (see above) ●    Azure Automation ●    VM extensions: Post-deployment configuration & automation N/A

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s