För att kunna ge ett bra svar behöver vi veta vad för data som skall lagras och hur användingen ser ut.
Som flera tidigare har påpekat så vill man ha en hel del RAM, men hur mycket skulle jag säga beror på just vad som lagras och användningen av datan. Stora filer som sällan används (filmer, avbildningar) fungerar bra med en mindre mängd RAM än t.ex. många små filer som används i större grad (både läsning och skrivning). Givetvis finns det speicalfall som är annorlunda, exempelvis stora virtuella diskar för virtuella maskiner som används (här är ett typexempel där man vill ha mycket RAM, ju mer desto bättre, men det finns en gräns där det kan börja bli problem). Ska dock bara en bunt filer lagras och sällan användas (varken läsas eller skrivas) så skulle jag nog vilja påstå att 8 GB RAM räcker långt, givetvis beroende på om maskinen har andra tjänster eller ej. Notera också att ARC kan begränsas till så mycket/lite man vill ha det.
Att köra en zpool på en singeldisk fungerar bra, så länge inte disken går sönder eller att sektorer går sönder. ZFS kommer givetvis upptäcka detta så man vet när något har gått fel, och var felet ligger. Detta är långt mycket bättre än vad nästan alla andra filsystem gör. (Stort tack till både NTFS och EXT3 som "tyst" tappat bort data för mig.) Detta tillsammans med alla andra fördelar med ZFS (komprimering, snapshots, send/recieve etc) gör att jag helt klart föredrar det på singeldisk framför andra filsystem, om möjligt.
Ett litet förtydligande också ifall man kör ZFS på en singeldisk. Om en sektor eller liknande ej går att läsa och man förlorar data kan det lagas automagiskt om man har en riktig jävla tur. Finns datan i ARC kan det nämligen ske. Det enda tillfället detta händer vid är dock under en scrub, annars kommer j udatan läsas från ARC istället för disk. Fast om detta händer är det dags att köpa ett par trisslotter. När felet ej kan återskapas så rullar man tillbaka till det senast snapshot som fungerar och sedan återskapar sin data från senaste backup genom att hämta det senaste snapshotet.
Men för att komma med något mer vettigt förslag till TS. Kör helst en spegel på så stora diskar du behöver. 3 TB må räcka nu med viss marginal, men har du eventuellt behov av mer utrymme senare kan snäppet störra diskar underlätta. En zpool som börjar bli full kan börja visa jobbiga prestandaproblem.
För backup till en extern disk ser jag tre olika alternativ här:
1) Gör en zpool av den externa disken och kör sedan med zfs send/recieve för att skicka över alla filsystem du vill ha backup på. Fördelen här är att det kommer gå snabbare att ta inkrementella snapshots då bara förändringar behöver flyttas. Dock kan det vara en stor fördel att ha något skript som underlättar detta. Att skriva alla kommandona för hand kan bli lite jobbigt om det handlar om rätt många filsystem. Fördelen med denna lösning är att man även får en versioneshantering av alla backuper. Behövs data från ett äldre datum så går man till ett äldre snapshot och hämtar ut datan därifrån. Detta är dock även bra att ha på sin vanliga lagring också så man slipper gå till sin backup.
2) Gör den externa disken till en del av zpoolen. Kanske låter lite dumt men om du har en trevägs-spegel av två interna diskar, samt en extern, så kommer alla data ipoolen att replikeras till den externa disken så fort ZFS upptäcker att den finns. Nackdelen blir dock att ZFS kommer varna om att disken saknas och zpoolen har status "DEGRADED". Detta kan generera onödigt många fel i antingen loggar eller mailutskick, beroende på vad för system som körs. Fördelen är dock att datan kommer vara intakt, samt att den externa disken kan kopplas in på en annan maskin och importeras som en egen pool där endast en av tre diskar finns tillgängliga. Som en bonus så kan även fel på den externa disken fixas genom att vara inkopplad och en scrub körs. Nackdelen här är ju dock att det endast fungerar om zpoolen består av en spegel. Vid andra konstellationer är helt klart alternativ 1 bättre.
3) Den externa disken kör ett helt annat filsystem där backup körs genom vanliga kopieringar eller, ännu bättre, med hjälp av t.ex. rsync. Inget beroende till ZFS kommer finnas här, men de operativsystem man försöker återställa data med måste givetvis ha support för filsystemet. Notera att ett filsystem i ZFS kan exporteras som en fil, som i sin tur kan vara lagrad på valfritt filsystem. En en lagrad checksumma för filen kan man vara rätt så säker på att den är intakt.
Personligen hade jag nog kört på alternativ 1. Mest pga att uppsättningen av zpoolen på maskinen kan se ut hur som helst, samt att man kan välja mer i detalj vad som ska backupas. Min lösning jag kör med hemma är att jag har en gammal dator som med ett par diskar i RAIDZ. Till den skickar jag över alla filsystem som jag anser ska backupas. Detta görs ungefär en gång i månaden och resterande tid stor datorn urkopplad i en garderob. Viktig data ser jag givetvis till att backupa till flera maskiner, både hemma och hos andra. Även där med hjälp av ZFS send/recieve.
ZFS känns många gånger som en hel vetenskap. Bästa sättet att lära sig är även genom att labba med det själv. Det kan ofta vara att ens egna behöver inte alls matchar andra rekommendationer. Har du frågor är det bara att ställa dem. Det finns flera här på forumet (vilket märks i tråden) som har gott om erfarenhet.