Fórum Root.cz

Hlavní témata => Hardware => Téma založeno: novak_josef_2019 07. 09. 2021, 20:06:43

Název: Disk mirroring
Přispěvatel: novak_josef_2019 07. 09. 2021, 20:06:43
Mám dvě otázky k raidu, kde s raidem jsem nikdy nedělal.

1) Když by chtěl k existujícímu disku přidat další, který by měl ten existující zrcadlit, půjde to bez ztráty dat?

2) Když mám dva disky v raidu se zrcadlením, které z raidu odeberu, budou na každém zvlášť data čitelná?
Název: Re:Disk mirroring
Přispěvatel: RDa 07. 09. 2021, 20:28:54
1) v pripade MD (linux sw raid) je mozne specifikovat stary metadata format, ktery se pouziva pro boot partisny ktere maji byt citelne biosem, ktery o MD nic nevi. Pak potrebujete jen o trocha zmensit partisnu a raid pole vytvorit trikem s disk+missing, a pak pridat druhej disk az pozdeji

Alternativne lze pouzivat DM a raid vytvaret runtime, bez autokonfigurace. Ale to je drbani praveho ucha levou rukou.


2) ano, to je prece smysl toho mirroru. Ale nepocitej s tim, ze to lze bez ztraty dat pridat zpet do mirroru a sesynchronizovat korektne, pokud se nebudes chovat velice specialne k tomu odpojenemu disku (loop/ro a az pak mount)
Název: Re:Disk mirroring
Přispěvatel: novak_josef_2019 09. 09. 2021, 23:13:01
Díky.

Když základní deska raid nepodporuje, tak ho nevytvořím ani softwarově?
Název: Re:Disk mirroring
Přispěvatel: k3dAR 10. 09. 2021, 02:57:37
Když základní deska raid nepodporuje, tak ho nevytvořím ani softwarově?
nevim co chtel rict RDa tim "biosem, ktery o MD nic nevi", protoze to je vec bootloaderu(a Grub2 umi /boot na raidu,lvm,luks, atd..), kterej v pripade Legacy je v MBR (ktere neni mirrorovane), v pripade UEFI je v EFI oddilu(ktery nemuzes mirrorovat), kazdopadne samozrejme muzes udelat sw raid i kdyby radic raid nepodporoval, NAOPAK i kdyby ho radic podporoval, udelej sw raid ;-)

ad 1) mozna jsou i nejake "magicke" postupy, ale obecne "pridat" non-raid disk do raidu s novym diskem se dela tak, ze:
- na novem disku vytvoris raid1 v degradovanem rezimu
- z puvodniho disku na novej raid zkopirujes data (tim se ulozi zatim jen v tom novem disku)
- puvodni disk pridas do raidu (pret tim je vhodne zalohovat, protoze pri tom pridani se smaze a data v raidu kdyby si spatne zkopiroval, tak uz je nemas :)
- raid provede sync dat na puvodni disk kterej uz ma v raidu
Název: Re:Disk mirroring
Přispěvatel: RDa 10. 09. 2021, 03:27:52
nevim co chtel rict RDa tim "biosem, ktery o MD nic nevi", protoze to je vec bootloaderu(a Grub2 umi /boot na raidu,lvm,luks, atd..), kterej v pripade Legacy je v MBR (ktere neni mirrorovane), v pripade UEFI je v EFI oddilu(ktery nemuzes mirrorovat)

Proc bys ho nemohl mirrorovat? To mi chces rict, ze U/EFI boot je single point of failure?

