RAID1 z USB diskov

RAID1 z USB diskov
« kdy: 07. 10. 2020, 09:54:05 »
Dobry den,
Chcel by som si postavit RAID1 s vyuzitim notebooku (prip RPI) a externych USB diskov ktore mam k dispozicii:
1.5TB
2.TB
5TB

BTRFS zacina byt pomaly standardom tak by som zrejme pouzil tento FS, ale nebranim sa aj inym. S BTRFS a obecne s RAIDOM mam len teoreticke skusenosti tak ma prosim opravte ak nieco uvadzam zle. Zvazujem este ci pouzit vsetky 3 disky alebo nejaku kombinacia 2.

Klady BTRFS:
- kapacita RAIDu je cca: suma kapacit / 2 (a teda nijaky disk nevyjde na zmar)
- pri poskodenom disku by sa nemalo stat to ze poskodene data syncne aj na druhy disk preto ze ich bude povazovat za zmenu (ako sa to vraj stava pri inych typoch RAIDu)

Zapory BTRFS:
- vraj nieje dobre pouzit na USB disky koli tomu ze ich moze OS kedykolvek odpojit z nejakeho dovodu (ale to plati asi obecne o kazdom RAIDE)

Nebranim sa ani takej alternativne (ak je to samozrjeme technicky mozne):
DISK1: 2TB
DISK2: 1.5TB
Usetrenych 0.5 TB z DISKU1 pouzit ako klasicky disk bez RAIDU.

Mate nejake skusenosti s RAIDom cez USB disky?

Dakujem za pripomienky


Re:RAID1 z USB diskov
« Odpověď #1 kdy: 07. 10. 2020, 12:21:35 »
Jak to chces provozovat? To budes mit k notebooku permanentne pripojene dva USB disky kabelem? Kazdy disk s uplne odlisnou velikosti. Co kdyz jeden vypadne? Cele to prodte nedava moc smysl.

Re:RAID1 z USB diskov
« Odpověď #2 kdy: 07. 10. 2020, 12:42:52 »
Pokud ti jde o seznameni se s raid/btrfs tak si udelej virtual s X disky dle libosti a zkousej veci tam. Pokud ti jde o skutecne nasazeni a chces tam mit nejake data ktere maji nejakou cenu tak je raid z USB disku nesmysl a prijdes na to sam nebo poslechnes rady jinych a nebudes se do toho poustet. ;)

Re:RAID1 z USB diskov
« Odpověď #3 kdy: 07. 10. 2020, 13:28:26 »
RAID nad USB disky je chujovina. Není to na to určené, i kdyby to nakrásně fungovalo. V praxi spíš zažijete problémy, o bezpečnosti dat nemluvě.

Kdybyste něco o discích a RAID už věděl, nikdy by takový dotaz nemohl padnout. Pokud padl, znamená to, že ani o jednom toho zatím moc nevíte.

Jestli chcete experimentovat s raidem, tak na interních discích. Pak, se zkušeností, uvidíte, jak se to chová na USB. Určitě bych učení nezačínal na živých datech. Pokud živá data, pak doporučuji se uchýlit k řešením, které daný systém (a hardware) výslovně podporují a doporučují.

Re:RAID1 z USB diskov
« Odpověď #4 kdy: 07. 10. 2020, 14:03:38 »
Jak to chces provozovat? To budes mit k notebooku permanentne pripojene dva USB disky kabelem? Kazdy disk s uplne odlisnou velikosti. Co kdyz jeden vypadne? Cele to prodte nedava moc smysl.
Ano presne tak. Na nete je kopa tutorialov na RPI s USB diskami


Re:RAID1 z USB diskov
« Odpověď #5 kdy: 07. 10. 2020, 14:06:14 »
RAID nad USB disky je chujovina. Není to na to určené, i kdyby to nakrásně fungovalo. V praxi spíš zažijete problémy, o bezpečnosti dat nemluvě.

Mozete byt prosim konkretnejsi? Aky je rozdiel ci je to disk cez SATA radic alebo cez USB? Linux to berie ako /dev/sdaX a je mu jedno ci to je USB alebo nieco, alebo sa mylim? Preco by s tym mali byt problemy.

Dakujem

