Я продолжаю пристально изучать Xen Cloud Platform и в ходе экспериментов мне удалось создать «призрак»: виртуальную машину, которая (с точки зрения гипервизора) отсутствовала.
Эта виртуальная машина когда-то имела диск, но диск был удалён (и осталась только его кешированная копия в памяти), что, в принципе, не мешало на этот диск писать/читать.
Эта виртуальная машина когда-то имела виртуальный сетевой адаптер, но он был удалён, что в принципе, не мешало отправлять и получать ip-пакеты.
Эта виртуальная машина была — и её не стало. Её не было видно ни на высоком уровне, ни на низком. Её не существовало. Всё осложнялось тем, что я не знал, на каком из серверов облака эта виртуальная работала.
Другими словами, я имел настоящий полноценный призрак. После того, как я перегрузил нужный (лабораторный) сервер, виртуальная машина умерла. Но вопрос остался открытым:
А что, если эта проблема появится в продакте, в котором не принято перегружать хосты? Если бы этой виртуальной машиной управлял не я, а клиент?
Виртуальной машины нет. Хосты (хостящие виртуальные машины) работают. И где-то между ними затаилась машина, которой нет. Но которая живёт своей собственной жизнью.
… Может, такие машины уже есть среди облаков, хостящих VDS'ы?
Я помню байку про сервер, который случайно замуровали и который годами продолжал работать. Его нашли пройдя по проводам.
А виртуальная машина? Идти по виртуальным проводам в поиске не существующего виртуального сервера?
А если бы эта машина не генерировала трафик, а мирно себе что-то считала? Не видимая, не слышимая, не обнаружимая… Не то, чтобы это было совсем уж страшно, но…
На правах рекламы:
Опытный экзорцист изгонит из вашего облака всех призраков. Дорого. Гарантия.
UPD: Если кому-то интересно, как это делается:
bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1606
После такой миграции, перегружаем мастера, «удаляем» все следы виртуальной машины — а она продолжает работать.
Эта виртуальная машина когда-то имела диск, но диск был удалён (и осталась только его кешированная копия в памяти), что, в принципе, не мешало на этот диск писать/читать.
Эта виртуальная машина когда-то имела виртуальный сетевой адаптер, но он был удалён, что в принципе, не мешало отправлять и получать ip-пакеты.
Эта виртуальная машина была — и её не стало. Её не было видно ни на высоком уровне, ни на низком. Её не существовало. Всё осложнялось тем, что я не знал, на каком из серверов облака эта виртуальная работала.
Другими словами, я имел настоящий полноценный призрак. После того, как я перегрузил нужный (лабораторный) сервер, виртуальная машина умерла. Но вопрос остался открытым:
А что, если эта проблема появится в продакте, в котором не принято перегружать хосты? Если бы этой виртуальной машиной управлял не я, а клиент?
Виртуальной машины нет. Хосты (хостящие виртуальные машины) работают. И где-то между ними затаилась машина, которой нет. Но которая живёт своей собственной жизнью.
… Может, такие машины уже есть среди облаков, хостящих VDS'ы?
Я помню байку про сервер, который случайно замуровали и который годами продолжал работать. Его нашли пройдя по проводам.
А виртуальная машина? Идти по виртуальным проводам в поиске не существующего виртуального сервера?
А если бы эта машина не генерировала трафик, а мирно себе что-то считала? Не видимая, не слышимая, не обнаружимая… Не то, чтобы это было совсем уж страшно, но…
На правах рекламы:
Опытный экзорцист изгонит из вашего облака всех призраков. Дорого. Гарантия.
UPD: Если кому-то интересно, как это делается:
bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1606
После такой миграции, перегружаем мастера, «удаляем» все следы виртуальной машины — а она продолжает работать.