Diferència entre revisions de la pàgina «RAID»
(Hi ha 8 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 1: | Línia 1: | ||
RAID = Redundant Array of Independent Disks | RAID = Redundant Array of Independent Disks | ||
− | + | Aquest article mostra les comandes per utilitzar en Ubuntu Server. | |
− | |||
− | Aquest article mostra les comandes per | ||
− | |||
− | |||
− | |||
<br> | <br> | ||
== Introducció == | == Introducció == | ||
− | Per saber l'estat del nostre array de discs | + | Referències: |
+ | * Simulacions a: [http://www.onraidservices.com/raid_1.htm onraidservices.com]. | ||
+ | * http://en.wikipedia.org/wiki/RAID | ||
+ | * http://guylabs.ch/2013/09/17/create-a-software-raid1-with-mdadm-on-an-active-ubuntu-13-04-hard-drive/ | ||
+ | * Per saber l'estat del nostre array de discs: | ||
+ | *: <pre># cat /proc/mdstat</pre> | ||
+ | * ... | ||
+ | |||
<br> | <br> | ||
Línia 22: | Línia 24: | ||
=== Crear un nou array de discs === | === Crear un nou array de discs === | ||
− | .. | + | Mireu la [https://help.ubuntu.com/community/Installation/SoftwareRAID documentació oficial d'Ubuntu sobre RAID]. |
+ | Per crear un nou RAID: | ||
+ | |||
+ | # Utilitzar ''fdisk'' per crear les particions adequades. Els dos discs han de ser iguals. | ||
+ | # Crear l'array de discs. Per exemple, si tenim sdb i sdb per fer el RAID, podem fer: | ||
+ | #:<pre># mdadm --create md0 --raid-devices=2 --level=1 /dev/sdb1 /dev/sdc1</pre> | ||
+ | # Si volem crear un array "degradat" (amb només 1 disc) podem canviar la partició per "missing": | ||
+ | #:<pre># mdadm --create md0 --raid-devices=2 --level=1 /dev/sdb1 missing</pre> | ||
=== Chequejar l'estat d'un array === | === Chequejar l'estat d'un array === | ||
Línia 65: | Línia 74: | ||
<br> | <br> | ||
− | === | + | === Instal·lar GRUB a tots els elements de l'array === |
Convé instal·lar el gestor d'arranc GRUB als dos discs. De vegades només està instal·lat en un d'ells, i si volem canviar un disc pot ser que no ens arrenqui la màquina. | Convé instal·lar el gestor d'arranc GRUB als dos discs. De vegades només està instal·lat en un d'ells, i si volem canviar un disc pot ser que no ens arrenqui la màquina. | ||
# grub-install /dev/sda | # grub-install /dev/sda | ||
# grub-install /dev/sdb | # grub-install /dev/sdb | ||
− | ... | + | O potser millor reinstal·lar el GRUB de nou, ens demanarà a quines unitats fer-ho (sel·leccionar les dues unitats): |
+ | # dpkg-reconfigure grub-pc | ||
+ | |||
+ | Val a dir que val la pena testejar que el sistema pot arrencar amb un disc o amb l'altre per quan falli un dels dos discs. Ara bé, al testejar ens trobarem que resincronitzarà l'array de nou (comprovar amb <code>cat /proc/mdstat</code>). | ||
+ | |||
+ | <br> | ||
+ | |||
+ | === Desensamblatge d'una unitat RAID === | ||
+ | Per poder desensamblar una unitat RAID en Ubuntu. | ||
+ | |||
+ | Comprovem com està: | ||
+ | # cat /proc/mdstat | ||
+ | |||
+ | També podem mirar tenim algun RAID muntat a algun lloc del sistema d'arxius (ha de sortir com a unitat (/dev/mdXX): | ||
+ | # mount | ||
+ | |||
+ | Aturem la unitat: | ||
+ | # mdadm --stop /dev/mdXX | ||
+ | |||
+ | Podem marcar un element de l'array com a erroni: | ||
+ | # mdadm /dev/mdXX -f /dev/sda2 | ||
+ | |||
+ | I treure'l de l'array: | ||
+ | # mdadm /dev/mdXX -r /dev/sda2 | ||
+ | |||
+ | |||
+ | |||
+ | === Muntar una partició MD (RAID) des d'un live CD === | ||
+ | Pot ser útil per recuperar dades o recuperar sistemes. | ||
+ | |||
+ | # Arrenca des del live CD/pen | ||
+ | # Instal·la les utilitats<pre># apt-get install mdadm</pre> | ||
+ | # Crea els devices MD<pre># mdadm --assemble --scan</pre> | ||
+ | # munta'ls. Per exemple:<pre># mount /dev/md/0 /mnt</pre> | ||
<br> | <br> | ||
+ | |||
+ | == Arrencada en mode degradat == | ||
+ | Si tenim algun problema amb un disc i hem d'apagar la màquina, després no arrencarà ja que no troba tots els discs de l'array RAID. | ||
+ | |||
+ | En realitat sí que pot ja que en un sol disc ja hi ha totes les dades. | ||
+ | |||
+ | === Mode degradat en Debian === | ||
+ | En versions anteriors resultava més senzill (algunes permetien l'arrencada automàtica en mode degradat). | ||
+ | * Debian <8 : http://serverfault.com/questions/196445/boot-debian-while-raid-array-is-degraded | ||
+ | |||
+ | La versió 8 (Jessie) és més complexa d'arreglar. Aquí teniu el parche. | ||
+ | * http://www.informaticapressapochista.com/linux/debian-8-jessie-how-to-boot-degraded-raid1-software/ | ||
+ | * http://serverfault.com/questions/688207/how-to-auto-start-degraded-software-raid1-under-debian-8-0-0-on-boot | ||
+ | |||
+ | === Mode degradat en Ubuntu === | ||
+ | És més senzill, simplement habilitant la flag BOOT_DEGRADED=true | ||
+ | ... |
Revisió de 14:17, 13 set 2016
RAID = Redundant Array of Independent Disks
Aquest article mostra les comandes per utilitzar en Ubuntu Server.
Introducció[modifica]
Referències:
- Simulacions a: onraidservices.com.
- http://en.wikipedia.org/wiki/RAID
- http://guylabs.ch/2013/09/17/create-a-software-raid1-with-mdadm-on-an-active-ubuntu-13-04-hard-drive/
- Per saber l'estat del nostre array de discs:
# cat /proc/mdstat
- ...
RAID 0[modifica]
Stripping: més ràpid però menys tolerant a fallades (incrementa per dos el risc de fallada).
RAID 1[modifica]
Mirror: redundància de 2 discs. Eficiècia d'espai mínima (duplicat).
Crear un nou array de discs[modifica]
Mireu la documentació oficial d'Ubuntu sobre RAID.
Per crear un nou RAID:
- Utilitzar fdisk per crear les particions adequades. Els dos discs han de ser iguals.
- Crear l'array de discs. Per exemple, si tenim sdb i sdb per fer el RAID, podem fer:
# mdadm --create md0 --raid-devices=2 --level=1 /dev/sdb1 /dev/sdc1
- Si volem crear un array "degradat" (amb només 1 disc) podem canviar la partició per "missing":
# mdadm --create md0 --raid-devices=2 --level=1 /dev/sdb1 missing
Chequejar l'estat d'un array[modifica]
Mirem com tenim l'array:
# cat /proc/mdstat
Ha de donar-nos quelcom com:
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md1 : active raid1 sdb3[1] 869208896 blocks super 1.2 [2/1] [_U] md0 : active raid1 sdb1[1] 97589120 blocks super 1.2 [2/1] [_U]
En l'indicador [_U] veiem que el primer element de l'array no hi és present. Potser s'ha fet malbé. Canviem el disc (suposem que el tenim a /dev/sda) i reintroduirem el nou a l'array.
Afegir elements a l'array[modifica]
Suposem que acabem de posar un disc nou a /dev/sda. Podem començar per copiar la taula de particions que ja tenim a sdb per no haver de particionar-ho "a mà".
Generem un "informe" de la taula de particions correcta:
# sfidsk -d /dev/sdb > particions.txt
Copiem l'estructura de la taula de particions al disc sda:
# sfdisk /dev/sda < particions.txt
Afegim les particions del nous disc a l'array: OJU, fixeu-vos bé en el què feu!
# mdadm /dev/md0 -a /dev/sda1 # mdadm /dev/md1 -a /dev/sda3
A l'afegir un element a l'array les dades es resincronitzen automàticament:
# cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md1 : active raid1 sda3[2] sdb3[1] 869208896 blocks super 1.2 [2/1] [_U] [===>.................] recovery = 16.7% (145270080/869208896) finish=83.4min speed=144623K/sec
Quan arribi al 100% ja estarà al dia. Mentres, podem anar treballant normalment, tot i que no és recomanable fotre-li massa chicha fins que estigui recuperat. Acabarà de copiar-se en 83 minuts.
Instal·lar GRUB a tots els elements de l'array[modifica]
Convé instal·lar el gestor d'arranc GRUB als dos discs. De vegades només està instal·lat en un d'ells, i si volem canviar un disc pot ser que no ens arrenqui la màquina.
# grub-install /dev/sda # grub-install /dev/sdb
O potser millor reinstal·lar el GRUB de nou, ens demanarà a quines unitats fer-ho (sel·leccionar les dues unitats):
# dpkg-reconfigure grub-pc
Val a dir que val la pena testejar que el sistema pot arrencar amb un disc o amb l'altre per quan falli un dels dos discs. Ara bé, al testejar ens trobarem que resincronitzarà l'array de nou (comprovar amb cat /proc/mdstat
).
Desensamblatge d'una unitat RAID[modifica]
Per poder desensamblar una unitat RAID en Ubuntu.
Comprovem com està:
# cat /proc/mdstat
També podem mirar tenim algun RAID muntat a algun lloc del sistema d'arxius (ha de sortir com a unitat (/dev/mdXX):
# mount
Aturem la unitat:
# mdadm --stop /dev/mdXX
Podem marcar un element de l'array com a erroni:
# mdadm /dev/mdXX -f /dev/sda2
I treure'l de l'array:
# mdadm /dev/mdXX -r /dev/sda2
Muntar una partició MD (RAID) des d'un live CD[modifica]
Pot ser útil per recuperar dades o recuperar sistemes.
- Arrenca des del live CD/pen
- Instal·la les utilitats
# apt-get install mdadm
- Crea els devices MD
# mdadm --assemble --scan
- munta'ls. Per exemple:
# mount /dev/md/0 /mnt
Arrencada en mode degradat[modifica]
Si tenim algun problema amb un disc i hem d'apagar la màquina, després no arrencarà ja que no troba tots els discs de l'array RAID.
En realitat sí que pot ja que en un sol disc ja hi ha totes les dades.
Mode degradat en Debian[modifica]
En versions anteriors resultava més senzill (algunes permetien l'arrencada automàtica en mode degradat).
La versió 8 (Jessie) és més complexa d'arreglar. Aquí teniu el parche.
- http://www.informaticapressapochista.com/linux/debian-8-jessie-how-to-boot-degraded-raid1-software/
- http://serverfault.com/questions/688207/how-to-auto-start-degraded-software-raid1-under-debian-8-0-0-on-boot
Mode degradat en Ubuntu[modifica]
És més senzill, simplement habilitant la flag BOOT_DEGRADED=true ...