Göra flera diskar till ett utrymme?

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
Användarvisningsbild
walle
Inlägg: 152
Blev medlem: 10 apr 2007, 03:28
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Göteborg

Göra flera diskar till ett utrymme?

Inlägg av walle »

Jag en server som går 24/7 hemma som fungerar främst som centrallagring för mina bilder och filmer. Bland annat har jag Plex Media Server installerad för att kunna streama och transcoda filmer. Men har även behov av att köra webbserver samt lagra och ta backup med Crashplan. Problemet som jag har idag är att all material ligger utsprid på flera diskar och det är en röra att hålla koll på allt.

Dessa diskar har jag idag:

1. 120 GB SSD - Operativsystem + programvara
2. 3 2 TB - Lagring 1
3. 750 GB - Lagring 2
4. 640 GB - Lagring 3
5. 250 GB - Lagring 4 och cache för Plex-servern. Kommer att bytas ut mot en större disk.

Min plan är att slå ihop allt detta till en disk (förutom SSD:n som agerar som systemdisk) så att jag kan utnyttja utrymmen på alla diskar på bättre sätt. Dock har jag svårt att bestämma mig för vad för teknik som ska användas för att åstadkomma detta.

FreeNas? ZFS + Ubuntu? Annat?

Freenas har jag testat, men det är buggit och segt. Men i övrigt är funkar GUI:t helt ok samt gillar att plugins installeras i jails som påminner om Docker.

ZFS i Ubuntu verkar intressant, men hur bevakar man det? Alltså hur mycket utrymme som används samt hur man får reda på en disk har dött. Dessutom har jag läst om att ZFS inte fungerar lika i Linux som det gör för FreeeBSD samt att det är en hajpad teknik som egentligen bara passar i Enterprise-miljö och ska istället köra något annat filsystem.

Kan någon ge mig input? Vad ska jag använda och varför?

Edit 2015-04-20 20:04: Uppdaterat med nya förutsättningar och rättning av den största disken.
Senast redigerad av 2 walle, redigerad totalt 20 gång.
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Göra flera diskar till ett utrymme?

Inlägg av Osprey »

Du bör kunna använda LVM för det...
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Användarvisningsbild
walle
Inlägg: 152
Blev medlem: 10 apr 2007, 03:28
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Göteborg

Re: Göra flera diskar till ett utrymme?

Inlägg av walle »

Intressant, men vad jag har kunnat läsa mig till så förlitar den sig på att hårdvaran är pålitlig vilket gör att om man förlorar en disk så förlorar all data, om man inte komplimenterar det med en raid av något slag.

Det jag är ute efter är följande:
  • Ett system som kan slå ihop utrymmet från flera diskar till en disk.
  • Lätt kunna se från terminalen/GUI hur mycket användbart utrymme som är kvar
  • Den ska klara av att en disk dör utan dataförluster
  • Att kunna byta ut diskar för aningen fixa en trasig disk eller att utöka utrymmet med en ny större disk. Helst bör det inte vara någon omständlig process.
  • Ska kunna meddela/varna om en disk behöver bytas ut
Jag är med på att diskutrymme kommer att offras till att raid-funktionen ska fungera om en disk faller bort.
Användarvisningsbild
Nemo
Inlägg: 732
Blev medlem: 16 aug 2010, 19:39
OS: Kubuntu
Utgåva: 18.04 Bionic Beaver LTS

Re: Göra flera diskar till ett utrymme?

Inlägg av Nemo »

RAID 0 ger dig dubbel kapacitet, men har nackdelen att om en disk går sönder, är din data rökt.

I ditt fall utifrån din beskrivning är det nog RAID 10 som du är ute efter. Fördelen är att du får dubbel kapacitet och om en disk går sönder, fungerar allt utan dataförlust. Nackdelen är att du samtidigt förlorar halva lagringsutrymmet.

RAID 10 kräver 4 diskar. Har du 4 diskar på 2 TB vardera, blir det totala lagringsutrymmet 4 TB, då de resterande 4 TB åtgår för speglingen av data. Tror dock inte det finns någon annan lösning ifall du vill ha flera diskar till ett utrymme och samtidigt inte förlora någon data om en av diskarna går sönder.
Användarvisningsbild
walle
Inlägg: 152
Blev medlem: 10 apr 2007, 03:28
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Göteborg

Re: Göra flera diskar till ett utrymme?

Inlägg av walle »

Jag förstår att jag kommer få offra utrymme för att få redundans, jag räknar med en förslut på åtminstone 25% i bästa fall och har en smärtgräns på 60% för ett system som klarar av att en disk faller bort.