Smyslem mirroru je prece mit dva (ci vic) zcela identickych disku, abych mohl bootovat z kterehokoliv. Pokud ten mirror nevytvari HW raid, coz je nejspis jednodussi pro EFI a cely bootovaci proces, tak je snad zadouci, abys mel na obou discich stejny obsah. A nez drzet dve EFI partisny ve stejnem stavu rucni synchronizaci, tak bych prave na to pouzil legacy metadat format, s MD superblokem na konci partisny.
Název: Re:Disk mirroring
Přispěvatel: k3dAR 10. 09. 2021, 15:12:30
@RDa ok, nikdy sem to nezkoumal, ale asi mas pravdu :) resp. z ArchWiki (https://wiki.archlinux.org/title/EFI_system_partition) odkaz na in-depth guide (https://outflux.net/blog/archives/2018/04/19/uefi-booting-and-raid1/) s tim ze to zakoncuje zminkou ze novej Grub (resp. pise v *buntu 20.04) lze nastavit instalaci na vice disku (uz i v UEFI rezimu), takze ESP neni na RAIDu potreba :)
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 10. 09. 2021, 16:15:59
2) Když mám dva disky v raidu se zrcadlením, které z raidu odeberu, budou na každém zvlášť data čitelná?
Tohle obecně rozhodně neplatí. Pokud budete mít disky z RAIDu, nějaké disky disky z RAIDu odeberete (tolik, kolik daný RAID umožňuje), bude RAID v degradovaném stavu, ale data z toho RAIDu stále přečtete. Ale nepočítejte s tím, že vytáhnete disk z RAIDu, šoupnete ho do jiného počítače jako obyčejný disk a normálně budou data čitelná.

Stačí si uvědomit, že např. RAID 5 ukládá v třídiskové variantě tak, že na jeden disk uloží blok dat, na druhý disk druhý blok dat a na třetí disk XOR těchto dvou bloků. U dalších disků je to prohozené. Ve vícediskových variantách je to podobné, pokaždé tam někde bude XOR dat. Takže pokud z tohohle RAIDu vytáhnete disk, budete v některých blocích mít XOR dvou bloků dat, a z něj data bez jednoho z těch původních bloků nedostanete.

I když nebudu brát tenhle případ a omezím se na RAID 1, pořád je potřeba na tom disku mít uložená nějaká metadata RAIDu navíc oproti běžnému disku. U hardwarového RAIDu navíc těm metadatům typicky rozumí jenom ten hardwarový RAID, takže obnovovat data z disků vytažených z RAIDu je „lahůdka“.

Nic z toho nevylučuje, že půjde jednoduchý disk povýšit na RAID (samozřejmě s přidáním dalších disků) bez nutnosti ručního kopírování všech dat, ale to záleží na možnostech konkrétního RAIDu. A stejně to bude fungovat tak, že si tam ten RAID udělá prostor na svoje metadata a „přepne“ disk do RAIDu.
Název: Re:Disk mirroring
Přispěvatel: by_cx 10. 09. 2021, 17:08:26
Pokud vytáhnu disk ze soft RAIDu a dám ho do jiného PC a zároveň na tom disku bude vše potřebné k bootování (EFI oddíl, MBR), tak to normálně naběhne v degradovaném stavu. Bavíme se samozřejmě o Linuxu.
Název: Re:Disk mirroring
Přispěvatel: RDa 10. 09. 2021, 17:31:28
2) Když mám dva disky v raidu se zrcadlením, které z raidu odeberu, budou na každém zvlášť data čitelná?
Tohle obecně rozhodně neplatí. Pokud budete mít disky z RAIDu, nějaké disky disky z RAIDu odeberete (tolik, kolik daný RAID umožňuje), bude RAID v degradovaném stavu, ale data z toho RAIDu stále přečtete. Ale nepočítejte s tím, že vytáhnete disk z RAIDu, šoupnete ho do jiného počítače jako obyčejný disk a normálně budou data čitelná.

Stačí si uvědomit, že např. RAID 5 ukládá v třídiskové variantě tak, že na jeden disk uloží blok dat, na druhý disk druhý blok dat a na třetí disk XOR těchto dvou bloků. U dalších disků je to prohozené. Ve vícediskových variantách je to podobné, pokaždé tam někde bude XOR dat. Takže pokud z tohohle RAIDu vytáhnete disk, budete v některých blocích mít XOR dvou bloků dat, a z něj data bez jednoho z těch původních bloků nedostanete.

Tohle je klasicka Jirsakovina ... vlakno se jmenuje mirroring, tazatel se pta na dva disky v zrcadleni, ale tady se musi rozepisovat o R5 a xorovani.

