How far have you pushed your DirectAdmin server?

DirectAdmin Support

Administrator
Staff member
Joined
Feb 27, 2003
Messages
8,088
We often get questions about what the high-end limitations of DirectAdmin setups are.
I typically refer them to this guide: http://help.directadmin.com/item.php?id=233

However, I'm sure people have managed to cram large amount of clients onto monstrous servers.

I'm throwing out the question to anyone who has already loaded up a box, as to how many total E-Mail accounts, Domains, Users, etc.. you've got on your server, and what hardware setup you're using to accomplish it.
Including if any customization/optimizations were needed to do so, such as off-loading service to other servers, etc..

Include any side-effects of running these servers to capacity, such as any pages which might be slightly slower to load, etc..

I'm looking forward to hearing what sort of monster boxes people are running! :)

John
 
My server is not big - kind of very normal one. Currently my it is having 272 users. Few of them have more than one domain, most of them have only one. So let's say roughly 300 domains. Some websites are plain html only. Only 190 websites do have database (so they are php+mysql combination).

The server is having two SAS drives (I use them for OS, programs and I moved the MySQL data to them too) and two SATA drives (I use them for the /home directory). The drives are in RAID 1 (two by two).

There are 12GB ram. The CPU is:

hw.model: Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
hw.ncpu: 8

So far the load never jumped above 1.50 in peak hours. During normal operation is is below 1.00.

The load can be actually reduced to around 0.60 if I get rid of three websites which are big resource abusers. I still keep them anyway :)

I'll give you some apache and mysql stats later today.
 
Last edited:
Hi,

im using right now 5 different servers for accomplish differents ends.

Server #1: DELL Poweredge R610 with 2 SixCore CPU, 16GB RAM, 6x500GB SATA Drives RAID5 - CentOS 5.9 - Directadmin
This server do all the major job, not a lot of domains there (180 domains, 166 users)
Some of those domain are pretty heavy-load, the load average (right now) is 3.42 3.16 2.60 and it goes pretty high during backups (weekend, load goes up to 25/30) that are managed to get stored on the Server #3 via FTP using a custom script that save users backups and some custom files and shell access.

Server #2: DELL Poweredge 2950 with 2 QuadCore CPU, 16GB RAM, 8x1TB SATA Drives RAID5 - CentOS 6.4 - Directadmin
This server is used for mirror some linux release (Debian, Ubuntu, CentOS), some software and also custombuild, and it is also used for monitoring my structure and customer strucutre using Nagios and Munin.
The load right now is 1.11, 1.19, 1.38 and is pretty hard that goes up, very few load, the higher load is rsync and it doesnt take that much time.

Server #3: DELL Poweredge 2950 with 2 QuadCore CPU, 16GB RAM, 8x1TB SATA Drives RAID5 - CentOS 6.4 - Directadmin
This server is used just for backups (my own, my hosting customer, my external customers), the load is pretty low (0.05, 0.10, 0.15 right now) and it doenst goes up about never since it does not do anything special (i hope ill use this for other services too since is pretty 'unload').

Server #4 AND Server #5: DELL Poweredge 750 with 1 DualCore CPU, 2GB RAM, 1x500GB IDE Drive - CentOS 5.9
Those are just Nameservers, the disk is a waste of space, but actually i didnt found a smaller one, since now drive dont cost that much, im ok with that, at the moment it use DNS-Replicator (Jeff's master2slave edited to use SSH and RSYNC to move named configs) but will use probably DirectSlave in the future (once will be able have multiple login access).
No Load, is just a DNS, right now is 0.30, 0.16, 0.11, and it is just high for what he does ;)

At this moment i do have some custom script for accomplish differents end, for example:

- I've createa a script that permit me to use the server hostname as a domain in DirectAdmin, that is useful to have a virtualhost where to put Nagios/Checks/Admin useful webtools protected and not avaible from IP (that would be caused to have those webpages in /var/www/html/)
- Another script on user_create_post.sh that permit me to have a default SpamAssassin configuraiton with a default filter configuration that i move to new users so they have a standard filter for the Spam.
- A customization that permit me to set max number of users that a reselle can create.
- A script that permit to hide "Manage Domain" to end-users configurable in the user edit page
- Scripts to have synced mail quota in roundcube webmail

Most of those script does use DirectAdmin API and httpsocket, and, if you need that, ive no problem to share them.


Hope this is usefull to someone, in my plan i do have intention to put another Server (for example with same specs of Server #3) for MySQL purpose for have the Server #1 for example just as "frontend" and lower his load.

If anyone would have any suggestion, or whatever, im happy also to hear that.

Best regards
 
Last edited:
One of my smallest server is Intel Core i5-760 | 4Gb RAM | RAID0+1 (4 х 1Tb SATA III WD Black drives)| FreeBSD 7. Serving over 1200+ domains at a time (400 users), most users have a statical pages, but near 100 users have active pages (apache2-itk + php_module + nginx + memcached) and all of it works just perfect - load averages: 0.83, 1.02, 1.06. Sometimes have an traffic peaks to 2.0, but still be able to push new clients to this server :)