Re:RAID1 z USB diskov
« Odpověď #6 kdy: 07. 10. 2020, 14:08:53 »
Mozete byt prosim konkretnejsi? Aky je rozdiel ci je to disk cez SATA radic alebo cez USB? Linux to berie ako /dev/sdaX a je mu jedno ci to je USB alebo nieco, alebo sa mylim? Preco by s tym mali byt problemy.

Kvůli odezvě, propustnosti, napájení, odpojení. Poslední dva body můžete asi s trochou péče vyřešit dobře, ale i tak se na USB musí počítat s tím, že se zařízení odpojí a připojí.

Pro RAID je zásadní ta odezva a následně i propustnost.

by_cx

  • ****
  • 290
    • Zobrazit profil
    • E-mail
Re:RAID1 z USB diskov
« Odpověď #7 kdy: 07. 10. 2020, 14:29:38 »
Je zábavné tu číst jak je USB nespolehlivé i když už se dneska používá jediný USB kabel na připojení monitorů, disků, myší, klávesnic, flashek a prostě to funguje. Přes Thunderbold dokonce mohou téci desítky Gb dat za sekundu a problémy s tím nejsou.

V kanclu máme tohle:

https://www.alza.cz/icybox-3620u3-d581828.htm

Připojené k RPi4 a používáme to na zálohování ~1TB dat ze serverů. Existuje i varianta pro 4 disky. Na napájení používáme tohle:

https://www.czech-meanwell.cz/meanwell/RS-75-12-Mean-Well-Spinany-zdroj-uzavreny-75W-12V-d2289.htm

Jako filesystém tam je Btrfs a funguje to už několik měsíců úplně bez problémů. Btrfs má navíc checksumy, takže pokud se něco stane s daty, si schopný to detekovat. Za celou dobu se disky ani jednou neodpojily a přežilo to i pár výpadků proudu, než jsme koupili UPSku.

Je to levné, dá se to strčit kamkoli, funguje to, náhradní díly jsou dostupné na poličce v nejbližším obchodě, žere to 10 W.

Budeme stavět ještě jeden kvůli redundanci a na základě zkušeností z toho prvního použijeme dva kusy tohoto:

https://www.alza.cz/axagon-ee35-xa3-aline-d1775025.htm

Ten box na dva disky má jednu velkou nevýhodu, pokud vypadne proud, je nutné ho ručně zapnout. To nevadí v tom kanclu, ale na méně dostupném místě ano.

Pokud použiješ Raspberry Pi, mrkni na SD karty WD Purple. Měly by mít wear leveling, takže neodpadnou po 200 zápisech do jednoho místa. Co se týče kapacity, tak při použití těch tvých třech disků v RAID 1 se připravíš o 1.5 TB. Btrfs bohužel neumí zapnout RAID jen nad vybranými subvolumy.

Pokud bychom nepotřebovali Btrfs a mít pod kontrolou šifrování, asi bychom vybrali nějaký malý dvoudiskový NAS. Není to sice taková zábava, ale člověk to zapojí a ono to funguje. Na druhou stranu to co jsem popsal výše vychází na 3k + disky a i proti NASům za dvojnásobek to má neporovnatelně vyšší výkon a větší možnosti. USB bych se dnes už nebál, zvlášť pokud tam nemáš nějakou uber důležitou aplikaci. Před lety nám odešlo v jednom serveru diskové pole. Jako náhradní řešení jsme tam měli na týden zapojený externí disk přes USB 3 a fungovalo to v pohodě pod plným loadem.

Re:RAID1 z USB diskov
« Odpověď #8 kdy: 07. 10. 2020, 14:47:29 »
Je zábavné tu číst jak je USB nespolehlivé i když už se dneska používá jediný USB kabel na připojení monitorů, disků, myší, klávesnic, flashek a prostě to funguje. Přes Thunderbold dokonce mohou téci desítky Gb dat za sekundu a problémy s tím nejsou.

V kanclu máme tohle:

https://www.alza.cz/icybox-3620u3-d581828.htm

Připojené k RPi4 a používáme to na zálohování ~1TB dat ze serverů. Existuje i varianta pro 4 disky. Na napájení používáme tohle:

https://www.czech-meanwell.cz/meanwell/RS-75-12-Mean-Well-Spinany-zdroj-uzavreny-75W-12V-d2289.htm

