Portál AbcLinuxu, 7. května 2025 14:53

Dotaz: Větší disky do SW RAID1

30.6.2016 09:08 hw | skóre: 23 | blog: Digital Design
Větší disky do SW RAID1
Přečteno: 520×
Odpovědět | Admin
Potřebuji nahradit stávající disky v Linux RAID1 za větší. Napadají mě dvě hlavní možnosti jak to udělat:

1. Skutečně nahradit disky v RAIDu. Takže postupně pro oba disky třeba mdadm --fail, mdadm --remove, mdadm --add, mdadm --grow a nakonec resize2fs. Nebo asi bezpečněji nejdříve přidat nové disky a pak teprve odebrat staré. Tam ale bude třeba asi ještě několikrát mdadm --grow navíc.

2. Vytvořit úplně nový RAID1 a překopírovat na něj data ze starého. Jsem přitom schopný zajistit, aby se během kopírování na RAID nesahalo odjinud.

Zajímalo by mě, která metoda bude rychlejší. Čím kopírovat v případě druhé varianty (cp, rsync, dd, ...)?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

30.6.2016 11:23 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud máš volné sloty a porty, pak je samozřejmě možnost 2) rychlejší, protože jedou oba disky najednou. Ale je s tím víc ruční práce. Pokud je obsazeno jen málo prostoru, použil bych cp -a, jinak dd + fs resize. V případě dd zůstane uuid, tudíž se nemusí měnit definice ve fstabu. Samozřejmě je potřeba nové pole přidat do /etc/mdadm/mdadm.conf a případně rebuildnout initramfs, aby se tam změněný konfig nakopíroval.

Osobně dávám přednost cestě A), protože je s tím míň práce (ale trvá to déle).
30.6.2016 13:00 GeorgeWH | skóre: 42
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
s tym dd, resp. aj s moznostou (a), to nemusi byt take jednoduche. pokial je na starych diskoch mbr a nove disku budu vacsie ako 2tb, tak to nepojde, a bude musiet vytvorit nove pole a data skpirovat.
30.6.2016 13:06 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Jistě, je potřeba vědět, co se dělá.

V každém případě jsem nemyslel dd na celý disk, ale na partišnu na ručně vyrobeném/nastartovaném mdraidu - tedy dd filesystému, ne raidu.
30.6.2016 13:10 GeorgeWH | skóre: 42
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
ako sa dd-ckuje filesystem?
30.6.2016 13:30 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
dd if=/dev/md1 of=/dev/md2 bs=1M
+ následný resize fs
30.6.2016 13:41 GeorgeWH | skóre: 42
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
hmm toto som nikdy neskusal, ale asi to bude podobne, ako zalohovanie a obnova virtualu na lvm pomocou dd.
30.6.2016 14:01 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Je to standardní kopie blokového zařízení, funguje na cokoliv.
cezz avatar 30.6.2016 11:33 cezz | skóre: 24 | blog: dm6
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Odpovědět | | Sbalit | Link | Blokovat | Admin
Myslim, ze to velmi zalezi od povahy dat. Ak mas sucasny raid takmer plny a je tam kopec malych suborov, tak bude asi rychlejsi celodiskovy sync (cize 1. moznost), naopak ak je tych dat stale relativne malo, je to zopar velkych suborov, tak rsync medzi dvomi RAID bude zrejme rychlejsi.

Ja osobne by som na to siel tym 2. sposobom tak ci tak. Pride mi to bezpecnejsie, zaroven si defragmentujes filesystem a teoreticky to nebude zas tak o moc pomalsie.

Od istej doby md raid a vymene diskov za iny typ za behu az tak moc neverim - viz napriklad tento wontfix bug, ktory sa mi podarilo zreprodukovat nad dost dolezitymi datami, ktore sme sa snazili odzalohovat. (data prezili, ale bolo to peknych par hodin roboty) A to sme ani nepouzili USB ale loopback.

Nech ma niekto neberie zle, md raid mam rad (ono ten problem je beztak v spolupraci roznych vrstiev nad tym) ale vsetko ma svoje limity. Ak mas dostupne zalohy, tak smelo do toho.

Ale zas ak mas zalohy tak by som sa len uistil, ze su odzalohovane posledne zmeny, stopol stary raid, vymenil disky, vytvoril novy raid a obnovil data zo zalohy - ako bonus si pri tom otestujes ci ti tie zalohy naozaj funguju a ako fallback mozes stale pripojit ten stary raid a urobit rsync.
Computers are not intelligent. They only think they are.
30.6.2016 12:31 hw | skóre: 23 | blog: Digital Design
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zatím díky všem za praktické rady. Doplnil bych další informace.