The only thing that I couldn't understand is why I should use prebuilt DA packages for all of my services like apache, exim and others? No, I don't use it, a true FreeBSD fan should build a system from scratch :) Maybe you should give BSD users an option to install software from ports, not from your precompiled packages? Installing from ports is a preferred way to get better performance optimization for achieving true BSD power - the power to serve.
 
Current Time: Thursday, 16-May-2013 23:46:58 EEST
...
1.96% CPU load
...
10.5 requests/sec - 175.1 kB/second - 16.7 kB/request
18 requests currently being processed, 27 idle workers
 
Compiling from ports have the benefit that you can include only the features that you want. There are also some compiler optimizations that can get performance benefit for some program (very noticeable on video and audio encoders for example). There are no big differences for web servers - the packages and ports are doing the same performance. Or at least I can't see any difference.
 
This server will never be upgraded, because it's EoL too, it's one of my first servers (and based on desktop hardware, will be unmounted in a few weeks) :) I'll just give an example on how less hardware resources DA can manage and serve on without any problems.
Building from ports give more flexibility, I include only that fetures that I want. This is not crytical for most powerful systems, but for optimisation on low system resources it give great benefits. Also, for example, mysql packages prebuilt without any extra-charsets, building it from ports is preffered for cyrillic users.
 
We keep our (virtual) shared hosting servers pretty small with often not more than 25 users or 200 domains. The main reason for this is that we're using Citrix xenserver and they have a really slow snapshot export mechanism (capped by design at 20% of the management nic bandwidth). Keeping the virtual hosting services on 30-40-50 GB diskimages keeps this manageble.
Besides adding things like apc, moving /tmp to tmpfs etc..., we don't really 'need' to push anything here to gain extra performance.
We do use mpm_itk so we needed to add some /scripts/custom/ stuff to keep user file permissions as low as possible.

On the other hand we also have a lot of dedicated (also virtual) systems running DirectAdmin. Some of those systems run e.g. the biggest soccer news site of belgium and a very big online marketplace (als Belgium). Well, big... about 300K uniqe users each day, 'doing' a few miljoen page requests, 350-400 php requests/s and up to 4000 sql queries/s. Obviously these virtual servers have a bit more ram/cpu's available, but they run fine using DA.

As for hardware, we use a dell 1955 blade server (10 blades with 2x2,33Ghz, 16GB ram), 6 x supermicro servers (each 2x2,4Ghz, 24GB ram) and a few supporting servers (image offloading, backups, management, monitoring, cache) ranging from hell-i-don't-care specs to nginx+php_fpm+4xSSD+32gb ram+2x3,2Ghz stuff.
Storage consists of 6 x supermicros with 12-16 disks, either sas, sata or ssd.
OS is mostly CentOS because FreeBSD has some issues with Citrix, but whenever we have a non-vps we're usually drop a recent FreeBSD OS on it.
 
Very ordinary server, 396 domains, 279 users, 30 resellers, 909 mailboxes, 326 MySQL databases.

The /home partition uses 196 GB. The MySQL partition uses 5.7 GB.

12 GB memory, 2 processors, each: Intel(R) Xeon(R) E5506 4 cores @ 2.13GHz

I don't remember what brand/speed hard drives we used, and I can't find the receipt tonight. Nor can I remember if there's a command to read the drive info. But I do know we're running RAID 1, only two drives, 750 GB each (plenty of room to spare). We do buy Server-spec drives for all our servers, but I don't remember the brand/model on these.

We use hidden master DNS on this and all our hosting servers, and we back up daily to an inhouse backup server on a private network running 100 mbps.

Only real optimization is using the large mysql config file, but we do check server load ever five minutes, and if runs over 9.0 we restart apache. Which happens two or three times a day and always brings it down. We report on server load of 5.0 or more every five minutes, and we get those reports about fifteen times a day.

We do run the ConfigServer firewall and the Brute Force monitor.

Right now:
Code:
top - 01:47:29 up 86 days,  1:13,  1 user,  load average: 2.95, 2.65, 2.64
Tasks: 284 total,   2 running, 282 sleeping,   0 stopped,   0 zombie
Cpu(s): 10.8%us,  1.5%sy,  0.3%ni, 73.5%id, 13.7%wa,  0.0%hi,  0.2%si,  0.0%st
Mem:  12289612k total, 11074076k used,  1215536k free,  1061112k buffers
Swap:  3148732k total,      212k used,  3148520k free,  6164772k cached

Note the uptime; we generally reboot this server once a year, more often for critical kernel updates or for library updates which may otherwise cause important daemons or other processes to crash or refuse to run. Server load is a bit high for us right now because the backup is running, but 2.95 isn't really high for 8 cores; it's really only 0.37 per core.

If you're looking at a site on that server right now it appears lightning fast.

Jeff
 
Back
Top