[Homelab] I save 100$USD shifting from a cloud server to home-server

Not a clickbait but I did save 100$USD++ from utilising my old PC to be a home-server. Previously, I subscribed to a small VPS (Virtual Private Server) in Digital Ocean for the use of freelancing and exploring some new stacks/technology. The pricing starts at 5$ USD and then increases to 15$ USD per month.
Pricing & Security
With 15$ USD, I had access to a server with 2 vCPU and 2GB RAM (too small). It works amazingly to deploy small-scale systems written using Python3 (Django stack). With Digital Ocean VPS, we are provided with a public IP (IPv4 & IPv6) for free. The public IP enables the developer to easily map the DNS (including subdomain) with the server. Hence, a lot of freelance work and portfolio projects can be shown/accessed publicly through the Internet.
Public IP is great but it comes with a cost, which is security. The more public and easier the server can be accessed (ie: SSH @public IP), the higher risk of the server being targeted for hacking.
There is one time I received an email from Digital Ocean Team stating that my server had been used for an attack. Somehow a person managed to gain access to the VPS server and conducted abuse/intrusion to another party.
To address the security issue, one needs to strengthen the server Firewall. There are some open-source software that we can use to monitor traffic in order to detect anomalies. But, I'm too lazy to set it up. I just reset my root password and reboot the server to refresh the public IP.
Cloud is expensive?
When it comes to cloud servers, I'm not fond of pricing and the need to deal with security. AWS/GCP/Azure is exceptional because EC2/server comes with a pre-configured firewall.
What triggers me to explore?
I come across Network Chuck videos on how he set up his home-lab using his old PC. The video is short and it was truly easy to do it.
He uses Red Hat as Operating System (OS) and Cloud Flare as DNS. The benefit of using Red Hat is it is an enterprise standard and comes with Long Term Support. Yea, obviously it needs to be stable and has long support for business users to use as they paid for the OS. CloudFlare on the other hand provides free security protection such as DDoS, which resolve my problem with security just now.
So, I straight away set up my old PC as a server using the Network Chuck's tutorial as a guide. I use a different OS which is Ubuntu but stick to CloudFlare as my DNS.
My old desktop spec is Intel i3 6th Gen (2-cores) and 16RAM DDR4. If I'm matching the spec with the Digital Ocean pricing table, the cost saving is around 100$ USD.
** 1 core is equivalent to 1 vCPU. Read here
Everything is cloud now, are you going backwards?
For my budget, yes. With a low monthly budget, I can't be spending hundred Ringgit to host something that not generating any revenue. I'm just using the server for fun.
If any company has a big budget when it comes to system infrastructure, it is always good to invest in Cloud Architecture rather than on-premise. Having systems run in Cloud provide more reliability and fewer developers needed to maintain the physical server.
If Data Governance is an issue, on-prem is always a reliable choice. Usually, Financial Institutions and government entities rely on-prem infrastructure.
Any cons?
There is always a trade-off.
Number 1 is DR (Disaster Recovery) or backups. I haven't designed my backup mechanism and haven't tested my DR. It is always good to have a backup and mechanism to restart from the previous check point.
What did I use the home-lab for?
I deployed Airflow to schedule some automation. MinIO is S3-clone-like but open source and can run on the local server using Docker. FileCloud is OneDrive-clone-like but runs on a local server.
With the home lab, I've more flexibility to explore and deploy.
Subscribe to my newsletter
Read articles from Amin Hakim Sazali directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