Rätta om jag har fel, men klassisk RAID tar den minsta hårddisken som minsta gemensamma nämnare (i mitt fall 250 gb) och tar det gånger antalet diskar som körs i raiden (4x250)? Det skulle betyda i så fall att med RAID 10 och med min nuvarande setup så kan jag bara använda 500 GB av totalt 4 640 GB (mer än 90%). Om jag byter ut 250-disken mot åtminstone en 640GB disk så blir det en förslut på mer än 70%. I så fall behöver jag byta ut diskar för ca 4 000 kr för att komma i nivå med 50% förslut.

Dessutom krävs det inte kontroller för att få RAID 10? Helst vill jag se en mjukvarulösning som tar hand om det istället så man slipper bli bunden till en dyr kontroller.
HakanS
Global Moderator
Inlägg: 4289
Blev medlem: 30 mar 2006, 10:34
OS: Kubuntu
Utgåva: 23.04 Lunar Lobster
Ort: Trollhättan

Re: Göra flera diskar till ett utrymme?

Inlägg av HakanS »

walle skrev:Jag förstår att jag kommer få offra utrymme för att få redundans, jag räknar med en förslut på åtminstone 25% i bästa fall och har en smärtgräns på 60% för ett system som klarar av att en disk faller bort.
Hur har du tänkt dig att dina diskar på 750, 640 och 250 GB ska kunna spegla datat på din 3 TB disk om denna krashar?
Användarvisningsbild
Nemo
Inlägg: 732
Blev medlem: 16 aug 2010, 19:39
OS: Kubuntu
Utgåva: 18.04 Bionic Beaver LTS

Re: Göra flera diskar till ett utrymme?

Inlägg av Nemo »

walle skrev:Rätta om jag har fel, men klassisk RAID tar den minsta hårddisken som minsta gemensamma nämnare (i mitt fall 250 gb) och tar det gånger antalet diskar som körs i raiden (4x250)? Det skulle betyda i så fall att med RAID 10 och med min nuvarande setup så kan jag bara använda 500 GB av totalt 4 640 GB (mer än 90%). Om jag byter ut 250-disken mot åtminstone en 640GB disk så blir det en förslut på mer än 70%. I så fall behöver jag byta ut diskar för ca 4 000 kr för att komma i nivå med 50% förslut.
Det är helt korrekt, RAID kedjan är begränsad till den minsta diskens storlek och i ditt fall med en minsta disk på 250 GB kommer du med RAID 10 få ett utrymme av 500 GB, vilket känns ganska surt med tanke på hur mycket utrymme du har totalt med alla dina diskar.
walle skrev:Dessutom krävs det inte kontroller för att få RAID 10? Helst vill jag se en mjukvarulösning som tar hand om det istället så man slipper bli bunden till en dyr kontroller.
Ubuntu Server har bra inbyggt stöd för mjukvarubaserad RAID. Skillnaden är den att mjukvarubaserad RAID bygger på partitioner, medan hårdvarubaserad är diskbaserad.

Jag har själv testat mjukvarubaserad RAID 1 i Ubuntu Server och det har fungerat utan problem. Har inte provat RAID 10 med mjukvarubaserad, men det skulle du kunna testa genom att sätta upp en virtuell Ubuntu Server i VirtualBox, lägga till 4 små virtuella diskar och testa om du får det att fungera med RAID 10.

En annan lösning är att du kör med LVM och köper endast en stor extern USB hårddisk, där du kopierar över sådant du är rädd om. Då får du ett stort gemensamt utrymme och om någon disk rasar, har du kvar det viktigaste på en extern disk. Kanske inte exakt det du är ute efter, men borde bli mer ekonomiskt än att köpa in 4 nya diskar, där du bara kan nyttja 50% av utrymme.
Användarvisningsbild
Barre
Inlägg: 2298
Blev medlem: 13 dec 2006, 10:23
OS: Ubuntu
Ort: Stockholm
Kontakt:

Re: Göra flera diskar till ett utrymme?

Inlägg av Barre »

walle skrev: Rätta om jag har fel, men klassisk RAID tar den minsta hårddisken som minsta gemensamma nämnare (i mitt fall 250 gb) och tar det gånger antalet diskar som körs i raiden (4x250)? Det skulle betyda i så fall att med RAID 10 och med min nuvarande setup så kan jag bara använda 500 GB av totalt 4 640 GB (mer än 90%). Om jag byter ut 250-disken mot åtminstone en 640GB disk så blir det en förslut på mer än 70%. I så fall behöver jag byta ut diskar för ca 4 000 kr för att komma i nivå med 50% förslut.
Det stämmer (mer eller mindre) att RAID begränsas av den minsta diskens storlek, men det går att göra på ett annat sätt (se längre ner) :)
walle skrev: Dessutom krävs det inte kontroller för att få RAID 10? Helst vill jag se en mjukvarulösning som tar hand om det istället så man slipper bli bunden till en dyr kontroller.
Nej, det krävs ingen hårdvara, RAID går att göra i mjukvara också.

