Server config

OptiBiz1

Active Member
I am looking into our future server config need and I am currently looking at dual servers with a load balancer (it's actually primarily the failover that is of interest), but disk is a big question mark.

In our architecture we have one "control hub" that controls the network of instances and provides extensive (!) services to resellers of the hosted services + acts as a node that provides a query interface for external systems (which we will also provide). This "control hub" server needs to be a pretty badass server.
Each instance of the services as such (based on MW + our 53 add-ons + infrastructural components) is probably subject for redundancy as well.

Perhaps this config:

Xeon D 1540 (or possibly D 1520)
128 GB RAM (or possibly 64 GB RAM - any ideas on this one?)
2 * 2 TB RAID1 + 2 * 480 GB SSD RAID1

(I am trying to avoid separate storage. Yes, it would make the architecture more redundant and "clean", but it would also bring up the cost considerably)

Delivery servers will be some of the leading services out there, that is, we will not host any PMTAs etc ourselves.

The idea instead is that the SSDs will have the MySQL database on them while the regular disks are just sitting there with the scripts and components. MySQL in this case would be the replicated with the other server in the pair in case any of the two nodes in the server pair would go down.
I am not sure if we will need to replicate the regular disks. Do we?

1) Does any of you run your servers with a config similar to this? Any experiences you would be willing to share?

2) Do Mailwizz store things on disk on the fly which is not stored in the database?

3) If so, what would be a good way to keep the disk pairs up to date? Someone mentioned NFS. Is that fast enough? Good for the purpose? Any other ideas?

I know there are plenty of awesome people here on these forums that I am sure have interesting experiences and I'd also like to get some input and ideas from @twisted1919 if possible.

Thank you!
 
Last edited:
I don't have that many answers, but:

The idea instead is that the SSDs will have the MySQL database on them while the regular disks are just sitting there with the scripts and components
This is a good decision, just keep in mind the database size can grow considerably.

2) Do Mailwizz store things on disk on the fly which is not stored in the database?
We do some level of caching but it's not really necessary to use disk storage, we do by default, but you can use database, memcached or redis etc (see left side menu from http://www.yiiframework.com/doc/api/1.1/CRedisCache which shows the cache classes)

3) If so, what would be a good way to keep the disk pairs up to date? Someone mentioned NFS. Is that fast enough? Good for the purpose? Any other ideas?
If you're using redis for example, then you don't have to worry about this anymore.
 
This is a good decision, just keep in mind the database size can grow considerably.

Are you referring to the stats or logs or perhaps both? Perhaps move those parts to the bigger disks and set symbolic links in the /var/lib/mysql/[database]/[whatever_file_is_affected] ? (which, I realize, would mean additional hassle for keeping the disk pairs synched with each other)

Given this: https://forum.mailwizz.com/threads/how-much-space.2459/#post-15487
200 customers per server each with lists of maybe 100K subscribers (which is probably many for being an average for the types of customers that we will mainly be targetting) this would mean that the space needed for those would be something like 30 GB (minimum)
 
Are you referring to the stats or logs or perhaps both?
Yeah, both.

200 customers per server each with lists of maybe 100K subscribers (which is probably many for being an average for the types of customers that we will mainly be targetting) this would mean that the space needed for those would be something like 30 GB
Gotcha, then don't worry about this now.
 
Back
Top