12

I have around 5 websites hosted in a VPS server, and for some reason I bought another VPS server recently just to host the emails for those 5 websites. I would like to know the pros and cons of having a separate email server isolated from its web host.

I initially did it, to avoid having multiple software's in one server running. So, the likes of PostFix, Dovecot ... would not share resources and slow down mysqld, php-fpm ... but since I am a noob, I have no knowledge to back this assumption.

samayo
  • 277
  • 3
  • 5
  • 17
  • 2
    Separation of duties in servers is a good idea in principle. As you said, less chances that one service brings down the other, easier to maintain, more secure etc. – LinuxDevOps Apr 21 '14 at 17:18
  • Glad I made the right choice, obliviously. – samayo Apr 21 '14 at 17:28
  • I agree completely with the concept of separating services where possible, but having a *sole* server for anything is a bad idea. You should always have redundancy where possible. Personally I would make sure I had at least one backup MX that can queue up my email if the main server is down. At the very least you could hop onto that server and read the messages straight from the queue during an emergency. –  Apr 21 '14 at 18:45
  • 1
    Agreed with @yoonix - you should also have a secondary MX provider. Many DNS and/or hosting providers offer this, either as part of your package or for a fee. It's very worthwhile, particularly if it's entirely independent of any of your existing infrastructure. – mfinni Apr 21 '14 at 20:38

1 Answers1

13

Separate servers (either physical or virtual) for different functions is an EXCELLENT idea.

If a server dies or has issues, it only affects that one service. If they are all on the same server, something that crashes the server takes out everything.

It also means you can schedule updates more easily, since doing the updates only affects one service at a time. And when you decide to upgrade the OS one day, you don't have to worry about it breaking several different services. You may even run into a situation where a website needs an old version of PHP or MySQL to run properly, but your email services need a newer version. Separate servers has you covered there.

It also makes restoring from backups much easier. If email and websites are on one server, you have to worry about restoring the data for both at the same time. And possibly losing some of the newest email and website changes that haven't been backed up yet. If they are separate, you only have to worry about one of those being rolled back. Especially useful if it's the webserver you are restoring - reapplying a few website changes isn't too bad. Having to delete the last 23 hours of emails because the website broke is.

The downside is you now have more servers to manage, and to pay for. But in most cases eliminating the risk of an issue taking out EVERYTHING is worth it.

Grant
  • 17,859
  • 14
  • 72
  • 103