Ett scenario är att skapa en Volym Grupp (VG) med hjälp av LVM.
Denna volymgrupp skapar du med hjälp av dina fysiks diskar (Physical Volyme / PV)
Ur denna volymgrupp kan du sen skapa en eller flera Logiska Volymer (LV), och de är dessa logiska volymer som systemet kommer se som diskar och skapa filsystem på.
När du skapar en logisk volym så kan du avgöra hur den skall spridas över de fysiska diskarna i din volymgrupp och vilken typ av redundans du vill ha på volymen, låt mig ge ett exempel.

DETTA ÄR TAGET DIREKT FRÅN MINNET, JAG HAR ALLTSÅ INTE TESTAT DETTA SÅ DU SKALL INTE KLIPP OCH KLISTA IN DETTA IN I EN TERMINAL DÅ DET FÖRMODLIGEN ÄR EN DEL SYNTAX FEL !!
Låt oss anta att diskarna ligger som /dev/sdb /dev/sdc /dev/sdd /dev/sdf (som förövrigt kommer att tömmas av följande kommando)
Först markerar vi dessa devices som physical devices så vi kan använda dem i LVM

Kod: Markera allt

pvcreate /dev/sdb /dev/sdc /dev/sdd /dev/sdf 
Vi skapar en VG av dina fysiska diskar och kallar den för VG01

Kod: Markera allt

 vgcreate VG01 /dev/sdb /dev/sdc /dev/sdd /dev/sdf
nu kan vi skapa logiska volymer från denna volymgrupp, låt oss skapa en 10GB stor volym och heter min_disk som dessutom skyddas av RAID5

Kod: Markera allt

lvcreate --type raid5 --stripes 3 --size 10G --name min_disk VG01
det som kanske int er självförklarande där är --stripes. Det betyder hur många data stripes som volymen skall ha, data-strips + paritet-stripes kan inte vara högre än antaled PV du har i din VG. Eftersom du bara har en paritet i RAID5 så kan du ha max tre stripes på din RAID5 volym, detta begränsas alltså av dina fyra diskar i volymgruppen.
Ökar du sen antalet diskar i volymgruppen så kan du givetvis skapa volymer med större antal stripes.

Du kan givetvis skapa fler logiska volymer från volymgruppen, dessa kan ha andra typer av paritet exempelvis en RAID10

Kod: Markera allt

lvcreate --type raid10 --stripes 2 --size 10G --name disken VG01
Här har vi max stripes på två eftersom varje stripe måste speglas och vi har bara fyra disk i vår volymgrupp.

Dessa volymer kan du sen montera som vanligt och formatera filsystem på, de ligger normalt som device-filer i /dev/mapper/<vg_name>-<lv_name>
så i detta exempel så har du två device-filer
/dev/mapper/vg01-min_disk
/dev/mapper/vg01-disken


så för att summera, du kan alltså använda samtliga diskar i din LVM, men du kommer inte kunna skapa raid10 volymer på mer än vad den minsta disken är på.
Men skapar du mirror (alltså raid1) så kan du nyttja samtliga diskar tll fullo och få ut (med lite klipp och klistra och finurligt konfigurerande) totalt 2320 GB användbar och skyddad yta, vilket är den maximala speglade volymen du kan få med din diskvolym.
Klarar du dig med RAID5 så är den användbara ytan mer eftersom du kör med paritet och inte spegling.

kommandon som är bra att kunna när man "leker" med lvm är:
  • pvcreate
  • pvdisplay
  • vgcreate
  • vgdisplay
  • lvcreate
  • lvdisplay
  • vgs
  • lvs
  • pvs
________________________________________________________________
twitter @ BarreGargamel
blogg @ Gargamel.NU
Användarvisningsbild
Barre
Inlägg: 2298
Blev medlem: 13 dec 2006, 10:23
OS: Ubuntu
Ort: Stockholm
Kontakt:

Re: Göra flera diskar till ett utrymme?

Inlägg av Barre »