Jako filesystém tam je Btrfs a funguje to už několik měsíců úplně bez problémů. Btrfs má navíc checksumy, takže pokud se něco stane s daty, si schopný to detekovat. Za celou dobu se disky ani jednou neodpojily a přežilo to i pár výpadků proudu, než jsme koupili UPSku.

Je to levné, dá se to strčit kamkoli, funguje to, náhradní díly jsou dostupné na poličce v nejbližším obchodě, žere to 10 W.

Budeme stavět ještě jeden kvůli redundanci a na základě zkušeností z toho prvního použijeme dva kusy tohoto:

https://www.alza.cz/axagon-ee35-xa3-aline-d1775025.htm

Ten box na dva disky má jednu velkou nevýhodu, pokud vypadne proud, je nutné ho ručně zapnout. To nevadí v tom kanclu, ale na méně dostupném místě ano.

Pokud použiješ Raspberry Pi, mrkni na SD karty WD Purple. Měly by mít wear leveling, takže neodpadnou po 200 zápisech do jednoho místa. Co se týče kapacity, tak při použití těch tvých třech disků v RAID 1 se připravíš o 1.5 TB. Btrfs bohužel neumí zapnout RAID jen nad vybranými subvolumy.

Pokud bychom nepotřebovali Btrfs a mít pod kontrolou šifrování, asi bychom vybrali nějaký malý dvoudiskový NAS. Není to sice taková zábava, ale člověk to zapojí a ono to funguje. Na druhou stranu to co jsem popsal výše vychází na 3k + disky a i proti NASům za dvojnásobek to má neporovnatelně vyšší výkon a větší možnosti. USB bych se dnes už nebál, zvlášť pokud tam nemáš nějakou uber důležitou aplikaci. Před lety nám odešlo v jednom serveru diskové pole. Jako náhradní řešení jsme tam měli na týden zapojený externí disk přes USB 3 a fungovalo to v pohodě pod plným loadem.

Nepochopil jsi, ze nebude pripojivat hotovy raid box, ale vytvaret ho ze dvou samostatnych USB disku. To je dost podstatny rozdil..

by_cx

  • ****
  • 290
    • Zobrazit profil
    • E-mail
Re:RAID1 z USB diskov
« Odpověď #9 kdy: 07. 10. 2020, 14:56:38 »
A ty si zjevně nečetl co jsem napsal. Kromě toho, že ten box, co jsem zmínil, nemá RAID, ale v systému se tváří jako dva samostatné disky, tak později doporučuji použít dva samostatné boxy. Vůbec není rozdíl v tom, zda to chce provozovat v RAIDu nebo ne. Fungovat to bude stejně dobře s ním i bez něj.

RDa

  • *****
  • 2 467
    • Zobrazit profil
    • E-mail
Re:RAID1 z USB diskov
« Odpověď #10 kdy: 07. 10. 2020, 14:59:32 »
Je zábavné tu číst jak je USB nespolehlivé i když už se dneska používá jediný USB kabel na připojení monitorů, disků, myší, klávesnic, flashek a prostě to funguje. Přes Thunderbold dokonce mohou téci desítky Gb dat za sekundu a problémy s tím nejsou.

Cinskej 220V zdroj na 7W ledky do osvetlene lupy produkuje takovy RF bordel, ze se me odpouje mys a usb-serial co mam na stole. Predpokladam ze nejaky usb box by se odpojil taky :) Nemuzete srovnavat neco, co je vevnitr PC krabice / notebooku, s necim, co visi na dratech.

To, ze vam neco na 100% funguje znamena jenom to, ze to pouzivate tak malo a tak nepestre, ze vas chyba nepotkala.

V praxi to vypada tak, ze chyba na USB zpusobi odpojeni/pripojeni (reset) zarizeni. U klavesnice ci mysi to moc nevadi, ale u uloziste to znamenalo ze /dev/sdb prestalo fungovat a nezmizlo (pac z druheho konce to bylo otevreny) a objevilo se nove zarizeni - /dev/sdc. Dnes je tohle snad uz ohackovane v Linuxu, takze se USB umi castecne zotavit a vratit block device tam kam patri, ale o operaci nejspis prijdete a s tim souvisi vyhazovani disku z raidu pro falesnou nefuncnost, pripadne poskozeni filesystemu.

