Какое то время назад разгорелась дискуссия на тему "Overcommiting memory".
Напомню, что суть этого термина - возможность ESX запустить ВМ с совокупнлй памятью большей, чем есть в сервере. Например, в сервере есть 8ГБ, мы делаем ВМ с выделением ей 2 ГБ памяти, и можем таких запустить больше 4-х.
Под другими продуктами виртуализации так не можем.
Это хорошо иллюстрируют картинки вот тут.
Добиться такого эффекта позволяют два механизма:
- VMware Content Based Page Sharing
- и balooning\ESX swap
Первый из себя представляет механизм экономии памяти, и вот тут он интересно иллюстрируются:
есть Citrix сервер. Обслуживает 50-85 сессий. Каждая сессия - порядка 80МБ, и очень многое в них совпадает - одни и те же приложения, DLL. За счет хранения совпадающего в одной копии, сервер с 4 ГБ выданной памяти на хосте реально занимает 1 ГБ и меньше.
вторй же механизм - механизм вытеснения части памяти ВМ в своп - может работать всегда, а не только в благоприятных случаях, как первый. Но! все советуют избегать его как огня, ибо вытеснение ВМ в своп сильно роняет скорость ее работы. Так что такой "Overcommiting memory" может быть и во вред.
Мне хотелось бы подробнее описать возникшую вокруг этого дискуссию. У сожалению, время не резиновое, поэтому даю только подборку ссылок - тут.
0 коммент.:
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.