Knowledge.ToString()

Recommended Droplet Size For Hosting Multiple Websites

Recently I migrated my 4 Websites from shared hosting to Digital Ocean droplet. From past couple of months, I have been running 4 WordPress Websites (individual instances) and 1 .Net Core 3.0 instance along with email service on this droplet and it is working out fine.

Website Usage

Here is a list of need for hosting multiple Websites

  • 4 individual instances of WordPress
  • 1 instance of .Net Core 3.0 application
  • 1 Webmin hosting panel
  • Couple of thousands of sessions per day for static pages (WordPress caching plugin) across all sites
  • Couple of thousands of API requests per day across all sites
  • Approximately 100 emails (incoming + outgoing)

Needed Software

If you are new to Linux Administration or don’t want to configure Web server, Database server, email server etc, you need to install a control panel. I have found Webmin to be the ideal control panel that gives you everything you need for Linux administration

As a part of Webmin installation, you will install following components.

  • Apache Web Server
  • PHP
  • MySQL Database Server
  • Postfix, Dovecot for email
  • RoundCube Webmail application
  • Let’s Encrypt SSL

Recommended Droplet Specification

On Digital Ocean, we can always increase the droplet resource (CPU, memory) but cannot reduce the resource. So out of caution, I started with minimum droplet specification.

  • 1 CPU
  • 1 GB RAM (with 2 GB swap)
  • 25 GB SSD
  • Ubuntu 18.04 64 bit

Even though Digital Ocean recommends 32 bit version for Ubuntu 18.04 if RAM is less than 4 GB but I need 64 bit for .Net Core 3.0. I am under impression that certain program might only support 64 bit so being future proof, I chose 64 bit. This way, I can upgrade and migrate to powerful server if need arises.

Is 1 CPU enough?

From past couple of months 1 CPU is more than enough to handle everything that I need for hosting all my Websites. In WordPress, I use caching plugins to generate static pages. It dramatically lowers CPU usage.

Is 1 GB RAM enough?

Yes and No. 1GB physical RAM is good enough but you must enable and use swap in order to get the performance you need. At the time of installing Webmin, it asks for enabling swap and generally it creates a swap for 270 MB. I increased swap to 1 GB and one time MySQL gave out of memory error. I have increased swap to 2 GB. Without swap, 1 GB RAM is not good enough.

Conclusion

1 CPU, 1 GB RAM droplet is good enough for hosting couple of Websites. Cost is less than shared hosting and power you get is more than what you need. Along with Webmin, you can easily handle day to day maintenance without any Linux administration experience.

Share

Comments

5 responses to “Recommended Droplet Size For Hosting Multiple Websites”

  1. Digital Ocean Recovery Console Stuck in Caps Mode | Vishal Monpara

    […] am using Digital Ocean for hosting couple of Website including .Net Core Websites. For certain maintenance, I use Digital Ocean recovery console to […]

  2. Multiple Fail2ban.sqlite3 Files Consuming Too Much Disk Space | Vishal Monpara

    […] have a basic droplet with 1GB RAM, 1 CPU, 25 GB hard disk to host multiple site and it is a good enough configuration for my need. But high disk space usage may cause some issues […]

  3. Atulmaharaj Avatar
    Atulmaharaj

    I’m considering DO too for my blog. Average traffic, and as per other sites, reviews I’ve read, they say that the 1GB RAM droplet is enough. Though I’m a programmer, not too much into the Unix environment. How easy is it migrating ? And since this is unmanaged VPS instance, any tool that you suggest I need for it, or I would be able to it. And thanks for sharing this short yet insightful post.

    1. Vishal Monpara Avatar
      Vishal Monpara

      Hello Atul,

      You may use Webmin for Linux and Web administration. You may also want to go through the Webmin installation best practice for hosting multiple websites on Digital Ocean.

      Regards,
      Vishal Monpara

  4. How to Install Webmin to Host Multiple Websites | Vishal Monpara

    […] 1 CPU, 1GB RAM droplet is good enough for my need. […]

Leave a Reply

Your email address will not be published. Required fields are marked *