U SATA se v pripade chyby udelal interface reset a poslala operace jednoduse znova.

Re:RAID1 z USB diskov
« Odpověď #11 kdy: 07. 10. 2020, 15:17:52 »
odprostíme-li se od spolehlivosti usb (stačí kolikrát chytnout kabel a je odpojeno) a jeho latencí, jako hlavní zádrhel vidím způsob fungování usb driverů, jejich připojení a nestálost jejich device id na linuxu (stačí prohodit port nebo přidat redukci a linux je z toho zmatený).

Další problém je prapagace signálů při odpojování a připojování nebo zápisu, hodně záleží jako které zařízení se samotný disk nahlásí, někdy usb disky neumí ani správně potvrdit zápis dat a zůstanou při odpojení fyzicky nezapsaná. Komplikace dělá i způsob vedení usb portů z počítače, kdy některé jsou přes rozbočovat, zařízení na takových portech nemůže komunikovat paralelně, ale musí navzájem na sebe čekat, to tvoří obrovské prodlevy při mirroring (raid 1, 5, 6, 10 atd.), pro menší problémy to dělá při raid 0, ale tam zase není tak vysoké navýšení rychlosti.

Problém s připojování lze vyřešit vytvořením fat partition na usb discích a připojení (mount) podle uuid, pak je to konzistentní. Nad tím pak může fungovat mdadm docela dobře.

Teoreticky to lze provozovat. Poměrně dobře si na to jde vyzkoušet chování a fungování raidu, pro kritický nebo produkční provoz je potřeba ale pečlivě vybrat každou komponentu v cestě a ověřit, že to smysl dává.

Jako základní návod mohu doporučit tenhle článek https://www.linux.org/threads/usb-device-raid-1.4453/

by_cx

  • ****
  • 290
    • Zobrazit profil
    • E-mail
Re:RAID1 z USB diskov
« Odpověď #12 kdy: 07. 10. 2020, 15:20:31 »
No jo, jenže nějakej čínskej 7 W zdroj asi není úplně standardní prostředí. které by měl každý doma. Taky kabel na přenos dat a od myši maji stínění úplně někde jinde. Nejjednodušší je to prostě zkusit a sledovat dmesg jestli se ten disk odpojuje. V našem use-case to nedělá i když to mezi 3 a 6 ráno drtí disky naplno.

Re:RAID1 z USB diskov
« Odpověď #13 kdy: 07. 10. 2020, 16:14:16 »
a nestálost jejich device id na linuxu (stačí prohodit port nebo přidat redukci a linux je z toho zmatený).

Z čeho konkrétně je "zmatený"? Název disku nemá pro raid žádnou relevanci, standardně se používá UUID - partišny i přímo raidu. V serveru máme 30 disků a když se tam každý týden vloží další 4 disky na offline zálohy, jejich mdraidové pole se vždy sestaví automaticky zcela spolehlivě, protože je správně zavedeno v /etc/mdadm/mdadm.conf. A jména disků jsou pokaždé jiná (sdaa, sdac, cokoliv).

Citace
Problém s připojování lze vyřešit vytvořením fat partition na usb discích a připojení (mount) podle uuid, pak je to konzistentní. Nad tím pak může fungovat mdadm docela dobře.

Proč by měl dělat zrovna FAT partišnu? Jinak mdadm má vlastní typy https://raid.wiki.kernel.org/index.php/Partition_Types#What_Partition_Type . Mount dle UUID je zcela samozřejmý, ale to je UUID raidového pole, ne jednotlivých partišen v raidu

Re:RAID1 z USB diskov
« Odpověď #14 kdy: 07. 10. 2020, 18:05:34 »
@redustin

  • Na zálohy se nekladou takové požadavky jako na pracovní data. Záloha je "něco navíc".
  • Nedovedu si moc představit use case pro rotující sady disků v raidu.
  • RAID-1 je technologie zvyšující spolehlivost dat. USB je na připojení dat spíš méně spolehlivé (obecně). Kombinovat RAID a USB je kočkopes.
  • Další problémy, které se mohou i nemusí objevit, zde zazněly.