Pokud by pouzival explicitni DM (device mapper) na tvorbu mirroru (metadata mimo disk), pripadne MD (linux sw raid) se superblokem na konci partisny, tak opravdu lze vzit disk a normalneho precist. Je to nestandardni uziti, ale jde to. Ale pak nepocitejte s tim, ze takovy disk lze zapojit zpet do puvodniho raidu, protoze tam muzete mit jine data - napr. zmenene last access time a pod.
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 10. 09. 2021, 17:40:40
Pokud vytáhnu disk ze soft RAIDu a dám ho do jiného PC a zároveň na tom disku bude vše potřebné k bootování (EFI oddíl, MBR), tak to normálně naběhne v degradovaném stavu. Bavíme se samozřejmě o Linuxu.
Vy si představujete jeden konkrétní případ, kdy máte vše na dvou discích v RAID 1, ale píšete o tom, jako kdyby to platilo obecně. Jenže to obecné tvrzení neplatí.

Za prvé, RAID nemá nic společného s nějakým nabíháním – nabíhá vám asi systém. Když budete mít samostatný RAID na data, nebude na něm žádný OS a po přendání jednoho disku do jiného PC vám nic nenaběhne, i kdyby tam byl EFI oddíl a MBR (ale co by na RAIDu pro data dělal, že).

Za druhé, když vytáhnete disk z RAID 0, i kdybyste tam měl původně celý systém, nenaběhne vám, protože bude chybět půlka dat. Když vytáhnete jeden disk z RAID 1E, kde byly více než dva disky, nejspíš vám také budou chybět data.

Za třetí, když vytáhnete disk z RAID 5 nebo 6, zase vám tam bude spoustu bloků chybět.

Pokud si představujete svůj domácí počítač, ve kterém máte jen dva disky v softwarovém RAID 1 a máte na obou discích správně udělanou i tu ne-RAID část, naběhne vám opravdu systém jenom s jedním z těch disků a RAID pak bude v degradovaném režimu.
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 10. 09. 2021, 17:48:36
Tohle je klasicka Jirsakovina ... vlakno se jmenuje mirroring, tazatel se pta na dva disky v zrcadleni, ale tady se musi rozepisovat o R5 a xorovani.
Když tazatel napíše, že o RAIDu vůbec nic neví, je trochu podivné předpokládat, že používá absolutně správnou terminologii. Stejně tak je podivné předpokládat, že pochopí, že odpovědi se týkají právě jen této situace a přidáním třetího disku se může situace diametrálně změnit. A předpokládat, že je automaticky řeč o linuxovém RAIDu, je vyloženě datům nebezpečné.

Až si tazatel koupí dvoudiskový NAS, do kterého dá dva disky v RAIDu v domnění, že kdyby se cokoli stalo, vytáhne disk z NASu, strčí ho do linuxového počítače a data bez problémů přečte, budete mu bezplatně obnovovat data, až zjistí, že to takhle jednoduché není?
Název: Re:Disk mirroring
Přispěvatel: by_cx 10. 09. 2021, 17:58:36
Citace
Vy si představujete jeden konkrétní případ, kdy máte vše na dvou discích v RAID 1, ale píšete o tom, jako kdyby to platilo obecně. Jenže to obecné tvrzení neplatí.

Já si nic nepředstavuju, jen vycházím z původní otázky.

Citace
2) Když mám dva disky v raidu se zrcadlením, které z raidu odeberu, budou na každém zvlášť data čitelná?

Nemusel jsem mluvit o bootu, to už jsem si tam domyslel sám na základě toho messu co tu vzniknul, takže to ještě zjednoduším. Oba disky, pokud byly v SW RAIDu 1 v Linuxu, budou obsahovat stejná data a půjdou přečíst každý zvlášť. HW RAID bych tu úplně vynechal, protože ten, původní tazatel, téměř jistě nemá.
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 10. 09. 2021, 18:07:51
Já si nic nepředstavuju, jen vycházím z původní otázky.
Ke které jste si leccos domyslel, například že jde o Linux a že tam bude celý systém.

