Rich Freeman wrote: > On Thu, Dec 8, 2022 at 7:37 AM Dale <rdalek1...@gmail.com> wrote: >> Path two, I've researched building a NAS using a Raspberry Pi 4 8GB as >> another option. They come as parts, cases too, but the newer and faster >> models of Raspberry Pi 4 with more ram seem to work pretty well. > For this sort of application the key improvement of the Pi4 over its > predecessors is IO. The Pi4 has USB3 and gigabit ethernet, and they > are independent, so you get the full bandwidth of both (in theory). > That is a massive step up over USB2 and 100Mbps ethernet that consumes > the USB2 bandwidth. > > I can't really speak to the commercial solutions as I haven't used > them. Main concern there is just the limited capacity, lack of > expandability, and so on. Some are no doubt better than others in > those regards. > > As far as DIY goes, you can definitely do all of that with a Pi4. > Don't expect it to perform as well as sticking it on a decent amd64 > motherboard, but for backup and saturating the throughput of 1 hard > drive at a time it can probably mostly make do. Encryption can be > accomplished either with cryptsetup or a filesystem that has native > encryption like ZFS. I've done both on Pi4s for storage. I will warn > you that zfs encryption is not hardware-optimized on ARM, so that will > not perform very well - it will be completely functional, but you will > get CPU-bound. Linux-native encryption (ie cryptsetup/LUKS) will use > hardware capabilities on the Pi4, assuming you're using something it > supports (I think I'm using AES which performs adequately). > > For the Pi4 you would need to use USB storage, but for hard drives IMO > this is perfectly acceptable, especially on a Pi. The gigabit > ethernet and internal IO of the Pi is only going to max out one hard > drive no matter how you connect it, so the USB3 interface will not be > a bottleneck. On ARM SBCs that have PCIe you don't really get any > better performance with an HBA and SATA/SCSI simply because the board > IO is already pretty limited. USB3 is actually pretty fast for > spinning disks, but depending on the number of hosts/etc it could > become a bottleneck on a decent motherboard with a large number of > drives. If you're talking about an amd64 with a 10GbE NIC and a > decent HBA with sufficient PCIe lanes for both then obviously that is > going to saturate more spinning disks. For NVMe you absolutely need > to go that route (probably need to consider server-class hardware > too). > > I use USB3 hard drives on Pis for my bulk storage because I care about > capacity far more than performance, and with a distributed filesystem > the performance is still good enough for what I'm doing. If I needed > block storage for containers/VMs/whatever then use a different > solution, but that gets expensive fast. > > Oh, one other thing. One of your issues is that you're using a backup > solution that just dumps everything into a single file/directory and > requires all the backup storage to be mounted at the same time in a > single filesystem. There are solutions that do not have this > requirement - particularly ones that are adaptable to tape. > Unfortunately the best FOSS option I've found for this on linux is > bacula and that is a serious PITA to use. If anybody has a better one > I'm all ears (the requirement is to be able to store a backup across > multiple hard drives, and this can't involve first storing it all in > one place and then splitting it up later, or having more than one > storage drive attached at the same time - basically I want to treat > hard drives like tapes). > > If you're storing a LOT of backups then LTO is another option. Every > time I do the math on that option it never makes sense unless you're > backing up a LOT of data. If you got to a point where your backups > consumed 10+ max-capacity hard drives it might start to make sense. > Those USB3 hard drives on sale for $15/TB though are just really hard > to beat when the tapes aren't all that much cheaper and the drives > cost $1k. >
>From my understanding, you are right about USB3 and GB ethernet being the big change. They also have more memory and faster CPUs but if you bottleneck the data with slow USB and ethernet with the old ones, who needs a fast CPU? I think they realized that the USB and ethernet had to improve. It got better from there. https://shop.allnetchina.cn/collections/sata-hat/products/dual-sata-hat-open-frame-for-raspberry-pi-4 I found the above. From my understanding, it allows a SATA drive to connect to either 2 or 4 bays. That card appears to connect with USB3 ports but I can't see the bottom. Odds are, especially if data is encrypted, the CPU will likely max out before the USB and ethernet. I'd think anyway. From what little I've read, they seem to be pretty fast. One thing I like about the Raspberry option, I can upgrade it later. I can simply take out the old, put in new, upgrade done. If I buy a prebuilt NAS, they pretty much are what they are if upgrading isn't a option. Some of the more expensive ones may be upgradable, maybe. I just wonder, could I use that board and just hook it to my USB port and a external power supply and skip the Raspberry Pi part? I'd bet not tho. ;-) Dale :-) :-)