Come controllare l'host di macchine virtuali CentOS 6 Server dopo un'interruzione di corrente?


9

Oggi pomeriggio qualcuno nel nostro ufficio ha deciso di staccare la spina dal nostro server perché stava precipitando fuori. Non l'hanno spento, hanno semplicemente staccato la spina mentre era in funzione.

Il server ha 4 unità SATA in una configurazione RAID 10 del software e LVM in esecuzione sul RAID. Il server esegue CentOS 6.2 Minimal ed è un host di macchina virtuale che utilizza KVM. Al momento della disconnessione, c'erano molte macchine guest in esecuzione sul computer. Ogni guest ha una o più partizioni LVM che utilizza direttamente come dischi rigidi. Le partizioni guest sono EXT3, EXT4 e NTFS. Il sistema operativo host è su una partizione EXT4.

Più tardi, quando il potere è tornato, quella persona lo ha ricollegato e si è avviato. Dal momento che lo hanno collegato senza prima collegare un monitor, non c'è modo di vedere cosa è successo sullo schermo. Ho provato a collegare un monitor ora, ma non funzionerà a meno che il monitor non sia collegato all'avvio. L'ho lasciato acceso, esattamente com'è, fino a quando non posso ottenere qualche consiglio dal momento che non voglio rovinare nulla (ulteriormente).

Posso entrare nell'host tramite SSH. Non l'ho ancora riavviato nel caso ci sia qualcosa in un registro da qualche parte che potrebbe essere utile.

Quello che devo fare è controllare tutti i dischi e le partizioni per l'integrità dei dati, se possibile. Penso che RAID 10 utilizzi un qualche tipo di cache basata sulla memoria e sono preoccupato che le unità siano incoerenti o che i file siano danneggiati se ci sono cose nel cue da scrivere sull'unità che non sono state ancora scritte.

[root@othello ~]# cat /proc/mdstat
Personalities : [raid10] [raid1] 
md2 : active raid1 sdc1[2] sda1[0] sdd1[3] sdb1[1]
      102388 blocks super 1.0 [4/4] [UUUU]

md0 : active raid10 sda3[0] sdc3[2] sdd3[3] sdb3[1]
      1952289792 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU]
      bitmap: 0/15 pages [0KB], 65536KB chunk

md1 : active raid10 sdc2[2] sda2[0] sdd2[3] sdb2[1]
      1022976 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU]

unused devices: <none>

Mi dà anche fastidio il fatto di chiamare i miei array "quasi copie". È normale?

Che tipo di controlli del disco dovrei eseguire per assicurarmi che tutto sia a posto con unità e dati? Ci sono altre cose che dovrei controllare?

AGGIORNARE

Output di mdadm --detail

[root@othello ~]# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.1
  Creation Time : Sat Feb 25 09:26:20 2012
     Raid Level : raid10
     Array Size : 1952289792 (1861.85 GiB 1999.14 GB)
  Used Dev Size : 976144896 (930.92 GiB 999.57 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Sun Mar 11 12:59:30 2012
          State : active 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : othello.myserver.com:0  (local to host othello.myserver.com)
           UUID : 58ba40ab:12516733:e3779362:68200fdd
         Events : 2208

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync   /dev/sda3
       1       8       19        1      active sync   /dev/sdb3
       2       8       35        2      active sync   /dev/sdc3
       3       8       51        3      active sync   /dev/sdd3

Risposte:


3

Il RAID va bene, tutte le UUUU significano che tutti i dischi dell'array sono attivi. Non me ne preoccuperei nemmeno per ora.

Per quanto riguarda le VM, se si desidera eseguire fscks su di esse, arrestare le VM ed eseguire

fsck.ext3 (ext4, etc) /path/to/lvm (di solito piace / dev / vg-name / lv-name)

Se stai usando KVM, dovresti essere in grado di usare virshper fare tutto ciò di cui hai bisogno alle VM. Ecco un link alla pagina man di virsh http://linux.die.net/man/1/virsh

Se vuoi davvero eseguire i controlli del disco sui tuoi array raid, dovrai riavviare in modalità utente singolo o avviare da un cd live in modo da poter eseguire il fckck dei singoli dispositivi / dev / mdX. Poiché il filesystem primario è EXT4, non mi preoccuperei, è molto meglio di EXT3 con interruzioni di corrente.


+1, proverò domani.
Nick

1

Prova mdadm --detail / dev / md0 (lo stesso per md1 e md2).

Quindi prova i consigli forniti qui: http://linas.org/linux/raid.html


Ho pubblicato l'output di cui mdadm --detail /dev/md0sopra. Ho letto la guida che hai collegato, ma non menziona i file system EXT4, o cosa, in particolare, posso fare per controllare l'integrità?
Nick

Il tipo di filesystem non dovrebbe importare in termini di integrità RAID. Se hai un periodo di manutenzione, puoi smontare i filesystem interessati e fsckloro. Se vuoi controllare i dispositivi RAID stessi, puoi fare qualcosa del genere echo "check" > /sys/block/md0/md/sync_action. O eco "riparazione" per fare una sorta di riparazione mdadm.
cjc

Ci proverò domani e riporterò indietro.
Nick
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.