62 lines
2.5 KiB
Plaintext
62 lines
2.5 KiB
Plaintext
Riju :: $169.46
|
|
CloudWatch :: $34.80
|
|
EC2 :: $107.01
|
|
Data Transfer :: $0.68
|
|
EBS Snapshot :: $5.45
|
|
EBS Volume :: $46.40
|
|
EBS Volume :: $46.40
|
|
gp2 :: $11.61
|
|
gp3 :: $34.78
|
|
Instance :: $54.48
|
|
t2.small :: $0.04
|
|
t3 :: $0.08
|
|
t3.2xlarge :: $29.80
|
|
t3.medium :: $14.77
|
|
t3.small :: $9.78
|
|
ECR :: $7.31
|
|
Data Transfer :: $3.29
|
|
Storage :: $4.02
|
|
ELB :: $20.05
|
|
Data Transfer :: $0.31
|
|
LCUs :: $0.06
|
|
Load Balancer :: $19.68
|
|
S3 :: $0.29
|
|
|
|
COMMENTARY: This month was a disaster because AWS makes it really hard
|
|
to understand what exactly is going to run up your bill.
|
|
|
|
The most egregious thing here is CloudWatch. It turns out that if you
|
|
follow the official documentation for how to set up a CloudWatch alarm
|
|
on disk space for your EC2 instance, the default configuration has SSM
|
|
Agent creating a metric for *every* filesystem mounted on your
|
|
instance, which is actually one or more per Docker container, so I
|
|
actually had like multiple tens of thousands of metrics being shipped
|
|
to CloudWatch, which is expensive. I fixed this for August, bringing
|
|
CloudWatch costs to be effectively zero.
|
|
|
|
We have some charges for a t3.medium, this is before I scaled the
|
|
server down to t3.small. The charges for that instance are also higher
|
|
than you'd expect because I was originally running two of them before
|
|
scaling it down for a singleton because I realized I was out of my
|
|
depth.
|
|
|
|
We had a couple gp2 volumes (more expensive) before I migrated
|
|
everything to gp3. EBS costs are generally quite high here because not
|
|
only did I previously have two instances serving traffic, but I also
|
|
had a dev server. Each of those three instances had to have the full
|
|
256 GB data volume to store language images, which was ridiculously
|
|
expensive. I'm planning on keeping Riju as a singleton for a while
|
|
because of this issue, and relying on vertical scaling until that
|
|
becomes no longer feasible. The persistent dev server will be replaced
|
|
by a transient CI instance that can be spun up to do large rebuild
|
|
operations, mitigating EBS costs.
|
|
|
|
t3.2xlarge is the dev server, this is mostly just tough luck since I
|
|
did need to spend a lot of time building and rebuilding language
|
|
images and those hours add up. Hopefully that won't be as much of an
|
|
issue going forward now that the infrastructure is more stable and we
|
|
can hopefully get away without a dev server in general. But
|
|
fundamentally you can't do builds on your local laptop without a
|
|
symmetric Internet plan because you need to upload like 100 GB for a
|
|
full rebuild.
|