Управление памятью в гипервизоре (Анна Воробьева)
DESCRIPTION
TRANSCRIPT
![Page 1: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/1.jpg)
Управление памятью в гипервизореВсе о виртуализации памяти в Parallels
Анна Воробьева
![Page 2: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/2.jpg)
Теоретические основы практических подходов
Эффективность использования ресурсов
«Повторное» использование идей
Fun от решения сложной задачки
![Page 3: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/3.jpg)
Содержание
Постановка задачи Решения
Квоты, выбор backing store, алгоритма вытеснения Balloon Page sharing, compression
Сравнение по продуктам
![Page 4: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/4.jpg)
Хостовая ОС
ВМРесурсы
Аппаратное обеспечение
Немного терминологииГостевая ОС
Виртуальный environment
ВММ
гипервизор
![Page 5: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/5.jpg)
VMVM33
ВМ1 ВМ2 ВМ3Ресурс памяти
Ресурс памятиРесурспамяти
Физическая память
Задача распределения памяти
![Page 6: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/6.jpg)
Разграничим терминыOvercommitment Σ(сконфигурированной
памяти) + накладные расходы ≥ разрешеный лимит ноды
ВМ подлежат всем действиям, описанным в докладе
Overload Σ(используемой памяти) +
накладные расходы ≥ разрешенный лимит ноды
ВМ подлежат миграции
![Page 7: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/7.jpg)
Ove
rload
![Page 8: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/8.jpg)
ф
изич
еска
я па
мят
ь
Распределение памяти: шаг 1
Ресу
рс
ВМ1
Ресу
рс
ВМ2
RAM
RAM
![Page 9: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/9.jpg)
Алгоритмы вытеснения LRU (last recently used)FIFO (first in first out)Aging (+NFU) NRU (not recently used – A-/D- bits)• а ведь еще можно дать всем второй шанс
ClockRandom
![Page 10: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/10.jpg)
Алгоритмы вытеснения
Гостевая ОС вытесняет страницы по своим алгоритмам (semantic gap)
Отсутствие локальности обращенийОС не может поместить в процесс своего агента, а
мы можем
не работают
![Page 11: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/11.jpg)
Office-битва(Windows 2008 x64)
Вытеснение (swapping) Avg Cycle Time = 345000 Overcommit = 42%
Ballooning Avg Cycle Time = 222000 Overcommit = 93%
В 1.5 раза эффективнее
![Page 12: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/12.jpg)
Ресурс памяти
Ballooning
Гостевая ОС
Назначенная память
App
Balloon
Ballo
on
driv
erBalloon – это гостевой драйвер
Страницы, отданные ВММу balloon-ом, не потребуются гостю и не содержат информации
![Page 13: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/13.jpg)
BallooningПлюс Сокращение подкачки
между ВММ и гостем
Минусы Гостевой своппинг вплоть
до гостевых крешей Неуниверсальность Отсутствие гарантий
![Page 14: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/14.jpg)
ф
изич
еска
я па
мят
ь
Распределение памяти: шаг 2
Ресу
рс
ВМ1
Ресу
рс
ВМ2
RAM
balloon
RAM
balloon
![Page 15: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/15.jpg)
Но откуда известен объем ресурса?Конфигурационные данные Гарантия Лимит Приоритет/доля Разрешенный лимит ноды
Динамические данные Используемая память Бездействующая память
(idle) Статистические данные
![Page 16: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/16.jpg)
Опасности конфигурируемых данных
Избыток назначенной памяти (32 no-pae + 4GB RAM)Своп из-за низкой гарантииНезаслуженный дефицит при лимите меньше
назначенной памятиОптимистичный лимит для ноды
![Page 17: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/17.jpg)
Физ
ичес
кая
пам
ять
хост
Распределение памяти: шаг 3
Ресу
рс
ВМ1
Ресу
рс
ВМ2
RAM
balloon
RAM
balloon
гипе
рвиз
ор
![Page 18: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/18.jpg)
Backing storageВлияет на Suspend/snapshot Resume/switch to snapshot Подкачка
Популярные решения File mapping Anonymous mapping HugeTLBFs
![Page 19: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/19.jpg)
Физ
ичес
кая
пам
ять
хост
Распределение памяти: шаг 4
Ресу
рсВМ1
Ресу
рс
ВМ2
RAM
balloon
RAM
balloon
гипе
рвиз
ор ВП
Back
ing
stot
age
ВП
Back
ing
stot
age
![Page 20: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/20.jpg)
Меняем тики на данныеPage sharing Посчитать хэш Сравнить Защитить по COW По записи отвязать Для Read-Only страниц
Compression Сжать Оставить в кэше либо
записать на диск По требованию развернуть Для редко используемых
![Page 21: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/21.jpg)
Меняем тики на данныеPage sharing Эффективность при
одинотипной нагрузке на ноду
Накладные расходы могут быть напрасны
Запрет на большие страницы
Compression Интеграция с suspended
image Уверенный compression
вне зависимости от нагрузки
![Page 22: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/22.jpg)
Физ
ичес
кая
пам
ять
хост
Распределение памяти: полная картина
Ресу
рсВМ1
Ресу
рс
ВМ2
RAM
balloon
RAM
balloon
гипе
рвиз
ор ВП
Back
ing
stot
age
ВП
Back
ing
stot
age
архив
арив
Shared pages
![Page 23: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/23.jpg)
СРАВНЕНИЕ ПРОДУКТОВ, ПРЕДСТАВЛЕННОЕ ДАЛЕЕ, ЯВЛЯЕТСЯ ЛИШЬ МНЕНИЕМ.
Disclaimer
![Page 24: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/24.jpg)
Balloon Page sharing
Compres-sion
Swapout Quota Backing store
ESX + + + + + Huge/VSWP?
Xen Server
+ - - - + Own
PSBM + - + + + Huge/File/An
HyperV + - - - + File
KVM + + - + + Huge/File/An
![Page 25: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/25.jpg)
Сравнение: Xen Server – осторожность превыше всего
Исключительно ballooningPage-sharing & swapout присутствуют в xen hypervisor
4.0
![Page 26: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/26.jpg)
Сравнение: VMWare ESX – сильнейшие со времен Waldspurger-а
В статье 2002ого года они уже описывают balloon, квоту, page sharing, idle-memory tax swapout
Некоторая инертность в новом, compression не интегрирован с suspend-ом
![Page 27: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/27.jpg)
Сравнение: KVM – все блага Linux-а
Balloon включен в дерево LinuxЭффективнейший KSM достался бесплатноБлага надежного вытесненияCompression и алгоритмы, специфичные для
виртуализации, могут идти с запозданием
![Page 28: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/28.jpg)
Сравнение: HyperV – все что не от нас, то от лукавого
Hot-plug memory + balloonОверкоммит опасен и вреден
![Page 29: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/29.jpg)
Сравнение: PSBM
Свой алгоритм компрессии и его интеграция:Эффективная реализация для разнотипной нагрузкиБыстрый suspend/resume/snapshot
Для однотипной нагрузки – контейнеры
![Page 30: Управление памятью в гипервизоре (Анна Воробьева)](https://reader031.vdocuments.mx/reader031/viewer/2022020717/5477a3d9b4af9fde618b45cc/html5/thumbnails/30.jpg)
Balloon Page sharing
Cmprs Swap Quota Backing store
Usage
ESX + + + + + Huge/VSWP? Hi-end ENT
Xen Server
+ - - - + Own Providers, middle Linux ENT
PSBM + - + + + Huge/File/An Service-providers,ENT
HyperV + - - - + File Windows middle ENT
KVM + + - + + Huge/File/An Providers