I am putting together a new work PC for myself to use out of an old server. It has a dual core P4 2.8 ghtz with 4 gig of ECC RAM and currently 2 IDE DVD-ROM drives. (Quite a step up from the rather sickly AMD1800+ I'm currently on! ) My plan is to replace one with a DVD burner. I pulled the single 120 gig SATA drive (with windoze server on - ACK! x( ) and replaced it with 3, 1 TB SATA drives. I'd like to use RAID5 for both speed and (more-so) reliability, but after researching things, have questions and concerns. I store disk images and work data on this machine, so reliability is more important than speed. However, I am going to be using X as a desktop on it and will be running Firefox, Thunderbird, OpenOffice, GIMP, VNC/RDP, burning software, and console windows to do coding w/vim, so I'd like it to be reasonably fast.
I've done mirroring on a couple of servers before with gmirror - worked very simply and effectively. Went through the install process, then followed instructions to create the RAID-1 before rebooting, and all was well. I haven't found anything that relates to setting up a RAID5 during the install process itself, only a few describing how to add disks to a system that's already up and running. This will be the first BSD system I've set up with RAID5, though I have done it on Linux; the slackware box I'm running on currently in fact has RAID5.
I've read that the boot volume in FreeBSD cannot be on a RAID5 as in Linux. Because of this, my tentative plan is to use gmirror to mirror/RAID1 the boot/root volume between 2 of the drives, then make a partition of the same size on the third drive to use for something like /var/ports, /tmp, or some other file system that can be easily re-constructed if it were to be lost. (This would effectively give me RAID5 on the boot/root volume as no matter which of the 3 drives failed, I'd still be OK.) I'd then have a 3 gig partition on each drive for swap so that FreeBSD can load-balance the swapping tasks between all 3 drives. The remainder of each drive would be added to the RAID5 and be used for the rest of the system - /etc, /home, /usr, and so on.
I also can't seem to find any consensus on which software is the most reliable, stable, fast, etc for this task. Some recommend using ZFS, others have tales of horror having used ZFS. Others say that vinum/gvinum is the way to go, others can't seem to get it to work. Still other people insist that geom raid 5 is the way to go, even though it's not included in FreeBSD by default. The only option that the handbook mentions is vinum, but I don't know whether I should interpret this as an endorsement/good thing or not. This seems to be a much-talked about topic, but everybody has their own opinions, all of which are different, and everybody is 100% positive that their own opinions are correct. It's almost like religion...
I'm planning on installing FreeBSD 8.1 (the latest release) on this system unless there are compelling reasons presented not to. I'm thoroughly sick of the binary upgrade system and dependency hell in Linux, which is one of the primary reasons I'm making the switch on my main PC to BSD. If I want to update Firefox/Thunderbird, I'd have to update major chunks of the system, development libraries, etc; the last time I tried to do this, I nuked the box. From what I've read, this is not all that uncommon. Therefore, I'm still using Slackware 10.2, Firefox 2.0.20, Thunderbird 1.5.9, etc. Building software from ports is easy and relatively quick, so I'm hoping I'll be able to stay reasonably current in the software I use without having to update the entire OS every few months. (I really don't have the time or willpower to do this without a good reason, which is why I'm still using Slack 10.2. From the time I arrive at work, I'm being pulled in 10 different directions at once and the last thing I want to think about is upgrading the OS on and possibly killing my box.)
My questions:
1. The BIOS has 3 modes for the SATA drives - IDE, RAID, and AHCI. Which would be the most appropriate to use in this situation? Since I'm using software RAID, I was thinking IDE. Not familiar with AHCI mode though. The only time I've changed a setting like this is on a board with hardware-RAID built in, which I do not believe this board has. (There are no additional options, no matter what I set the mode to.)
2. What software package would be best to use for reliability first, then speed?
3. Does anybody know of a tutorial, how-to, or walk-through on how to set up the software in question 2, particularly during the initial system installation?
4. Is there a guide to whatever performance tuning options exist for the software in question 2? How about general numbers for optimal performance under most conditions?
5. Does my plan to use gmirror for the boot volume and a partition of the same size on the third disk make sense or am I missing something?
6. Will pretty much any PCI sound card work with BSD? Because it's a server, there's no sound, which is something I'd very much like to have.
7. Are there any other questions that I should be asking or considerations I should be thinking about this?
I've done mirroring on a couple of servers before with gmirror - worked very simply and effectively. Went through the install process, then followed instructions to create the RAID-1 before rebooting, and all was well. I haven't found anything that relates to setting up a RAID5 during the install process itself, only a few describing how to add disks to a system that's already up and running. This will be the first BSD system I've set up with RAID5, though I have done it on Linux; the slackware box I'm running on currently in fact has RAID5.
I've read that the boot volume in FreeBSD cannot be on a RAID5 as in Linux. Because of this, my tentative plan is to use gmirror to mirror/RAID1 the boot/root volume between 2 of the drives, then make a partition of the same size on the third drive to use for something like /var/ports, /tmp, or some other file system that can be easily re-constructed if it were to be lost. (This would effectively give me RAID5 on the boot/root volume as no matter which of the 3 drives failed, I'd still be OK.) I'd then have a 3 gig partition on each drive for swap so that FreeBSD can load-balance the swapping tasks between all 3 drives. The remainder of each drive would be added to the RAID5 and be used for the rest of the system - /etc, /home, /usr, and so on.
I also can't seem to find any consensus on which software is the most reliable, stable, fast, etc for this task. Some recommend using ZFS, others have tales of horror having used ZFS. Others say that vinum/gvinum is the way to go, others can't seem to get it to work. Still other people insist that geom raid 5 is the way to go, even though it's not included in FreeBSD by default. The only option that the handbook mentions is vinum, but I don't know whether I should interpret this as an endorsement/good thing or not. This seems to be a much-talked about topic, but everybody has their own opinions, all of which are different, and everybody is 100% positive that their own opinions are correct. It's almost like religion...
I'm planning on installing FreeBSD 8.1 (the latest release) on this system unless there are compelling reasons presented not to. I'm thoroughly sick of the binary upgrade system and dependency hell in Linux, which is one of the primary reasons I'm making the switch on my main PC to BSD. If I want to update Firefox/Thunderbird, I'd have to update major chunks of the system, development libraries, etc; the last time I tried to do this, I nuked the box. From what I've read, this is not all that uncommon. Therefore, I'm still using Slackware 10.2, Firefox 2.0.20, Thunderbird 1.5.9, etc. Building software from ports is easy and relatively quick, so I'm hoping I'll be able to stay reasonably current in the software I use without having to update the entire OS every few months. (I really don't have the time or willpower to do this without a good reason, which is why I'm still using Slack 10.2. From the time I arrive at work, I'm being pulled in 10 different directions at once and the last thing I want to think about is upgrading the OS on and possibly killing my box.)
My questions:
1. The BIOS has 3 modes for the SATA drives - IDE, RAID, and AHCI. Which would be the most appropriate to use in this situation? Since I'm using software RAID, I was thinking IDE. Not familiar with AHCI mode though. The only time I've changed a setting like this is on a board with hardware-RAID built in, which I do not believe this board has. (There are no additional options, no matter what I set the mode to.)
2. What software package would be best to use for reliability first, then speed?
3. Does anybody know of a tutorial, how-to, or walk-through on how to set up the software in question 2, particularly during the initial system installation?
4. Is there a guide to whatever performance tuning options exist for the software in question 2? How about general numbers for optimal performance under most conditions?
5. Does my plan to use gmirror for the boot volume and a partition of the same size on the third disk make sense or am I missing something?
6. Will pretty much any PCI sound card work with BSD? Because it's a server, there's no sound, which is something I'd very much like to have.
7. Are there any other questions that I should be asking or considerations I should be thinking about this?