JustLooKeD
@JustLooKeD
Стремлюсь к работе системного администратора.

Как распределяются ресурсы при виртуализации?

Попытаюсь максимально четко сформулировать вопрос. Мне стало интересно, как распределяются ресурсы компьютера при виртализации N'го кол-во машин. Если быть более точным, меня интересует именно Unified Networking Lab. Я ставлю виртуальную машину с ОС *nix и выделяю ей некое кол-во ресурсов. (Пусть будет 6 ГБ озу и 1 процессор с 4 ядрами) Все запустил, работает. Но помимо самой ОС, я в неё закидываю образы Dynamips, IOL, QEMU, которым так же надо выделять определенное кол-во ОЗУ. В чем соль вопроса: Если я запущу около 20-30 этих разных образов внутри виртуальной машины и потребление одного образа в среднем будет около 512 ОЗУ (512*25/1024=12.5) то сможет ли все это работать? На компьютере 8 ГБ озу. Виртуальной машине повторюсь, выделили 6 Гб ОЗУ. И как именно работаеет распределение ресурсов на виртуальную машину? Просто совершенно недавно, где то вычитал, что виртуальной машине можно выделить в 2 раза больше ОЗУ чем есть на ПК, т.к. она использует озу лишь на половину и так же на половину использует Жесткий Диск.

Простите если плохо или слишком сложно сформулировал. Если можно то какие нибудь ссылки на статьи или небольшие свежие книги по виртуализации.

Спасибо за внимание. Лев.
  • Вопрос задан
  • 3338 просмотров
Решения вопроса 1
athacker
@athacker
Это очень тонкий вопрос.

То, что виртуальная машина будет использовать половину памяти -- это неверно. Всю память, которую ей будет разрешено использовать, она использует. Другой вопрос, как конкретно она это будет делать (точнее, под какие цели). Например, если у вас 8 гигов оперативы, а приложениям нужно всего 4, то это не значит, что система будет использовать всего 4 Гб. Просто остальные 4 Гб, которые не нужны приложениями, будут заняты под другие цели -- под дисковый кэш, например. Или под кэш страниц памяти (standby memory в Windows -- когда освобождённые приложением страницы реально не освобождаются, а хранятся в памяти. И если освободившее страницу приложение опять захочет внезапно запросить память, то ему будет выделена уже существующая страница).

Также нужно понимать, что у гипервизора есть средства аппетиты машины умерить. Например, такие механизмы, как balooning. Т. е. если память, которую гостевая система отвела под какие-то свои нужды, резко потребуется другой виртуальной машине, то гипервизор через специальный драйвер надует baloon, и отберёт часть памяти у одной гостевой машины, чтобы отдать его другим.

Иными словами -- если у вас 8 Гб, а вы выделили машине 16 Гб, то работать оно будет. Ровно до тех пор, пока ваши гостевые виртуалки не захотят РЕАЛЬНО использовать более 8 Гб оперативки. Когда захотят -- всё будет как всегда, т. е. сброс страниц в дисковый кэш, дикие тормоза и всё такое прочее.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Diman89
@Diman89
Зависит от настроек самого гипервизора (ос), ну а своп в вм-это уже от ос в вм, умеет ли и как реализует
ps. vmware не даст создать вм с памятью больше чем есть на самом деле.
pss. у вм могут быть настройки лимитирования и резервирования ресурсов
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы