When we say "the cloud," there are actually several clouds competing with each other. The three largest are AWS, Azure, and Google Cloud. Knowing them helps you understand the market and make good professional decisions. Let's look at them without marketing, with real data and differences.

The Big Three (the "hyperscalers")

Providers with data centers all over the world and a huge catalog of services are called hyperscalers. There are three dominant ones:

AWS — Amazon Web Services

  • Who: Amazon's cloud division.
  • Launch: 2006. It was the first to offer modern public cloud.
  • Position: market leader, the most mature, and with the broadest service catalog.
  • Fun fact: it was born because Amazon needed to manage its own infrastructure for the holidays and decided to rent out that surplus capacity to third parties.

Microsoft Azure

  • Who: Microsoft's cloud.
  • Launch: 2010.
  • Strength: integration with the Microsoft world (Windows Server, Active Directory, Office 365, .NET). Very present in large companies that were already using Microsoft software.

Google Cloud Platform (GCP)

  • Who: Google's cloud.
  • Launch: 2011 (as a general platform).
  • Strength: data, analytics, machine learning, and Kubernetes (which Google invented). Very popular with data and engineering teams.

Market Shares (order of magnitude)

The exact figures change every quarter, but the order has remained stable for years:

Provider Approximate Share Position
AWS ~30-32% 1st (leader)
Azure ~23-25% 2nd
Google Cloud ~10-12% 3rd
Others (Alibaba, Oracle, IBM…) The rest

Don't memorize the exact numbers, they change. The important thing is the pattern: AWS leads, Azure follows closely, and GCP is a solid third. Together they dominate most of the market.

Practical Differences (without getting technical)

Although all three do "the same" at a high level (servers, storage, databases…), they have distinct personalities:

Aspect AWS Azure GCP
Catalog breadth The largest Very broad Broad
Maturity The highest High High
Natural ecosystem Any company Microsoft companies Data companies/technical startups
Perceived strength Everything in general Corporate integration Data, AI, Kubernetes
Job demand The highest Very high High

A detail that confuses beginners: each provider calls the same thing something different. For example, a virtual server is called:

  • EC2 in AWS.
  • Virtual Machines in Azure.
  • Compute Engine in GCP.

The concept is identical; only the commercial name changes. We'll see this in subchapter 2.3.

Do you have to stick to just one?

Not necessarily. There are strategies:

  • Mono-cloud: use a single provider. Simpler, easier to master. This is the most common and recommended when starting out.
  • Multi-cloud: use several providers at once. Offers flexibility and avoids depending on just one, but multiplies complexity. Usually done by large organizations with specific reasons.

Here comes the concept of vendor lock-in: the more you use proprietary and exclusive services from a provider, the harder it will be to switch later. It's not inherently good or bad; it's just something to keep in mind. Tools like Terraform (which we'll see in Part III) help you avoid getting too tied down, because they let you manage multiple providers with a common language.

What you should remember

  • The three major cloud providers ("hyperscalers") are AWS, Azure, and Google Cloud.
  • AWS leads, Azure is second (strong in the Microsoft world), and GCP is third (strong in data and AI).
  • They do the same at a high level, but each calls their services differently and has its own personality.
  • You can use one (mono-cloud, recommended when starting) or several (multi-cloud, more complex).
  • Vendor lock-in is the dependency you create by using exclusive services from a provider.

In the next subchapter, we'll explain why in this book we'll learn AWS first.

Cloud, AWS & Terraform — From Zero to Expert

Chapter 1 · What is cloud computing

Chapter 2 · The cloud market and major providers

Chapter 3 · Regions, availability zones and edge

Chapter 4 · Compute: EC2

Chapter 5 · Storage: S3

Chapter 6 · Networking: VPC

Chapter 7 · Identity and access: IAM

Chapter 8 · Managed databases

Chapter 9 · Why Infrastructure as Code

Chapter 10 · HCL: the Terraform language

Chapter 11 · Providers and state

Chapter 12 · Your first real infrastructure in Terraform

Chapter 13 · Load balancing and auto scaling

Chapter 14 · Serverless with Lambda

Chapter 15 · Messaging and events

Chapter 16 · Content delivery and DNS

Chapter 17 · Containers on AWS

Chapter 18 · Modules: reuse and composition

Chapter 19 · Workspaces and environment management

Chapter 20 · Remote backends and locking

Chapter 21 · Infrastructure testing

Chapter 22 · Terraform in CI/CD

Chapter 23 · Defense in depth

Chapter 24 · Observability: logs, metrics and traces

Chapter 25 · Cost optimization

Chapter 26 · High availability and disaster recovery

Chapter 27 · AWS Well-Architected Framework

Chapter 28 · Serverless architectures at scale

Chapter 29 · Data platforms on AWS

Chapter 30 · Multi-account and landing zones

Chapter 31 · Platform Engineering and Internal Developer Platform

Chapter 32 · Relevant AWS certifications

Chapter 33 · Projects to consolidate what you've learned

Chapter 34 · Resources and community

© Copyright 2024. All rights reserved