Barre skrev: Men skapar du mirror (alltså raid1) så kan du nyttja samtliga diskar tll fullo och få ut (med lite klipp och klistra och finurligt konfigurerande) totalt 2320 GB användbar och skyddad yta, vilket är den maximala speglade volymen du kan få med din diskvolym.
Klarar du dig med RAID5 så är den användbara ytan mer eftersom du kör med paritet och inte spegling.
ja, det stämde ju inte. Det maximala RAID1 är alltså 1640GB vid närmare eftertannke. Du får alltså lite spill, men den spillen kan du köra RAID0 på så du kan nyttja utrymmet ialla fall... sorry
________________________________________________________________
twitter @ BarreGargamel
blogg @ Gargamel.NU
Användarvisningsbild
walle
Inlägg: 152
Blev medlem: 10 apr 2007, 03:28
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Göteborg

Re: Göra flera diskar till ett utrymme?

Inlägg av walle »

Till och börja med att tacka för alla svar. Det har gett en tankeställare och fått tänka om vissa delar av min plan. Exempelvis jag måste byta ut min 250 gb disk dels på grund av ålder men framför allt att andelen användbart utrymme går ner till mindre än 10%.
HakanS skrev:Hur har du tänkt dig att dina diskar på 750, 640 och 250 GB ska kunna spegla datat på din 3 TB disk om denna krashar?
Fel av mig, jag utgick i mitt huvud för att kunna ersätta 250gb disken mot en som är mellan 640 gb till 2 TB.
Nemo skrev:Jag har själv testat mjukvarubaserad RAID 1 i Ubuntu Server och det har fungerat utan problem. Har inte provat RAID 10 med mjukvarubaserad, men det skulle du kunna testa genom att sätta upp en virtuell Ubuntu Server i VirtualBox, lägga till 4 små virtuella diskar och testa om du får det att fungera med RAID 10.
Bra idé med Virutalbox. Det blir nog ett utmärkt test.
Barre skrev: Det stämmer (mer eller mindre) att RAID begränsas av den minsta diskens storlek, men det går att göra på ett annat sätt (se längre ner) :)
...
Intressant, det är något som jag får testa i Virtualbox. Dock en fråga angående om RAID 5. Som jag förstår det så är det den typ av RAID som passar bäst om man vill maximera användbart utrymme men ändå ha säkerheten av att en disk kan braka ihop. Men vad jag har läst om så passar inte denna typ av RAID om man har stora diskar då det tar mycket lång tid att bygga om en RAID ifall man byter ut eller lägger till en disk. Finns det någon sanning i det?
Användarvisningsbild
Barre
Inlägg: 2298
Blev medlem: 13 dec 2006, 10:23
OS: Ubuntu
Ort: Stockholm
Kontakt:

Re: Göra flera diskar till ett utrymme?

Inlägg av Barre »

walle skrev: Dock en fråga angående om RAID 5. Som jag förstår det så är det den typ av RAID som passar bäst om man vill maximera användbart utrymme men ändå ha säkerheten av att en disk kan braka ihop. Men vad jag har läst om så passar inte denna typ av RAID om man har stora diskar då det tar mycket lång tid att bygga om en RAID ifall man byter ut eller lägger till en disk. Finns det någon sanning i det?
Det finns en sanning i det!
Det man måste ställa i relation till detta är dock ett antal parametrar, vad är det för data jag skyddar, hur mycket nertid är acceptabel samt hur bra backup har jag.

Jag blir varm i själen när du tar upp dataintegriteten (det är ett ämne som ligger mig nära om hjärtat). Jag skrev ett litet blogginlägg om just detta för några år sen (sex år sen närmare bestämt :) http://gargamel.nu/2009/06/varfor-nya-filsystem/).

Jag kör fortfarnade RAID5 för viss data, annan data kör jag RAID6 och för en typ av data kör jag alltid RAID10/RAID1. Men oavsett vilken typ av RAID jag har så har jag alltid en backupstrategi som täcker värdet av min data, för backup är betydligt viktigare än RAID.

Du behöver inte slänga upp en virtualbox för att testa, det går att skapa ett gäng loop-devices för att testa både md-raid och lvm. Här är ett exempel för att testa MD-Raid med loop devices http://gargamel.nu/2009/02/loopback-devices/. Det går utmärkt att testa LVM med loop-devices också .
________________________________________________________________
twitter @ BarreGargamel
blogg @ Gargamel.NU
Användarvisningsbild
Nemo
Inlägg: 732
Blev medlem: 16 aug 2010, 19:39
OS: Kubuntu
Utgåva: 18.04 Bionic Beaver LTS

Re: Göra flera diskar till ett utrymme?

Inlägg av Nemo »

Tack Barre för dina länkar om RAID och LVM. Det var mycket intressant läsning för mig.
Skriv svar

Återgå till "Nätverk, säkerhet och servrar"