Oba disky, pokud byly v SW RAIDu 1 v Linuxu, budou obsahovat stejná data a půjdou přečíst každý zvlášť. HW RAID bych tu úplně vynechal, protože ten, původní tazatel, téměř jistě nemá.
V softwarovém RAIDu v Linuxu budou spíš oddíly než disky. Vedle softwarového RAIDu v Linuxu neexistuje jen hardwarový RAID, ale také jinak řešený softwarový RAID – třeba takový, který je součástí řadiče disků (dnes už to mají snad všechny „konzumní“ základní desky), nebo RAID v komerčním NASu (který je sice postaven na linuxovém RAIDu, ale často má něco navíc). Mimochodem, jsme v sekci hardware, takže já bych za ten váš předpoklad linuxového softwarového RAIDu na PC rozhodně ruku do ohně nedal.
Název: Re:Disk mirroring
Přispěvatel: by_cx 10. 09. 2021, 22:14:27
Myslím, že obě otázky už byly zodpovězeny a není potřeba to tu komplikovat tím samým pořád dokola :-)
Název: Re:Disk mirroring
Přispěvatel: k3dAR 11. 09. 2021, 07:58:46
@Filip Jirsák

neni potreba si moc domejslet, tazatel pise k JEDNOMU disku pridat DRUHEJ a MIRROROVAT, takze je opravdu offtopic tu rozebirat chovani vsech ostatnich raidu krome RAID1 tedy MIRROR a ohrazovat se proti prohlaseni o RAID1 ze neplati u ostatnich RAIDu ;-)

tazatel by ale mohl doplnit, zda pokud NEuvedl ze jde o Windows plati ze jde o Linux... a treba take to zda jde jen o datovy disk, nebo zaroven systemovy...
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 11. 09. 2021, 09:45:06
neni potreba si moc domejslet, tazatel pise k JEDNOMU disku pridat DRUHEJ a MIRROROVAT, takze je opravdu offtopic tu rozebirat chovani vsech ostatnich raidu krome RAID1 tedy MIRROR a ohrazovat se proti prohlaseni o RAID1 ze neplati u ostatnich RAIDu ;-)
Když není potřeba si moc domýšlet, pak nevím, proč si tu někteří domýšlejí, že jde o jediné dva disky v běžném počítači s linuxem a linuxovým RAIDem.

Když tazatel napíše, že o RAIDu vůbec nic neví, nevidím žádný problém v tom doplnit, že existují i další typy RAIDů, které se chovají dost jinak. Zejména když požadovaný RAID 1 je snad jediná výjimka, u které může fungovat to, že vytáhnete disk z pole a data normálně přečtete.
Název: Re:Disk mirroring
Přispěvatel: RDa 11. 09. 2021, 11:03:42
neni potreba si moc domejslet, tazatel pise k JEDNOMU disku pridat DRUHEJ a MIRROROVAT, takze je opravdu offtopic tu rozebirat chovani vsech ostatnich raidu krome RAID1 tedy MIRROR a ohrazovat se proti prohlaseni o RAID1 ze neplati u ostatnich RAIDu ;-)
Když není potřeba si moc domýšlet, pak nevím, proč si tu někteří domýšlejí, že jde o jediné dva disky v běžném počítači s linuxem a linuxovým RAIDem.

Jsme na linuxovem foru - takze je o linux, pokud se nezminuje explicitne win.

Tazatel nepise ze by mel nejaky radic/server/nas, takze zustava desktopova varianta - to neni domejsleni, ale bereme tu nejbeznejsi variantu ktera novacky potka. A tam neni co jineho nasazovat/doporucit, nez automaticky sw raid (MD).
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 11. 09. 2021, 11:28:08
Jsme na linuxovem foru - takze je o linux, pokud se nezminuje explicitne win.

Tazatel nepise ze by mel nejaky radic/server/nas, takze zustava desktopova varianta - to neni domejsleni, ale bereme tu nejbeznejsi variantu ktera novacky potka. A tam neni co jineho nasazovat/doporucit, nez automaticky sw raid (MD).
Neexistuje jen Linux a Windows, je mnoho dalších variant – například teď jsme v sekci hardware. Nejběžnější varianty, se kterými se nováček potká, souvisí právě s hardwarem – jsou to „pseudo hardware RAIDy“ implementované v řadičích na základních deskách a vedle toho NAS pro SOHO.

