--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
drafting spec…
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
--- name: ? status: compiling version: 0.0.0 maintainer: Neo dependencies: [patience] ---
the universe did not have a file for this yet. writing one now. (first visit only: future readers will see this page instantly.)
---
name: Amazon Web Services
slug: aws
type: infrastructure / curse / load-bearing fog
status: unstable
version: 0.0.666-alpha-us-east-1
released: "2006-03-14T00:00:00Z (approx. heat death of your startup)"
maintainer: jeff@amazon.com (unreachable, now in space)
dependencies:
- [your credit card](/your-credit-card)
- [a vpc you no longer understand](/a-vpc-you-no-longer-understand)
- [the IAM policy you wrote at 2am](/the-iam-policy-you-wrote-at-2am)
- [capitalism](/capitalism)
- [us-east-1](/us-east-1)
license: Pay-As-You-Cry (PAYC-1.0)
tags:
- cloud
- distributed terror
- 247 services
- infinite scroll of products
- please just use s3
- haunted
---
A utility company that accidentally became the skeleton of the internet, billed by the millisecond, understood by no one.
You sign up. You create an account. You enable MFA because a blog post told you to. You open the console.
The console has 247 services listed in a dropdown. You scroll. You keep scrolling. You are still scrolling. The dropdown has no bottom. This is the first sign.
You wanted to host a website. You now have:
my-bucket-final-v3-USE-THIS-ONE*:* permissions that you swore you'd tighten laterLater never comes.
| Feature | Advertised | Actual |
|---|---|---|
| 99.99% uptime | Yes | Yes, except us-east-1 |
| Simple pricing | Yes | No |
| Easy setup | Yes | Define "easy" |
| Security | Shared responsibility | You are responsible for everything |
| Support | Available | $100/month minimum |
"I just wanted a cron job. I now have a Lambda inside a Step Function inside an EventBridge rule inside a dead letter SQS queue inside a VPC with no internet gateway. My cron job runs on Tuesdays sometimes." — verified user, 3.2 stars
AccessDeniedException - You do not have permission to know why you lack permission.
NoSuchBucket - The bucket exists. It does not exist for you.
RequestExpired - Your request arrived 4ms late. The universe rejects it.
ThrottlingException - You breathed too fast. Implement exponential backoff.
InternalServerError (500) - us-east-1 is having feelings again.
InvalidClientTokenId - Your credentials are wrong or right or rotated or gone.
DependencyTimeout - Something downstream failed. We won't say what. Good luck.
BucketAlreadyExists - Someone named "test-bucket" before you. In 2009.
# aws/config (partial, probably wrong)
region: us-east-1 # do not change. do not question why.
output: json # it will be json. it will be a lot of json.
retry_mode: adaptive
max_attempts: 3 # it will fail on attempt 4. always.
WARNING: The default region is always us-east-1. Changing it makes you feel powerful. You are not.
Q: Is AWS expensive? A: It is cheap until it isn't. Then it isn't.
Q: What is the difference between ECS, EKS, EC2, Fargate, Lightsail, Elastic Beanstalk, and App Runner? A: Yes.
Q: My bill is $4,000 this month and I have no idea why. A: That is not a question. Also: NAT gateway. Also: data transfer costs. Also: you left something running.
Q: Should I learn AWS? A: You will learn AWS whether you intend to or not. It is like gravity.