Dec 23 2020

This blog’s paradox

Category: MiscellaneousIuliana @ 3:31

This blog is hosted on an EC2 AWS machine. Why? Because I wanted it so. I know there are cheaper options available. But I work in software development and I like having good control over my tools. Plus, I use that VM for … other things.

I’ve written in the past about the cost of the cloud. That is why the “Send me a Beer” button appeared. The least some of you that enjoy reading my thoughts can do, is make it up to me by providing inspiration liquid. :)

AWS prides itself with the fact that “less is more”, so the more of their services you use, the cheaper it is. Are you using S3 buckets to store data? The more GB you need, the price decreases. If you think about it, it is the same with any product, when you buy in bulk, the price per unit decreases. But there is a threshold. Below that threshold, you pay the normal price. When you have a simple application, as blog in AWS, you will probably not reach that threshold, since that threshold is quite high.

A blog is a pretty simple application. When I had to migrate my blog from wherever my ex hosted it (yes, I used to be that kind of girl that had a techie boyfriend that took care of the complicated stuff at some point in my life :D) to AWS, here is how I approached the whole process.

I knew I needed a VM to host a web server that will run WordPress. The service that gives me access to configure and manage a VM is called EC2.  Since I wanted my blog to be up all the time, I needed my VM to be reserved. So, I reserved it for three years. And then for another three years. I bought in bulk. And I pay roughly 180$ every three years.

Usage of this machine is payed for monthly, but the costs are negligible, about 2$ per month. It appears in my bill as “Amazon Elastic Compute Cloud“ and the rules by which that is calculated are way too complicated for me to try to understand them. As long as the costs are small, I can postpone doing the math for a while.

To be accessible from the internet, the machine needs a physical IP, or at least this is how I used to call it, when the server hosting this blog was under my desk. In AWS, I needed an Elastic IP.

The text on my blog is stored in a MySQL database. Since text is pretty small in size, I do not need to use RDS, the special Amazon service providing database storage. So, I don’t have to pay for that. The MySQL database is installed on my VM and I do a backup every month or so, that I keep on my personal computer and on my two external backup HDDs. I’ve been postponing automating the process via a cron job for so long, it will probably not happen until some data loss will incur and I will learn my damn lesson.

Since text is small in size, data transfer costs are quite small, currently about 1$ per month.

I obviously needed a domain. And because I am trying to be easily identifiable on the internet as Iuliana Cosmina, I got two: iuliana-cosmina.com & iulianacosmina.com. I bought them both from Amazon, each of them costs me 12$ per year.

I needed to map those domains to my VM. AWS provides that too. A service named Amazon Route 53 does that. I pay for this monthly, roughly 1.21$.

All requests to my domains must reach my Apache server. Also a while ago, HTTPs became mandatory over the internet, to protect the privacy and integrity of the exchanged data while in transit. So, I could compile Apache with HTTP 2.4.5 with SSL module, get an SSL Certificate and configure Apache to support SSL, or I could delegate to another AWS service called Elastic Load Balancing or ELB. ELB automatically distributes incoming application traffic across multiple targets, but since I only have one VM this function is pretty useless to me. However, ELB can be configured with a SSL certificate and can be used as a interface to support HTTPs requests. This is actually the most expensive part of my monthly bill, about 25$. And the more requests ELB receives, the more I pay.

And this is the reason why I wrote this entire entry. See, here’s my dilemma. I would like more people to read me, because I have the audacity to think quite highly of myself. :D I think my experiences and the way I view this world could be quite inspirational to a lot of people. But if they do, I will pay more monthly to keep the blog up. And then, probably I would be forced to add commercial entries, so the blog can pay for itself, right? And how could I make sure, whatever I will try to sell is worth buying? Plus, doing this would defeat the purpose of this blog. I made this blog to share my ideas and thoughts about the world, as they come, as they are. This blog is for sharing and exchanging ideas, not for selling … stuff.

So yeah, while other bloggers try to get as many readers as possible, and make money from their blogs, here I am, producing quality content(hopefully) and hoping that not many people will actually read it, so I can afford to keep this blog up.

And this is my blog’s paradox. Because my Amazon bill is roughly the same every month, I am sure there is a peculiar bunch of readers that keep returning. So, thank all of you that read me constantly and have to deal with my peculiar ideas, grammatical errors and occasional swearing. And I am grateful for those that do not return too, because they are the ones keeping my Amazon bill affordable. :D

While trying to explain yet another one of my peculiar ideas, you also got a suite of pretty simple steps on how to host a very simple application on AWS, if you ever were interested on doing that. So, you are very welcome darlings. :)

Stay safe, stay happy!

Tags: , , , ,

Leave a Reply