Než si něco domýšlet a tajit při odpovědi, co jste si domyslel, je lepší popsat různé možnosti. Tazatel alespoň zjistí, že si musí dát pozor i na věci, o kterých třeba před tím nevěděl. Nebo alespoň upřesní svůj dotaz. Ale tvrdit někomu, že když vytáhne disk z jakéhokoli RAID 1 pole, normálně ho kdekoli přečte, to je dost zákeřné.
Název: Re:Disk mirroring
Přispěvatel: RDa 11. 09. 2021, 11:38:55
Jsme na linuxovem foru - takze je o linux, pokud se nezminuje explicitne win.

Tazatel nepise ze by mel nejaky radic/server/nas, takze zustava desktopova varianta - to neni domejsleni, ale bereme tu nejbeznejsi variantu ktera novacky potka. A tam neni co jineho nasazovat/doporucit, nez automaticky sw raid (MD).
Neexistuje jen Linux a Windows, je mnoho dalších variant – například teď jsme v sekci hardware. Nejběžnější varianty, se kterými se nováček potká, souvisí právě s hardwarem – jsou to „pseudo hardware RAIDy“ implementované v řadičích na základních deskách a vedle toho NAS pro SOHO.

Než si něco domýšlet a tajit při odpovědi, co jste si domyslel, je lepší popsat různé možnosti. Tazatel alespoň zjistí, že si musí dát pozor i na věci, o kterých třeba před tím nevěděl. Nebo alespoň upřesní svůj dotaz. Ale tvrdit někomu, že když vytáhne disk z jakéhokoli RAID 1 pole, normálně ho kdekoli přečte, to je dost zákeřné.

Pokud by se jednalo o NAS tak by to snad napsal, minimalne znacku.

Ale doporucuji vam nic nad ramec tematu nerozebirat - protoze tim jenom plevelite diskuzi - a nejenom tuto. Vas pristup cpat vsude vsechno je jednoduse obtezujici.

A at se tazatel prosim vyjadri, jaka je konkretne jeho situace co se hw/sw a obsahu tyce.
Pak lze nalezt idealni radu prave pro nej.
Název: Re:Disk mirroring
Přispěvatel: Filip Jirsák 11. 09. 2021, 11:53:46
Ale doporucuji vam nic nad ramec tematu nerozebirat - protoze tim jenom plevelite diskuzi - a nejenom tuto.
Ne, diskusi plevelíte vy a další, kteří máte potřebu na jedno fakticky správné doplnění reagovat deseti komentáři o tom, jak tohle tazatel určitě nemyslel a určitě myslel tamto. Jeden můj komentář mohl tazatel klidně ignorovat, kdyby zjistil, že se ho v tuto chvíli netýká. A třeba by si vzpomněl, až bude do RAIDu přidávat třetí disk, že se to bude chovat dost jinak, než RAID 1. Jenže po tom jednom mém komentáři následuje 12 komentářů mimo téma, takže tazatel už to nejspíš dávno vzdal.
Název: Re:Disk mirroring
Přispěvatel: František Ryšánek 11. 09. 2021, 14:02:47
Taky si přisadím:

2) Když mám dva disky v raidu se zrcadlením, které z raidu odeberu, budou na každém zvlášť data čitelná?

Řekněme, že se jedná o linuxový nativní MD RAID, použitý obvyklým způsobem = dva fyzické disky, na nich identická tabulka rozdělení, jeden či více oddílů typu 0xFD = Linux RAID, následně tyto oddíly spárované, z těchto párečků vzejdou jednotlivá bloková zařízení md0, md1 atd.   První stage bootloaderu (asi grub) je nainstalovaný v MBR obou disků. Na takto ošetřených discích nainstalován bootovatelný Linux.

Toto by mělo nastartovat skutečně i z jednotlivého disku = když druhý disk odpojíte. Klidně za studena. Můžete zastudena mirror roztrhnout na dva jednotlivé disky, vrazit do dvou počítačů, a každý zvlášť nastartuje, se zrcadly v degradovaném režimu. Můžete třeba přidat do každého PC druhý disk a provedením obnovy ta zrcadla dokompletovat...

