Що відбувається, коли фізична машина виходить з ладу у віртуальному середовищі? [зачинено]


12

Я починаю з віртуалізації, тому поводьтеся зі мною.

У віртуальних середовищах програми працюють у шарі гіпервізора. Таким чином, на одній фізичній машині на ній може бути багато віртуальних машин, на яких працює кілька додатків.

Все йде нормально?

То що відбувається, коли фізична машина виходить з ладу? Хіба це не призвело б до того, що багато програм виходять з ладу всі з однієї машини?

Я шукаю розробку приватної хмари з OpenStack , але спочатку хочу повністю зрозуміти віртуалізацію.

Відповіді:


14

Специфіка залежить від того, яке саме рішення для віртуалізації ви використовуєте, але ідея полягає в тому, що у вас є віртуальна ферма, де є декілька фізичних хостів з кількома віртуальними машинами на кожній. Потім ви використовуєте деяку ефективність, яку ви отримали, не потребуючи фізичного хоста для кожного VM, щоб у вас було достатньо накладних витрат на покриття у випадку, коли фізична машина знизиться.

Крім того, ви можете знайти VHD для кожного VM на загальному (надлишковому) SAN. Гіпервізори на кожному фізичному хості можуть бути встановлені для розмови між собою та обміну пам’яттю з різних VM. Існує деяка затримка, і значна частина пам’яті буде підкріплена диском, але якщо хтось із фізичних хостів знизиться, ви навіть не чекаєте, коли VM від цього хоста завантажуватимуть резервну копію. Натомість ці VM будуть автоматично розподілені між іншими хостами. Кінцева мета полягає в тому, що ці машини підхоплять майже з того місця, де вони зупинилися, без простоїв взагалі. У певному сенсі всі ваші VM вже працюють принаймні на двох фізичних хостах. На практиці зараз гіпервізори можуть робити такий тип міграції лише на одній машині за часом, коли вони знають, що це відбувається ще до того, як хост вийде з ладу ... але не помиляйтесь: миттєва міграція на апаратному збої є кінцевою метою для всіх основних гіпервізори.

Ось чому іноді ви бачите сервер, віртуалізований для одного фізичного хоста на фермі. Можливо, ви не отримаєте апаратної ефективності (ви навіть втратите деяку продуктивність), але ви компенсуєте це з точки зору послідовності управління та вбудованої високої доступності.


thnx для вашої відповіді Джоел ... У мене є 2 питання ... чи віртуальне середовище розглядає фізичні машини як єдиний пул ресурсів? чи це допомагає задовольнити самообслуговування на вимогу? Чи допомагає вітуалізація використовувати ресурси?
Шериф

1
@Sherif: В основному, так, і так. Якщо ви хочете зрозуміти це більш детально, ознайомтеся зі статтею Вікіпедії , в якій коротко розглядається міграція та невідповідність VM. Якщо у вас все ще виникають питання, задайте більш конкретне запитання.
sleske

1
Ви впевнені в частині спільної пам'яті? Наскільки я розумію, збій VM через несправності обладнання буде перезапущено на іншому хості. Це може розглядатися як повне перезавантаження або відновлення контрольної точки, залежно від конфігурації гіпервізора, але вихідний стан пам'яті неможливо відновити. Для vspere: vmware.com/products/vsphere/features/high-available Як бічна примітка, для KVM були розпочаті деякі проекти, щоб забезпечити справжню спільну, надлишкову пам’ять серед колекції хост-апаратних пристроїв , але вони були покинуті.
shodanshok

1
Міграція VM може відбутися лише в тому випадку, якщо фізична машина має шанс передати управління перед падінням. Якщо фізична машина виходить з ладу безцеремонно, віртуальну машину доведеться перезапустити на іншій машині. Якщо у вас є сервер без стану, цей процес передачі є тривіальним, оскільки ви можете просто закрутити іншу машину. Для машин із стійкими станами потрібно мати схему, яка може відновити стійкі дані з несправної фізичної машини.
Лі Лі Раян

13

Усі віртуальні сервери, що працюють на фізичному хості, перейдуть в офлайн, якщо у хоста є якісь збої.

При цьому більшість платформ пропонують рішення з високою доступністю для одного VM. В іншому випадку система побудована з декількома вузлами, щоб запобігти зриву служби у випадку, якщо один вузол опуститься.

Якщо два вузли VM складають високодоступну послугу, можна налаштувати гіпервізор, щоб переконатися, що два вузли не залежать від однієї фізичної інфраструктури (відмовостійкість). Це може бути більше, ніж просто фізична помилка сервера, включаючи різні мережеві шляхи, аж до географічно розрізненого місця.


2
Наприклад, AWS, залежно від послуги, реплікує послугу через зони доступності (фізичні зони) у випадку, якщо в цій області стихійне лихо призведе до порушення фізичних машин.
Майкл Бейлі

чи віртуальне середовище розглядає фізичні машини як єдиний пул ресурсів? чи це допомагає задовольнити самообслуговування на вимогу? Чи допомагає вітуалізація використовувати ресурси? і багато чого для ваших зусиль
Шериф

5

Ви маєте рацію зі своїм припущенням, що якщо фізична машина вийде з ладу, то і VM стануть недоступними.

Але Opentack може подбати про це і запустити VM невдалого фізичного сервера на іншому сервері, або ви можете використовувати систему гіпервізорів, яка вже розповсюджена, я думаю, що vsphere може це зробити.

Для отримання додаткової інформації слід ознайомитися з документацією на відкриття на HA .


2

Що стосується вашого питання - так, ви втратите доступ до всіх машин у цьому фізичному хості. Звичайно, залежить, який компонент не вдався. Якщо це диск - це певна проблема, якщо це материнська плата - це набагато простіше. Загалом відновлення апаратури простіше, оскільки гіпервізор апаратно-агностичний. На даний момент існує велика кількість технологій, пов'язаних з постачальниками, які можна використовувати для високодоступних послуг.

Ресурсні пули (vmware) - НЕ здатні агрегувати декілька фізичних ресурсів хоста (процесор, пам'ять тощо), як хтось згаданий вище, тому якщо у вас є 2 фізичні хости (скажімо, 1CPU чотирьохядерний без гіперточення - 8GBRAM кожен), це НЕ буде можливо, там 5VCPU-12Gb VM. Пул ресурсів є логічним, вони не в змозі створити суперкомп'ютерні системи. Зараз це спосіб контролювати використання ресурсів.

Доступність (vmware) - можна використовувати такі технології, як High Availability (HA), які дозволяють автоматично автоматичне відновлення (виходячи з мого досвіду протягом 1-2 хв ) всіх віртуальних машин кластера автоматично, якщо ви використовуєте Storage Array (NAS, iSCSI, FC) і зберігати там усі файли VM. Більше HA працює лише у випадку відмови процесора, оперативної пам’яті, материнської плати, очевидно, що це не буде працювати з накопичувальним масивом. Щоб запобігти збоям RAID / контролерів, люди використовують дзеркальне відображення Replication, Storage LUN тощо.

Якщо відновлення протягом 1-2 хв не є можливим, є такі технології, як Fault Tolerance (FT), які дозволяють досягти простою ZERO простою VM у разі відмови, зберігаючи тіньову (запущену) копію налаштованої VM. Але ця технологія також має чимало обмежень - проблема невідповідності VM з декількома vCPU повністю не вирішена.

Загалом, кожне рішення залежить від вашої мети.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.