December 7th, 2001, 11:52 PM
Customizing FreeBSD 4.4 remotely
I have been configuring a new FreeBSD server I rented at a dedicated hosting facility. I am trying to use this as a test case for a default configuration I would like for more FreeBSD servers in the future, so I have been spending a lot of time thinking how best to run a serious web application server, and getting the right balance of performance and stability. I have tried a few non-default things, and I am wondering if I am making any major mistakes:
1. Softupdates - The facility does not let me have direct physical access to the machine, and I really wanted to enable softupdates, so I searched and found a post by someone who claimed he had no trouble enabling it remotely. He just put "/sbin/tunefs -n enable /usr" (& etc...) in the beginning of the /etc/rc file. I tried it and had no problem. I just had to place that in /etc/rc once, and then comment it out after that, since it is a one-time command. AFAIK, the partitions where I enabled softupdates are working fine. I know this is not the correct way to do this, but I am wondering if this is a "one-time" operation. IF it reboots fine, does that mean I am OK, or should I be worried about any other possible side effects?
2. Many of the web apps and libraries I want to play with require Perl 5.6, and FreeBSD 4.4 still doesn't ship with it by default. I downloaded the sources to 5.6.1, and walked through the interactive installer, being careful to choose the correct directories for bin, lib, etc... Again, AFAIK it's working fine. Are there any gotchas I should be worried about?
3. The machine is a Celeron 800 with 256 MB RAM, and a 20 GB ATA-100 hard drive (I know, the next machine is going to have DUAL PIII and SCSI, but I have to start small). For my kernel build, what is a good choice for maxusers and NMBCLUSTERS? Keep in mind I want to run Apache, SSL, PHP, MySQL, and PostgreSQL, as well as some Perl modules (no CGI, though). I am thinking about setting maxusers at 128, and NMBCLUSTERS at 16384. I am also doing the other standard CPU optimization stuff, and taking out some of the unneeded drivers. So far I have the kernel down to 2.7 MB.
4. What is a good choice for maxusers and NMBCLUSTERS on a Dual PIII GHz, 4 GB RAM, and SCSI RAID 0+1?
5. AFAIK, for the ATA hard drives, FreeBSD now automatically chooses 32-bit DMA access, multiple-sector r/w, etc..., if it can do so safely. Is that the case? If not, what should I do to get better performance out of the IDE drive? (besides throw it out...)
6. Any other suggestions?