A je v podstatě jedno (irelevantní/kolmé) zda formát metadat / MD superbloku je "starý" (a zrcadla si automaticky detekuje=páruje kernel) nebo "nový" (a zrcadla si při startu páruje mdadm v rámci initrd). Rozdíl v tomto bodě vyvstane, pokud se pokusíte takový disk resp. volume připojit v "jiné" instanci Linuxu, která si nabootovala nějak po svém. S novým superblokem je to trochu práce navíc. Ale zas máte k dispozici bitmapu, které oblasti jsou synchronní apod.

Mimo Linux:

## Intel onboard soft-RAID:
Soft-RAID přítomný v PC BIOSech a vázaný na konkrétní čipsety (SATA řadiče) Intel se chová tak, že když disk připojíte jednotlivě, bude se PC tvářit, jako by se nechumelilo, a bude s ním zacházet, jako s jednotlivým diskem - a data by měla být normálně viditelná, jako kdyby žádný mirror nikdy neexistoval.

## Areca:
Pokud seberete za studena jeden ze dvou disků v mirroru Arece, tak Vám arečí BIOS při bootu nahlásí "incomplete RAID" a nenabídne ho k bootování (a zřejmě ani následně jako blokové zařízení vyššímu OS). Proč: protože firmware nezaznamenal úmrtí disku za jízdy. Tedy k němu muselo dojít za studena. Firmware bere ohled na značnou pravděpodobnost, že k odpojení jednoho z disků došlo nejspíš omylem při nějaké údržbě hardwaru. A tedy když na to upozorní, obsluha chybku odstraní, a pole může nastartovat rovnou v optimálním režimu, nemusí se rebuildovat. Tuhle "stopku pro incomplete RAID" lze přemoci, tuším se ten příkaz jmenuje "make volume online".

Prakticky jakýkoli RAID si na přeživším disku v metadatech poznačí, že došlo k rozpadu (a kdy), a že došlo následně k nějakým úpravám dat. Pokud roztrhnete mirror a pak disky provozujete každý zvlášť degradovaný, RAID už Vám nikdy nedovolí, prostě je spojit dohromady. Bude se tvářit, že vidí dvě degradované trosky. Ledaže z jednoho disku RAID smahnete (ideálně DDčkem celoplošně) a podsunete ho RAIDovému firmwaru jakožto spare pro obnovu = provede se rebuild, a řekl jste jasně, odkud kam.

## Adaptec:
A k tomu další žertovná příhoda - budu se opakovat. Toto dělá možná dodnes Adaptec (AAC RAID):
1.) vytvoříte mirror ze dvou disků. Nainstalujete nějaký operační systém.
2.) v rámci nácviku disaster recovery jeden z disků v mirroru vytrhnete - zaživa nebo za studena, to je asi jedno.
3.) vložíte čistý disk, provedete rebuild, jede se dál.
4.) stroj uvedete do ostrého provozu.
5.) zbyl vám disk, který jste při simulaci výpadku vytrhli. S úmyslem schovat si ho jako záložní (cold spare) ho ještě naposled připojíte samotný k řadiči, vlezete do firmwaru RAIDu a trosku pole na disku zrušíte. Následně takto smazaný disk uložíte do krabice od bot s nápisem "železná zásoba".
6.) po létech ostrého provozu se Vám stane, že jeden z disků v mirroru umře. Se zívnutím ho vymontujete, šáhnete poslepu do krabice od bot, vložíte záložní disk, nastartujete, když tu náhle...
7.) CO TO? Kde je moje pole? Kde jsou moje ostrá data? !!!
    Inu: Zed's dead baby, Zed's dead...
Můžete zkusit nějaký nástroj na filesystem recovery - EaseUS, extundelete apod.

Vysvětluji si to tak, že firmware Adaptecu našel na "cold spare" disku nejspíš něco jako poslední záznam v žurnálu, že RAID volume s magic numberem b00b1e5 byl zrušen - a tato operace má i po těch letech novější pořadové číslo nebo časovou značku, než tentýž žurnál na přeživším disku z rozpadlého pole, které jste se snažil zachránit. Hard cheese. Pozoroval jsem to asi třikrát, z toho jednou se to stalo mně.