RFC1918 was forced upon the cloud providers only because there weren't enough IPv4 addresses to go around.
If Amazon had started in 1980, they would have simply allocated a /8 for each region and be done with it. No NAT, no gateways, no address translation of any sort. Everything routing to everything else natively.
I also wonder if they're pushing this for lock-in reasons. If they make everyone architect in this way then people need more load balancers, NAT gateways, firewalls, and other complexity, and they charge for all that.
I have noticed that the cloud vendors seem to drag their feet on trivial free features that would undermine the need to use some expensive offering that auto scales to match your credit rating.
For example, Azure Network Security Groups (NSGs) have some glaring omissions that were ignored for years, but have just recently been oh-so-conveniently resolved by Azure Firewall. The old NSGs were free, the firewall costs money, and they also charge per gigabyte of data transferred through it!
Of course, they're recommending that all customers should immediately "uplift" their network architectures to plumb everything through a central firewall.
Big cloud figured out how to monetize the tendency of most programmers to overthink, over-architect, and over-engineer everything. It's as if the authors of the old design patterns book found a way to charge for every singleton and factory. Brilliant!
Bucking this trend and building an "Internet-style architecture" is a competitive advantage. You can save multiple orders of magnitude on your hosting and bandwidth costs.
They had addresses to go around, but not any more.
AWS has 24 regions. If each one had a single /8 block -- which would be the bare-minimum at their scale these days -- they would eat up 10% of all available IPv4 addresses!
Keep in mind that they would still have to "carve up" that /8 for each customer, which is still an overly tight fit. Either everyone gets a bunch of small random pools of addresses (eww), or they have to restrict each region to a small number of customers (bad for business), or provide each customer with tiny subnets (too restrictive for the big fish customers).
With IPv6 this just vanishes. They could have multiple address ranges for each Region, AZ, CDN POP, or whatever. They could have ranges for each service, making firewall rules trivial. They could give each customer a huge prefix that they could still carve up into many subnets.
RFC1918 was forced upon the cloud providers only because there weren't enough IPv4 addresses to go around.
If Amazon had started in 1980, they would have simply allocated a /8 for each region and be done with it. No NAT, no gateways, no address translation of any sort. Everything routing to everything else natively.