I recently had 20 drives across three machines. I was using a combination of raid5, iscsi, mhddfs, and samba. Machine1 mounts the iscsi devices from the other two machines, and then mhddfs combines them into one virtual filesystem. Samba is then used to share files out with laptops.
What I found is that network card drives in 3.2 kernels are currently in a horrible state. They crash left and right under real load. This is after trying different brands, tweaks, version of drivers, etc. In addition it seems iscsi client in Fedora 16 is also not in a great state. Independent of network issues, I would still get failures. The machine running CentOS 6.2 used to be Fedora 16, but was converted to make things more stable.
My latest plan is to do basically the same thing I was doing before, but on a smaller scale. I am going to retire the 1tb drives in Machine3, and replace them with the 2tb drives from Machine1. I am also going to convert Machine3 to CentOS 6.2 for stablility. Then Machine2 will mount Machine3's iscsi device, and use mhddfs and samba. This reduces the number of machines involved from three to two, and takes Fedora 16 out of the mix. It will also reduce the number of drives involved in mass storage from 20 to 14.
I plan to add two 2tb drives to Machine1, for storage, but it end up being only a desktop.