Академический Документы
Профессиональный Документы
Культура Документы
www.4linux.com.br
ence
Business Intelig lx8
F
u/
.m
va
http://
BPM
http://va.mu/EuiT
Servidor Java EE
http://va.mu/FlyB
PostgreSQL
http://va.mu/EuhV
Monitoramento
http://va.mu/EukN
Virtualizao
http://va.mu/Flxl
Groupware Yj
u/FN
http://va.m
Backup
http://va.mu/Flxr
Auditoria e Anlise
http://va.mu/Flxu
Segurana
http://va.mu/Flxy
Ensino Distncia
http://va.mu/Flxc
Integrao Continua
http://va.mu/FlyD
GED - ECM
http://va.mu/Flx3
Alta Disponibilidade
http://va.mu/FNbL
Infraestrutura Web
http://va.mu/Flxi
Implantao garantida
http://va.mu/GcFv
Contedo
16 Implementando RAID + LVM
16.1 Introduo Terica - RAID . . . . . . . . . . . . . . . . . . . . . . . . .
6
6
Captulo 16
Implementando RAID + LVM
[ http://web.mit.edu/rhel-doc/3/rhel-sag-pt_br-3/ch-raid-intro.html ]
4Linux www.4linux.com.br
Pgina 7
4Linux www.4linux.com.br
[ http://web.mit.edu/rhel-doc/3/rhel-sag-pt_br-3/s1-raid-approaches.html ]
Tipos de RAID
2
3
Pgina 8
4Linux www.4linux.com.br
6
7
RAID 1 (Mirroring): O nvel mais utilizado. Sua principal finalidade prover redundncia dos dados. Esta garantida pela duplicao dos dados que so gravados
em cada par de discos, logo, se um deles falhar, o outro continuar operando e mantendo a informao disponvel, at que a substituio do disco defeituoso seja feita.
O ganho de desempenho est na leitura, uma vez que os dados so lidos em partes iguais e simultaneamente de todos os discos. A desvantagem desse nvel que
s metade do volume total de armazenamento nos discos utilizados ficar disponvel para o sistema operacional. preciso no mnimo dois discos para implementar
RAID 1, sempre em pares.
DICA DE SEGURANA: RAID 1 espelhado no backup. Se voc apagar um arquivo acidentalmente, esse arquivo vai ser apagado em todos os discos.
Sempre tenha uma CPIA dos dados.
2
3
4
5
6
7
Pgina 9
4Linux www.4linux.com.br
RAID 6: um padro relativamente novo, suportado por apenas algumas controladoras. Ele semelhante ao RAID 5, porm usa o dobro de bits de paridade,
garantindo a integridade dos dados caso at 2 dos HDs falhem ao mesmo tempo. Ao
usar 7 HDs de 500 GB em RAID 6, por exemplo, teramos 2.5 TB para dados mais 1
TB de cdigos de paridade.
A percentagem de espao sacrificado decai conforme so acrescentados mais discos, de forma que o uso do RAID 6 vai tornado-se progressivamente mais atrativo.
No caso de um grande servidor, com 41 HDs, por exemplo, seria sacrificado o espao equivalente a apenas dois discos, ou seja, menos de 5% do espao total. Em
Pgina 10
4Linux www.4linux.com.br
Tanto no caso do RAID 5, quanto no RAID 6, o servidor continua funcionando normalmente durante todo o processo de substituio do disco, embora a performance
decaia, sobretudo logo depois da substituio do drive defeituoso, quando o sistema
precisa regravar os dados lendo as informaes armazenadas em todos os outros
discos e fazendo os clculos de paridade.
[ http://www.hardware.com.br/termos/raid-6 ]
RAID 10: Combina as vantagens do RAID 0 e RAID 1 num nico sistema. Fornece
segurana efetuando espelhamento de todos os dados num conjunto secundrio de
discos enquanto utiliza listagem em cada conjunto de discos para acelerar as transferncias de dados. O RAID 10 permite no mximo 2 discos avariados de 2 pares
diferentes.
Pgina 11
4Linux www.4linux.com.br
O volume de disco RAID 10 ideal para organizaes que executam bases de dados
e outras aplicaes com base em transaes que requerem eficincia de armazenamento e proteo de dados crticos.
Em artigos que comparam os nveis RAID 5 e RAID 10, as respostas do RAID 10
foram melhores, apesar do teste ter sido feito utilizando RAID por hardware, mas
vale a pena a comparao. Veja o grfico abaixo:
RAID 0+1: uma combinao dos nveis 0 (Striping) e 1 (Mirroring), onde os dados so divididos entre os discos para melhorar o rendimento, mas tambm utilizam
outros discos para duplicar as informaes. Assim, possvel utilizar o bom rendimento do nvel 0 com a redundncia do nvel 1. No entanto, necessrio pelo menos
4 discos para montar um RAID desse tipo. Tais caractersticas fazem do RAID 0 + 1
Pgina 12
4Linux www.4linux.com.br
o mais rpido e seguro, porm o mais caro de ser implantado. Falhando 1 disco, o
sistema vira um RAID 0.
Vantagens:
Desvantagens:
RAID 50
Pgina 13
4Linux www.4linux.com.br
RAID 60
RAID 100
Pgina 14
4Linux www.4linux.com.br
"O LVM (Logical Volume Manager) um recurso includo no Kernel Linux a partir da
verso 2.4 que cria uma camada de abstrao entre o sistema operacional e os HDs
(ou outras unidades de armazenamento utilizadas, como o RAID por exemplo). Ele
adiciona alguns complicadores adicionais na configurao, mas, em compensao
oferece um conjunto de vantagens bastante interessantes.
Imagine que no LVM o sistema no v HDs e parties, mas sim um ou mais volumes
lgicos. Cada volume se comporta como se fosse uma partio, que formatada e
montada da forma usual. Estes volumes so agrupados em um grupo de volumes
lgicos (logical volume group) que se comporta de forma similar a um HD.
O pulo do gato que o grupo de volumes lgicos pode combinar o espao de vrios
HDs e ser modificado conforme necessrio, incorporando mais HDs. Os volumes
lgicos dentro dele tambm podem ser redimensionados livremente conforme for
necessrio.
Se voc precisa de mais espao dentro do volume referente pasta /home, por
exemplo, voc poderia reduzir o tamanho de um dos outros volumes do sistema (que
estivesse com espao vago) e aumentar o tamanho do volume referente ao /home,
tudo isso com o servidor operante.
Caso seja utilizada uma controladora SCSI ou SAS com suporte a hot-swaping,
possvel at mesmo adicionar, remover ou substituir HDs, fazendo as alteraes necessrias nos volumes lgicos, com o servidor ligado!
Pgina 15
4Linux www.4linux.com.br
importante enfatizar que o LVM apenas uma mudana na forma como o sistema
acessa os discos, ele no um substituto para o RAID. No LVM voc pode agrupar
vrios HDs em um nico grupo de volumes lgicos, mas se um dos HDs apresentar
defeito, o servidor ficar inoperante e voc perder os dados armazenados no disco
afetado, diferente do RAID, onde voc pode sacrificar parte do espao para ter uma
camada de redundncia.
O grupo de volumes lgicos criado pelo instalador visto pelo sistema como "/dev/vg01"e
os volumes lgicos dentro dele so vistos como "/dev/vg01/lv01", "/dev/vg01/lv02",
etc. Os nomes podem ser alterados da maneira que quiser. Naturalmente, possvel tambm deixar de usar o LVM, voltando ao sistema normal de particionamento.
Nesse caso, voc s precisa deletar os volumes e o grupo de volumes lgicos e criar
a parties desejadas usando o espao disponvel.
http://www.hardware.com.br/dicas/entendendo-lvm.html
Uma implementao melhor do LVM em conjunto com volumes RAID, pois no caso
de falhar um dos discos, continuamos com a leitura/gravao nos demais. Em relao ao usurio, o mesmo nem saber que tem toda esta estrutura por trs da
manipulao dos dados!
Pgina 16
4Linux www.4linux.com.br
2
3
4
1
2
3
4
5 15:46:10 2011
Raid Devices : 2
Total Devices : 2
10
11
12
13
4 16:08:32 2012
State : clean
14
Active Devices : 2
15
Working Devices : 2
16
Failed Devices : 0
17
Spare Devices : 0
18
19
Name : datacenter :0
Pgina 17
4Linux www.4linux.com.br
20
Events : 70
21
22
Number
Major
24
active sync
/ dev / sda1
25
17
active sync
/ dev / sdb1
23
Minor
RaidDevice State
Vamos fazer uso do utilitrio splitvt, que faz uma diviso na tela do terminal, facilitando a execuo dos comando e verificao de logs. Para usar esta combinao,
instale o utilitrio e digite no terminal splitvt:
root@storage :~ # splitvt
Pgina 18
4Linux www.4linux.com.br
# !/ bin / bash
while true ; do
sleep 1
done
Na tela do splitvt acompanhe o que acontece com cada comando executado. Vamos
inicialmente simular uma falha no disco sdb Digite:
Pgina 19
4Linux www.4linux.com.br
[= >...................]
recovery =
6.9% (5782784/82908088)
root@storage :~ # jobs -l
Pgina 20
4Linux www.4linux.com.br
Durante o assistente clique no boto Prximo (N) > para aceitar o tipo VDI como
disco virtual.
Pgina 21
4Linux www.4linux.com.br
Repita os mesmos passos para criar + 4 discos com tamanho de 10,00 GB cada.
Pgina 22
4Linux www.4linux.com.br
CASO no aparea as parties, instale o pacote parted e execute o utilitrio partprobe, verificando posteriormente:
major minor
# blocks
name
5
6
83886080 sda
82909184 sda1
1 sda2
973824 sda5
10
16
83886080 sdb
11
17
82909184 sdb1
12
18
1 sdb2
13
21
973824 sdb5
14
32
10485760 sdc
15
48
10485760 sdd
Pgina 23
16
64
10485760 sde
17
80
10485760 sdf
18
96
10485760 sdg
19
82908088 md0
20
253
9764864 dm -0
21
253
4882432 dm -1
22
253
974848 dm -2
23
253
1949696 dm -3
4Linux www.4linux.com.br
Pgina 24
4Linux www.4linux.com.br
md1 : active ( auto - read - only ) raid5 sdg [5]( S ) sdf [3] sde [2] sdd [1]
sdc [0]
41936896 blocks super 1.2 level 5 , 512 k chunk , algorithm 2
[5/4] [ UUUU_ ]
4
5
Bom, agora que o RAID est criado e ajustado para gravao, vamos configurar
o arquivo /etc/mdadm/mdadm.conf atravs da deteco automtica da configurao:
...
3
4
ARRAY / dev / md /1 metadata =1.2 UUID =119 e8015 :73 fa19a0 :6 e419d55 :7
b885513 name = storage :1
Pgina 25
/ dev / md1 :
Version : 1.2
3
4
4Linux www.4linux.com.br
4 16:18:11 2012
Raid Devices : 5
Total Devices : 5
10
11
12
4 16:18:11 2012
13
14
Active Devices : 4
15
Working Devices : 5
16
Failed Devices : 0
17
Spare Devices : 1
18
19
20
21
22
Name : storage :1
23
24
25
Number
Major
Minor
27
32
active sync
/ dev / sdc
28
48
active sync
/ dev / sdd
29
64
active sync
/ dev / sde
30
80
active sync
/ dev / sdf
31
removed
96
spare
26
RaidDevice State
32
33
/ dev / sdg
Pgina 26
4Linux www.4linux.com.br
Faa a montagem para verificar o tamanho de 40GB (5-1) do RAID 5. Feito a verificao desmonte o diretrio /mnt/raid:
/ dev / md1
ext4
40 G
176 M
38 G
1% / mnt / raid
Pgina 27
4Linux www.4linux.com.br
PV ( Phisical Volume )
pvs - sa da resumida
pvscan
pvdisplay - sa da detalhada
- sa da simples
5
6
VG ( Volume Group )
vgs - sa da resumida
vgscan
vgdisplay - sa da detalhada
- sa da simples
10
11
LV ( Logical Volume )
12
lvs - sa da resumida
13
lvscan
14
lvdisplay - sa da detalhada
- sa da simples
1
2
Pgina 28
4Linux www.4linux.com.br
root@storage :~ # pvdisplay
....
"/ dev / md1 " is a new physical volume of " 39 ,99 GiB "
PV Name
VG Name
PV Size
39 ,99 GiB
Allocatable
NO
PE Size
10
Total PE
11
Free PE
12
Allocated PE
13
PV UUID
/ dev / md1
Perceba que o sistema nos informa de que o /dev/md1 um novo volume fsico e
que no faz parte de nenhum VG! Sendo assim, vamos criar um novo VG com este
PV (/dev/md1):
1
2
1
2
3
VG Name
System ID
Format
lvm2
Metadata Areas
Metadata Sequence No
VG Access
read / write
10
storage
Pgina 29
11
VG Status
resizable
12
MAX LV
13
Cur LV
14
Open LV
15
Max PV
16
Cur PV
17
Act PV
18
VG Size
39 ,99 GiB
19
PE Size
4 ,00 MiB
20
Total PE
10238
21
Alloc PE / Size
0 / 0
22
Free
23
VG UUID
PE / Size
4Linux www.4linux.com.br
24
25
26
PV Name
/ dev / md1
27
PV UUID
28
PV Status
allocatable
29
Total PE / Free PE
10238 / 10238
1
2
1
2
LV Name
VG Name
storage
LV UUID
Pgina 30
4Linux www.4linux.com.br
LV Write Access
read / write
LV Status
available
# open
10
LV Size
5 ,00 GiB
11
Current LE
1280
12
Segments
13
Allocation
inherit
14
auto
15
- currently set to
8192
16
Block device
253:4
Tambm sera criado um volume lgico de nome banco dentro do VG storage para
armazenar o banco de dados MySQL da maquina Datacenter
1
2
LV Name
VG Name
storage
LV UUID
LV Write Access
read / write
LV Status
available
# open
10
LV Size
5 ,00 GiB
11
Current LE
1280
12
Segments
13
Allocation
inherit
14
auto
15
- currently set to
8192
Pgina 31
16
Block device
4Linux www.4linux.com.br
253:5
Agora que temos 2 volumes lgicos criados aplique o sistema de arquivos EXT4:
root@storage :~ # df - hT | tail - n4
ext4
5 ,0 G
138 M
4 ,6 G
3% / srv /
ext4
5 ,0 G
138 M
4 ,6 G
3% / srv /
storage / home
5
Aps estes procedimentos, teremos uma unidade lgica mapeada e pronta para uso!
Vamos gravar alguns dados na LV home para realizarmos alguns testes com LVM.
2
3
Pgina 32
4Linux www.4linux.com.br
root@storage :~ # e2fsck -f
61916/1310720 blocks
10
11
12
13
14
Pronto! Agora monte a partio e veja o tamanho e o total dos dados que nela
estavam:
root@storage :~ # df - Th | tail - n4
Pgina 33
ext4
4
5
5 ,0 G
4Linux www.4linux.com.br
138 M
4 ,6 G
163 M
6 ,4 G
6 ,9 G
LV Name
VG Name
storage
LV UUID
LV Write Access
read / write
LV Status
available
# open
10
LV Size
7 ,00 GiB
11
Current LE
1792
12
Segments
13
Allocation
inherit
14
auto
15
- currently set to
8192
16
Block device
253:4
Pgina 34
4Linux www.4linux.com.br
2
3
4
5
10
Neste exemplo temos uma partio de 7GB e eu desejo reduzir apenas 5GB. Ento, para no quebrar a partio em cima dos dados, daremos uma folga de alguns
gigabytes e efetuamos o comando de resizing.
Agora vamos executar o comando LVM que reduzir de fato o tamanho da partio:
Os comando acima reduziram de forma lgica o tamanho da partio para que depois
possamos reduzir de forma fsica. Agora s montar e checar os dados!
2
3
root@storage :~ # df - Th | tail - n4
ext4
5 ,0 G
138 M
4 ,6 G
3% / srv /
storage / banco
Pgina 35
4Linux www.4linux.com.br
ext4
5 ,0 G
162 M
4 ,6 G
4% / srv /
storage / home
6
7
8
10
Pgina 36
4Linux www.4linux.com.br
10
10
Pgina 37
4Linux www.4linux.com.br
/ dev / mapper / storage - suporte on / srv / storage / samba / suporte type ext4
( rw )
/ dev / mapper / storage - publico on / srv / storage / samba / publico type ext4
( rw )
/ dev / mapper / storage - drivers on / srv / storage / samba / drivers type ext4
( rw )
10
11
Pgina 38
4Linux www.4linux.com.br
Agora vamos editar o /etc/fstab e incluir no final do arquivo os novos pontos de montagem. Use os comandos blkid e awk para filtrar os UUID dos LVs que esto no
grupo storage, enviando este resultado para o final do arquivo /etc/fstab:
root@storage :~ # blkid | grep / dev / mapper / storage | awk -F " " { print
$2 , $1 } >> / etc / fstab
...
UUID =10 f50315 - c0d8 -4 f2b -8 c04 -7 f1cb93375fd / srv / storage / banco
ext4 defaults 0 2
Pgina 39
UUID = eede784d -7 e2e -4 d9e - acd2 -03 fdb24972d7 / srv / storage / samba /
administrativo
ext4 defaults 0 2
ext4 defaults 0 2
4Linux www.4linux.com.br
ext4 defaults 0 2
UUID =884 d2400 - ba00 -4 e3a -817 d - b343bfb1055c / srv / storage / samba / suporte
ext4 defaults 0 2
10
UUID =8 d2e391b -2896 -4 ba8 - ba37 - f3b84006521b / srv / storage / samba / publico
ext4 defaults 0 2
11
UUID =4 b24690b -66 c3 -4882 - bbdc -51 b76665b4e1 / srv / storage / samba / drivers
ext4 defaults 0 2
12
UUID =60 c6ebb1 - eadc -4251 -97 c7 -1 bc7ae9d680c / srv / storage / samba /
netlogon
13
UUID =61 fe2fe5 -580 b -48 f1 -945 e - bac193b6e3fc / srv / storage / samba /
profiles
14
ext4 defaults 0 2
15
ext4 defaults 0 2
ext4 defaults 0 2
16
Pgina 40