Как да направите клъстер на виртуална машина QEMU

Да приемем, че имаме клъстер, на който възнамеряваме да изпълняваме виртуални измивания с помощта на qemu-kvm. Естествено е необходимо някакво общо хранилище, където ще бъдат разположени изображенията. Ако хостът не работи (или не работи), това ще бъде открито от клъстерния софтуер и всички виртуални машини от този хост ще бъдат рестартирани. И въпросът е следният: в крайна сметка, ако хостът е мъртъв, тогава данните не са имали време да се добавят правилно към изображенията, нали? И когато рестартираме виртуалната машина, ще получим FS с грешка, нали? Още повече, че ако STONITH е правилно внедрен, тогава в случай, че например само мрежовият интерфейс откаже (чистачът е изключил кабела) и докато връзката в SAN остане работеща, възелът ще бъде брутално прострелян в главата.

Как да избегнем подобна ситуация?

всяка ситуация трябва да се разглежда по-специално.

1. ако хостът работи, но контролната мрежа е паднала и не може да бъде достигната. в този случай ще има камък, който за виртуална машина няма да се различава от пълноценно нулиране на желязото, или няма да има нищо, докато администраторът не възстанови мрежата сам (това вече зависи от настройките). типичен отказоустойчив клъстер по принцип намалява всички повреди до повреден хардуер и рестартиране на услуги на друг хост и тази виртуална машина е лоша, която не е в състояние да преживее нулирането без сериозни загуби.

2. ако хоста се срине и виртуалната машина се рестартира на друга - принципно страдаше не повече, отколкото ако вървеше на същия паднал хардуер, плюс автоматичен рестарт. Накратко, солидна печалба, HA все още не е FT

Между другото, #3 е основната причина за използването на nfs hard mount за виртуални машини, така че проблемите с достъпа до диска веднага да се показват от хипервайзора и да не отиват в буфера.