TechCloud was my first personal project. Offering shared hosting instances for web & game server hosting. Utilizing both dedicated servers and VPS supplied by OVH & Hetzner running on Ubuntu 16.04. Primarily hosting Minecraft game servers and web servers.
I used cPanel/WHM to manage shared web hosting instances and an open source game panel: pterodactyl panel for management of game servers.
For my website, I used WHMCS to automate server provisioning, answer/manage support tickets and sell my products. At its peak I had just over 50 customers primarily based in North America.
- Productivity Suite: Figma, Trello & Discord
- Software Infrastructure: WHMCS, WHM, cPanel & Pterodactyl Panel
- Server Infrastructure: OVH, Hetzner & Nocix (Dedicated Servers & VPS)
- Scripting: BASH
- Payment Gateways: Stripe & PayPal
In addition to learning the fundamentals of web servers, server management, security and GDPR, I gained first-hand experience in technical support.
Utilizing WHMCS’ built in support ticketing system and knowledgebase. I created documentation for end-users and setup escalation Service Level Agreements and priorities.
This was an extremely fun project which ultimately had to come to an end when I started university, as it became evident that balancing my academic studies and my commitments to this project would not be feasible.
What I learnt
- IT Support Ticketing (WHMCS)
- Ubuntu 16.04 & CentOS 7 Operating Systems
- Docker: For both VPS and dedicated servers, optimizing resource utilization and ensuring seamless scalability for gaming applications.
- Utilizing API: PayPal, Stripe & WHM
Project Timeline
Project Inception
After searching for a Minecraft Server hosting provider, I was put off by how expensive shared hosting instances were in comparison to virtual private servers provided by the likes of OVH.
I opted for a VPS and installed an open-source panel; Pterodactyl Panel to manage my servers. I created a small private server for my friends and realised how easy it was to set up multiple instances on one node.
I then decided to give hosting servers a go and began my first major IT project.
Jul, 2017
Project Research
I researched this project by looking at the infrastructure of other small-scale hosting companies. Noticing they typically used WHMCS for billing, customer support and service provisioning.
Then a separate panel for managing game servers, I discovered an open-source panel: Pterodactyl Panel which was compatible with WHMCS via a module for auto-provisioning.
During this time I realised it made more economic sense to purchase a web-server reseller hosting plan which included a WHMCS license and access to WHM for provisioning web servers with cPanel. This was the same price as an individual WHMCS license, which meant I could sell web server hosting alongside game server hosting.
Leading me to realise I could sell Domain names & SSL certificates, creating combo packages with free web hosting when a domain was purchased alongside a game server, giving me a competitive edge.
I realised at this stage that this was going to be a big project and reminded myself the purpose of this exercise was not to create a hosting company but to interact with the public whilst doing something fun. My pricing reflected this.
Aug, 2017
Website Creation
My Website comprised of two areas. A static HTML/CSS/JavaScript front-end and a clieant area utilizing WHMCS, I managed my website using cPanel.
The above images showcase the primary areas of my site.
cPanel: The control panel used to manage my website, including its web files, SSL Certificates, DNS & backups.
WHMCS: Billing Panel where I respond to support tickets, manage clients, track sales & manage products/services.
Pterodactyl Panel: The control panel used to manage the game servers, provision customer accounts, resources and manage nodes.
Aug, 2017
Marketing
For marketing I showcased my hosting site on MCMarket and various Minecraft discord servers and forums. I even used a video explaining web hosting which you can watch here.
Though I found the best method for acquiring more clients was word-of-mouth.
Sep, 2017
Website Infrastructure
The main website was hosted in Bristol, UK. Though the majority of my users were located in North America. So I utilized Cloudflare’s CDN to increase performance whilst utilizing Brotli compression.
Additionally, Cloudflare’s always on feature enabled cached versions of the site to be live on the CDN when the main site was down. Furthermore, the strict SSL protocol ensured users only connected via a secure connection.
This focus on performance inspired confidence in my users in my ability to provide reliable, available and secure hosting.
Sep, 2017
Server Infrastructure
My server infrastructure comprised of a mixture of Dedicated Servers and Virtual Private Servers.
For Pterodactyl Panel, I had two VPS setup, one hosted in Canada for NA and another hosted in France for the EU. These panels then had nodes attached for shared hosting instances, which were Dedicated Servers.
OVH supplied my virtual private servers for NA and EU as well as the bulk of my dedicated servers for NA and France. Hetzner supplied servers located in the UK & Germany, whilst NOCIX provided cheap dedicated servers used for budget managed dedicated server plans which came with Pterodactyl Panel installed.
All of these servers were running on Ubuntu 16.04
Sep, 2017
Support Expansion
By March 2018 the workload of provisioning servers, updating panels, OS and Mod packages and providing customer support; both technical and billing proved to be too much for one person learning as they go.
I expanded my team to 4 members, heavily utilizing discord with a Bot ticketing system in conjunction with WHMCS support ticketing system. The Discord server included a section dubbed “Community Support” greatly reducing the workload.
My staff team made up my close friends who shared an interest in server management and video games. This was one of the greatest times of my late childhood.
Mar, 2018
Project Closure
As I left home for university, I understood this project had to end. As balancing my studies alongside my obligations to this project would have proved too much.
I migrated the users I had left to other hosting providers and closed up for good.
Though this project was never for profit. I think this was the most influential project I have ever undertaken and is what ultimately spearheaded my interest into cloud computing.
Project Reflection
If I were to undertake this project once more, I would try again exclusively utilizing AWS infrastructure.
Utilizing their EC2 instances and taking advantage of their vast coverage and supporting services to provide an enhanced user experience.