6.3. Recuperação de Falha do Espelho LVM.
Esta seção fornece um exemplo de recuperação de uma situação onde uma perna de um volume LVM espelhado falha por causa que o dispositivo subjacente para volume físico falhou e o parâmetro
mirror_log_fault_policy
está configurado para remove
, requerendo que você manualmente reconstrua o espelho. Para informações sobre configurar o parâmetro mirror_log_fault_policy
, consulte a Seção 6.3, “Recuperação de Falha do Espelho LVM.”.
Quando uma perna do espelho falha, o LVM converte o volume espelhado em um volume linear, o qual continua a operar como antes mas sem a redundância espelhada. Neste momento, você pode adicionar um novo disco no sistema para usar como um dispositivo físico substituto e reconstruir o espelho.
O comando a seguir cria volumes físicos que serão usados para o espelho.
Os comandos a seguir criam o grupo de volume
vg
e o volume espelhado groupfs
.
Você pode usar o comando
lvs
para verificar o layout do volume espelhado e os dispositivos subjacentes para a perna do espelho e o log do espelho. Observe que no primeiro exemplo o espelho ainda não está completamente sincronizado, portanto você precisa esperar até que o campo Copy%
seja exibido 100.00 antes de continuar.
Neste exemplo, a perna principal do espelho
/dev/sda1
falha. Qualquer atividade de gravação no volume espelhado faz com que o LVM detecte o espelho defeituoso. Quando isto ocorre, o LVM converte o espelho em um volume único linear. Neste caso, para iniciar a conversão, executamos um comando dd
.
dd if=/dev/zero of=/dev/vg/groupfs count=10
[root@link-08 ~]# dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
Você pode usar o comando
lvs
para verificar se o dispositivo é linear agora. Podem ocorrer erros de entrada e saída devido aos discos falhos.
Neste momento você ainda deve conseguir usar o volume lógico, mas não haverá redundancia de espelho.
Para reconstruir o volume espelhado, você substitui o drive quebrado e recria o volume físico. Se você usar o mesmo disco ao invés de substituí-lo por um novo, você verá avisos de "inconsistencia" quando executar o comando
pvcreate
. Você pode previnir que este aviso apareça executando o comando vgreduce --removemissing
.
Depois que você estender o grupo de volume original pelo volume físico novo.
Converta o volume linear de volta ao seu estado espelhado original.
lvconvert -m 1 /dev/vg/groupfs /dev/sdi1 /dev/sdb1 /dev/sdc1
[root@link-08 ~]# lvconvert -m 1 /dev/vg/groupfs /dev/sdi1 /dev/sdb1 /dev/sdc1
Logical volume mirror converted.
Você poderá usar o comando
lvs
para verificar se o espelho foi restaurado.