Současný RAID1 je 1TB zaplněný na 98%. Z toho nějakých 18% jsou různé FPGA/PCB/SW projekty plné malých souborů. 80% RAIDu zabírají archivy s instalacemi všech verzí vývojových systémů, které používáme za posledních 10-12 let. To jsou většinou velké (jednotky GB) TAR archivy.

Volné porty a sloty pro přidání disků mám, takže s přidáním do pole a grow problém není stejně jako s vytvořením nového pole.

Asi bych tedy zvolil druhou variantu (nový RAID a zkopírovat). Nemám moc rád resize2fs apod., takže bych kopíroval buď cp nebo rsync. Bude mezi nimi rozdíl v rychlosti?
30.6.2016 13:08 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Použil bych cp -a, při kopírování na prázdný fs nemá rsync přidanou hodnotu.
Jendа avatar 30.6.2016 13:29 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
cp -a zbytečně seekuje, když to má skoro plné, kopírovat FS sekvenčně bude mnohem rychlejší.
30.6.2016 13:33 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Jak sekvenčně bez resize fs? To by se docela občas hodilo, díky
Jendа avatar 30.6.2016 13:43 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
No zkopíruješ přímo blockdevice a pak uděláš resize2fs (např.), což jenom nafoukne místo, ale soubory nerozhazuje.
30.6.2016 13:49 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Jasně, ale resize právě tazatel dle svých slov nechce, proto ten cp
30.6.2016 14:12 hw | skóre: 23 | blog: Digital Design
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Tak ono je toho víc, ale myslím, že cp bude stejně nejlepší:
  • přecházím z MBR na GPT (původní disky 1TB, nové 4TB)
  • na starém poli je LVM, na novém ho nechci, protože mi pro tohle konkrétní využití nic nepřináší
  • líbí se mi přirozená defragmentace souborů při kopírování
  • možná dokonce hodím na nové pole jiný FS (i když tím si nejsem jistý, protože to běží na CentOS 6, takže zůstat u EXT4 bude asi nejbezpečnější - na CentOS 7 bych použil asi XFS)
30.6.2016 14:21 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Jasně, vždy záleží na konkrétních potřebách.
Ruža Becelin avatar 30.6.2016 15:30 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Na CentOS 6 funguje XFS taky
30.6.2016 19:06 humming elephant
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Tak kdyz tam mas LVM, tak bych to resil prave pomoci pvmove, ne? Downtime jen kvuli instalaci noveho a vyjmuti stareho zeleza (pokud vubec) a nemusis u toho sedet a cekat. Prej nic neprinasi.
30.6.2016 15:20 hw | skóre: 23 | blog: Digital Design
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak super. Dal jsem nové disky do serveru, vytvořil jsem nové pole a během resyncu najednou log plný tohohle:
Jun 30 14:57:29 server kernel: ata5.00: exception Emask 0x0 SAct 0x40 SErr 0x0 action 0x0
Jun 30 14:57:29 server kernel: ata5.00: irq_stat 0x40000008
Jun 30 14:57:29 server kernel: ata5.00: failed command: READ FPDMA QUEUED
Jun 30 14:57:29 server kernel: ata5.00: cmd 60/08:30:58:64:d8/00:00:32:00:00/40 tag 6 ncq 4096 in
Jun 30 14:57:29 server kernel:         res 41/40:00:58:64:d8/00:00:32:00:00/40 Emask 0x409 (media error) < F >
Jun 30 14:57:29 server kernel: ata5.00: status: { DRDY ERR }
Jun 30 14:57:29 server kernel: ata5.00: error: { UNC }
Jun 30 14:57:30 server kernel: ata5.00: configured for UDMA/133
Jun 30 14:57:30 server kernel: ata5: EH complete
Může to být kabelem, řadičem nebo bude v pytli úplně nový disk? Ze smartu to nevypadá.
Jendа avatar 30.6.2016 15:42 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Když to řeklo přímo media error, tak to asi bude v disku. Problém je, že když to není ve smartu (disk možná ve smartu kecá), tak se to bude blbě reklamovat.
30.6.2016 16:10 hw | skóre: 23 | blog: Digital Design
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1

Tak to vypadá na reklamaci:

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed: read failure       90%         2         849846108
# 2  Short offline       Completed: read failure       90%         2         849846110
# 3  Extended offline    Completed: read failure       90%         2         849846104
30.6.2016 16:26 dustin | skóre: 63 | blog: dustin
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
To asi jo
1.7.2016 09:58 Zdenda
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
Klasický DOA. Nějaká 3TB?
1.7.2016 10:53 hw | skóre: 23 | blog: Digital Design
Rozbalit Rozbalit vše Re: Větší disky do SW RAID1
4TB WD Red

A to jsem ještě chvíli přemýšlel vytvořit to nové pole s --assume-clean. Naštěstí jsem to neudělal, takže se mrtvola projevila hned.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.