O KVM-Host perdeu a conexão com o Storage

2

Eu realmente aprecio alguns conselhos sobre como consertar isso. Eu tenho um Debian KVM-Host com 9 Debian VMS rodando nele. As máquinas virtuais estão sendo executadas no meu pequeno Storage via iSCSI.

Agora, meu switch perdeu temporariamente a energia e, com ele, a conexão foi interrompida do host para o armazenamento. Agora eu tenho um host cheio de VMS que estão em modo de pausa porque eles não podem lidar com essa interrupção súbita.

Tenho a sensação de que posso ter corrompido os discos de todas as minhas VMs. Alguém de você saberia se ainda há esperança de que as VMs se restaurem?

Edit: Eu recuperei a conexão com o alvo iSCSI, salvando o estado das VMs e reinicializando o host. Os sistemas operacionais nos discos ainda estão falhando. Você saberia se é possível reinicializá-los com segurança ou se existe outra maneira de resolver esse estado? Eles são todos formatados com EXT4.

    
por Michael Kargl 11.07.2016 / 21:00

3 respostas

1

Editar: Mesmo depois que o switch ganhou energia novamente e o armazenamento estava disponível, as VMs ainda estavam em estado de falha de resposta. Eles não reagiram a nenhuma entrada, forçando-me a fazer um hard-reset, um por um, confiando no journaling do sistema de arquivos para reparar o dano. Tive sorte de funcionar e nada funcionou.

Tanto quanto eu entendo, eu tive sorte lá como fsck só remove / repara referências defeituosas sem manter a integridade dos dados em mente. O servidor MySQL parece estar funcionando bem, mas se tudo ainda estiver no lugar, essa é outra questão. Eu apreciaria alguns comentários sobre como eu poderia ter lidado melhor com esse problema (além do clustering, backup com mais frequência e baixas).

    
por 11.07.2016 / 22:40
4

O SO moderno e o sistema de arquivos são muito mais resistentes contra a corrupção, e o mesmo pode ser dito para o MySQL (especialmente quando usado com tabelas InnoDB).

Basicamente, qualquer coisa gravada em disco com sync/fsync semântico deve ser a prova de travamento, já que as gravações não retornarão até que os dados estejam no armazenamento estável. Além disso, o InnoDB usa o diário interno para garantir que nenhum registro parcial seja gravado.

Em suma, enquanto pequenas perdas de dados podem acontecer, eu ficaria muito surpreso se uma instalação moderna (2.6.33+) do Linux se tornar completamente errada após uma falha.

    
por 12.07.2016 / 08:00
2

O Qemu leva as VMs para uma pausa nos erros do io pelo design, para que você evite discos corrompidos. Tudo o que você precisa fazer é restaurar as conexões iscsi e executar / unpause as VMs

    
por 12.07.2016 / 14:49