Windows Server 2008 R2 Dynamic Memory Андрей Бешков Эксперт по ИТ-инфраструктуре Майкрософт Россия http blogs technet com abeshkov http twitter com abeshkov abeshkov microsoft com доклад на Общие темы

Доклад раскрывает тему "Windows Server 2008 R2 Dynamic Memory Андрей Бешков Эксперт по ИТ-инфраструктуре Майкрософт Россия http blogs technet com abeshkov http twitter com abeshkov abeshkov microsoft com".
Презентация поможет подготовится к предмету Общие темы, может быть полезна как ученикам и студентам, так и преподавателям.
Материал представлен на 43 страницах, оформлен в виде презентации, доступен для скачивания и просмотра онлайн.

Навигация по документу

Страница №1
Windows Server 2008 R2: Dynamic Memory Андрей Бешков Эксперт по ИТ-инфраструктуре, Майкрософт Россия http://blogs.technet.com/abeshkov http://twitter.com/abeshkov abeshkov@microsoft.com
Страница №2
Пользователи, память и виртуализация
Пользователи, память и виртуализация
Страница №3
Мало кто может правильно выделить ресурсы для VM
Сколько действительно памяти требуется для IIS под конкретный сайт/проект?
Принт-серверу?
Файловому серверу?
BranchCache?
DirectAccess?
Как изменится производительность VM, если уменьшить память? Увеличить в двое? Втрое? Что изменится для других VM на том же хосте?
Мало кто может правильно выделить ресурсы для VM Сколько действительно памяти требуется для IIS под конкретный сайт/проект? Принт-серверу? Файловому серверу? BranchCache? DirectAccess? Как изменится производительность VM, если уменьшить память? Увеличить в двое? Втрое? Что изменится для других VM на том же хосте?
Страница №4
Есть желание проводить расчеты?
“Любая новая VM получает 1GB 
[не зависимо от роли ее OS].  Память добавляется после анализа производительности”
“Всем VM по 4GB 
[не волнует, что дальше будет с этой «лишней» памятью, проводить анализ накладно] и все довольны – кроме бизнеса, который за это платит”
“Устанавливаются минимальные или рекомендуемые параметры для ОС и приложений. Производитель всегда прав – есть ли смысл в тонкой настройке и тестировании?”
Есть желание проводить расчеты? “Любая новая VM получает 1GB [не зависимо от роли ее OS]. Память добавляется после анализа производительности” “Всем VM по 4GB [не волнует, что дальше будет с этой «лишней» памятью, проводить анализ накладно] и все довольны – кроме бизнеса, который за это платит” “Устанавливаются минимальные или рекомендуемые параметры для ОС и приложений. Производитель всегда прав – есть ли смысл в тонкой настройке и тестировании?”
Страница №5
Виртуализация и память
Память
Ключевой фактор плотности VM на оборудовании
Часто – самый дорогой компонент в системе
Требования бизнеса
Повышение плотности VM при минимальном влиянии на производительность
Поддержка соответствующей производительности
Стабильное в продуктивном использовании решение
Виртуализация и память Память Ключевой фактор плотности VM на оборудовании Часто – самый дорогой компонент в системе Требования бизнеса Повышение плотности VM при минимальном влиянии на производительность Поддержка соответствующей производительности Стабильное в продуктивном использовании решение
Страница №6
Технологии управления памятью VM
Технологии управления памятью VM
Страница №7
Memory Overcommit
Overcommit (англ.) – невыполнимые обязательства
Термин – маркетинговый, а не технический
Означает «выделить больше памяти, чем существует физически». Технически может означать любую технологию:
Page Sharing
Second Level Paging
Dynamic Memory Balancing (a.k.a. ballooning)
Memory Overcommit Overcommit (англ.) – невыполнимые обязательства Термин – маркетинговый, а не технический Означает «выделить больше памяти, чем существует физически». Технически может означать любую технологию: Page Sharing Second Level Paging Dynamic Memory Balancing (a.k.a. ballooning)
Страница №8
Dynamic Memory НЕ Overcommit
В реальности – никто не хочет использовать overcommit
Вы не можете «перебрать» ваши ресурсы – за все требуется «расплата»
VMware не рекомендует использовать ее технологии overcommit в продуктовой среде
Dynamic Memory утилизирует память так же, как ядро ОС – CPU для многозадачности
Dynamic Memory НЕ Overcommit В реальности – никто не хочет использовать overcommit Вы не можете «перебрать» ваши ресурсы – за все требуется «расплата» VMware не рекомендует использовать ее технологии overcommit в продуктовой среде Dynamic Memory утилизирует память так же, как ядро ОС – CPU для многозадачности
Страница №9
Page Sharing
Page Sharing
Страница №10
Page Sharing
Как это работает:
Вычисляются контрольные суммы всех страниц памяти и заносятся в таблицу
По всей таблице ищутся совпадающие значения
Производится побитовое сравнение страниц с одинаковыми контрольными суммами
Идентичные страницы хранятся в одном экземпляре
Page Sharing Как это работает: Вычисляются контрольные суммы всех страниц памяти и заносятся в таблицу По всей таблице ищутся совпадающие значения Производится побитовое сравнение страниц с одинаковыми контрольными суммами Идентичные страницы хранятся в одном экземпляре
Страница №11
Page Sharing
Page Sharing
Страница №12
Эффективость Page Sharing
О чем молчит маркетинг VMware?
Процесс расчета и сравнения контрольных сум долог и затратен (может занять несколько часов)
Page Sharing – не динамическая технология
Лучше всего «сжимаются» свободные (нулевые) страницы памяти
Эффективость Page Sharing О чем молчит маркетинг VMware? Процесс расчета и сравнения контрольных сум долог и затратен (может занять несколько часов) Page Sharing – не динамическая технология Лучше всего «сжимаются» свободные (нулевые) страницы памяти
Страница №13
Эффективность Page Sharing
Если не используются большие страницы памяти (2Мб)
4Кб-страницы – это вчерашний день
Низкая производительность
Если ОС не утилизирует память полностью (SuperFetch)
ASLR – технология размещения исполняемого кода по случайным адресам – снижает эффективность Page Sharing
Эффективность Page Sharing Если не используются большие страницы памяти (2Мб) 4Кб-страницы – это вчерашний день Низкая производительность Если ОС не утилизирует память полностью (SuperFetch) ASLR – технология размещения исполняемого кода по случайным адресам – снижает эффективность Page Sharing
Страница №14
Second Level Paging
Second Level Paging
Страница №15
Second Level Paging
Свопинг страниц памяти на жесткий диск на уровне гипервизора
Гипервизор не знает, что происходит внутри гостевых ОС
Second Level Paging Свопинг страниц памяти на жесткий диск на уровне гипервизора Гипервизор не знает, что происходит внутри гостевых ОС
Страница №16
Second Level Paging
Чем это плохо?
Выгрузка в файл подкачки области памяти ядра гостевых ОС
Двойная подкачка
Падение производительности
Second Level Paging Чем это плохо? Выгрузка в файл подкачки области памяти ядра гостевых ОС Двойная подкачка Падение производительности
Страница №17
Second Level Paging (1/3)
Проблема 1: Свопинг ресурсов ядра гостевой ОС
“the guest operating system will never page out its kernel pages since those pages are critical to ensure guest kernel performance. The hypervisor, however, cannot identify those guest kernel pages, so it may swap them out. In addition, the guest operating system reclaims the clean buffer pages by dropping them. Again, since the hypervisor cannot identify the clean guest buffer pages, it will unnecessarily swap them out to the hypervisor swap device in order to reclaim the mapped host physical memory.

-Understanding Memory Resource Management in VMware ESX Server p. 9-10; http://www.vmware.com/resources/techresources/10062
Second Level Paging (1/3) Проблема 1: Свопинг ресурсов ядра гостевой ОС “the guest operating system will never page out its kernel pages since those pages are critical to ensure guest kernel performance. The hypervisor, however, cannot identify those guest kernel pages, so it may swap them out. In addition, the guest operating system reclaims the clean buffer pages by dropping them. Again, since the hypervisor cannot identify the clean guest buffer pages, it will unnecessarily swap them out to the hypervisor swap device in order to reclaim the mapped host physical memory. -Understanding Memory Resource Management in VMware ESX Server p. 9-10; http://www.vmware.com/resources/techresources/10062
Страница №18
Second Level Paging (2/3)
Проблема 2: двойной пейджинг 
“Assuming the hypervisor swaps out a guest physical page, it is possible that the guest operating system pages out the same physical page, if the guest is also under memory pressure. This causes the page to be swapped in from the hypervisor swap device and immediately to be paged out to the virtual machine’s virtual swap device. Note that it is impossible to find an algorithm to handle all these pathological cases properly. ESX attempts to mitigate the impact of interacting with guest operating system memory management by randomly selecting the swapped guest physical pages.“ 

-Understanding Memory Resource Management in VMware ESX Server p. 9-10; http://www.vmware.com/resources/techresources/10062
Second Level Paging (2/3) Проблема 2: двойной пейджинг “Assuming the hypervisor swaps out a guest physical page, it is possible that the guest operating system pages out the same physical page, if the guest is also under memory pressure. This causes the page to be swapped in from the hypervisor swap device and immediately to be paged out to the virtual machine’s virtual swap device. Note that it is impossible to find an algorithm to handle all these pathological cases properly. ESX attempts to mitigate the impact of interacting with guest operating system memory management by randomly selecting the swapped guest physical pages.“ -Understanding Memory Resource Management in VMware ESX Server p. 9-10; http://www.vmware.com/resources/techresources/10062
Страница №19
Second Level Paging (3/3)
Проблема 3: производительность памяти против диска
Доступ к памяти:
DDR3-1600 = 5 ns;    DDR3-1333 = 6 ns
DDR3-1066 = 7.5 ns;    DDR3-800 = 10 ns
Поиск данных на диске (disk seek): ~8 milliseconds
Формула сравнения DDR3-800 и диска: .008/.000000010
DDR3-1600 в 1,600,000 раз быстрее диска
DDR3-1333 в 1,333,333 раз быстрее диска
DDR3-1066 в 1,066,666 раз быстрее диска
DDR3-800 в 800,000 раз быстрее диска
Dual layers of paging
Чрезмерное употребление снижает вашу производительность на порядки…
Second Level Paging (3/3) Проблема 3: производительность памяти против диска Доступ к памяти: DDR3-1600 = 5 ns; DDR3-1333 = 6 ns DDR3-1066 = 7.5 ns; DDR3-800 = 10 ns Поиск данных на диске (disk seek): ~8 milliseconds Формула сравнения DDR3-800 и диска: .008/.000000010 DDR3-1600 в 1,600,000 раз быстрее диска DDR3-1333 в 1,333,333 раз быстрее диска DDR3-1066 в 1,066,666 раз быстрее диска DDR3-800 в 800,000 раз быстрее диска Dual layers of paging Чрезмерное употребление снижает вашу производительность на порядки…
Страница №20
Падение производительности
-Understanding Memory Resource Management in VMware ESX Server p. 16; http://www.vmware.com/resources/techresources/10062
Падение производительности -Understanding Memory Resource Management in VMware ESX Server p. 16; http://www.vmware.com/resources/techresources/10062
Страница №21
Hyper-V R2 SP 1 
Dynamic Memory
Hyper-V R2 SP 1 Dynamic Memory
Страница №22
Цели Dynamic Memory
Высокий уровень плотности VM с минимальным влиянием на производительность системы в целом (как хоста, так и гостевых ОС)
Одинаково хорошо работать с различными типами нагрузок VM – например, серверами или десктопами, с микшированной нагрузкой
Добавлять минимальную нагрузку на систему, особенно - память
Проходить тест – «вроде, это выглядит правильно»
Цели Dynamic Memory Высокий уровень плотности VM с минимальным влиянием на производительность системы в целом (как хоста, так и гостевых ОС) Одинаково хорошо работать с различными типами нагрузок VM – например, серверами или десктопами, с микшированной нагрузкой Добавлять минимальную нагрузку на систему, особенно - память Проходить тест – «вроде, это выглядит правильно»
Страница №23
Запустили виртуалки
Запустили виртуалки
Страница №24
Прошло 15 минут…
Прошло 15 минут…
Страница №25
Прошло 15 минут…
Прошло 15 минут…
Страница №26
Добавление/удаление памяти
Добавление памяти
Задействована гостевая ос
Synthetic Memory Driver (VSP/VSC Pair)
Никакой эмуляции со стороны Hyper-V
Легкий и быстрый процесс
Удаление памяти
Запрос на удаление памяти
Использование Ballooning
«Портит» показания task manager в гостевой ОС
Добавление/удаление памяти Добавление памяти Задействована гостевая ос Synthetic Memory Driver (VSP/VSC Pair) Никакой эмуляции со стороны Hyper-V Легкий и быстрый процесс Удаление памяти Запрос на удаление памяти Использование Ballooning «Портит» показания task manager в гостевой ОС
Страница №27
Уменьшение памяти
Для уменьшения памяти используется balloon dirver
«Отчуждению» подлежат только неиспользуемые области памяти
При «отчуждении» область памяти захватывается драйвером balloon и помечается как Driver Locked
При добавлении памяти драйвер может возвращать захваченные адресные пространства
Таким образом, гостевая ОС «не замечает», что память «отнималась». Для гостевой ОС память как была, так и остается, лишь на время захваченная драйвером.
Уменьшение памяти Для уменьшения памяти используется balloon dirver «Отчуждению» подлежат только неиспользуемые области памяти При «отчуждении» область памяти захватывается драйвером balloon и помечается как Driver Locked При добавлении памяти драйвер может возвращать захваченные адресные пространства Таким образом, гостевая ОС «не замечает», что память «отнималась». Для гостевой ОС память как была, так и остается, лишь на время захваченная драйвером.
Страница №28
Dynamic Memory
Dynamic Memory
Страница №29
Требования
Требования к хосту:
Windows Server 2008 R2 SP1
Microsoft Hyper-V Server 2008 R2 SP1
Требования к гостевой ОС:
Windows Server 2003, 2008 & 2008 R2
Web, Standard, Enterprise и Datacenter Editions
32-бита и 64-бита
Windows Vista and Windows 7
Enterprise и Ultimate Editions
32-бита и 64-бита
Требования Требования к хосту: Windows Server 2008 R2 SP1 Microsoft Hyper-V Server 2008 R2 SP1 Требования к гостевой ОС: Windows Server 2003, 2008 & 2008 R2 Web, Standard, Enterprise и Datacenter Editions 32-бита и 64-бита Windows Vista and Windows 7 Enterprise и Ultimate Editions 32-бита и 64-бита
Страница №30
Архитектура Dynamic Memory
Архитектура Dynamic Memory
Страница №31
Startup & Max
Startup: достаточно памяти для старта VM
BIOS ничего не знает DM
Гостевая OS может ничего не знать о DM
Default: 512MB
Max: не назначайте VM больше  этого максимального значения
Default: 64GB
Startup & Max Startup: достаточно памяти для старта VM BIOS ничего не знает DM Гостевая OS может ничего не знать о DM Default: 512MB Max: не назначайте VM больше этого максимального значения Default: 64GB
Страница №32
Pressure & Priority
Pressure – это концепт
Как много памяти у VM сейчас?
Сколько памяти VM требует?
Отношение и есть «pressure»
Работает с “committed memory”
Priority: какая VM получает память первой
1-10,000: default is 5,000
Более высокое значение более приоритетно
Pressure & Priority Pressure – это концепт Как много памяти у VM сейчас? Сколько памяти VM требует? Отношение и есть «pressure» Работает с “committed memory” Priority: какая VM получает память первой 1-10,000: default is 5,000 Более высокое значение более приоритетно
Страница №33
Memory Buffer
Как много “свободной” памяти мы должны оставить для VM?
Позволяет реагировать на «пульсирующие» нагрузки в гостевой ОС
Может быть занята по кеш
“Я хотел бы сконфигурировать мои VM для того, чтобы у них было около ~20% свободной памяти”
Memory Buffer Как много “свободной” памяти мы должны оставить для VM? Позволяет реагировать на «пульсирующие» нагрузки в гостевой ОС Может быть занята по кеш “Я хотел бы сконфигурировать мои VM для того, чтобы у них было около ~20% свободной памяти”
Страница №34
Архитектура Dynamic Memory
Архитектура Dynamic Memory
Страница №35
Dynamic Memory
demo
Dynamic Memory demo
Страница №36
Dynamic Memory APIs
Доступен публично
http://msdn.microsoft.com/en-us/library/cc136856(VS.85).aspx
Используются WMI-интерфейсы DMTF
Dynamic Memory APIs Доступен публично http://msdn.microsoft.com/en-us/library/cc136856(VS.85).aspx Используются WMI-интерфейсы DMTF
Страница №37
Переход на R2 Service Pack 1
Что нужно сделать для успешного использования Dynamic Memory?
Переход на R2 Service Pack 1 Что нужно сделать для успешного использования Dynamic Memory?
Страница №38
3 шага…
Убедиться, что VM готовы к обновлениям
Обновить Хост
Обновить Guest Integration Services
3 шага… Убедиться, что VM готовы к обновлениям Обновить Хост Обновить Guest Integration Services
Страница №39
Заключение
Memory Overcommit – маркетинговое пугало
DM превращает память в такой же динамический ресурс, как и процессоры
DM позволяет добиться большей консолидации без ущерба для производительности
Заключение Memory Overcommit – маркетинговое пугало DM превращает память в такой же динамический ресурс, как и процессоры DM позволяет добиться большей консолидации без ущерба для производительности
Страница №40
Вопросы?
Вопросы?
Страница №41
www.techdays.in.ua
http://www.techdays.in.ua 
Новый информационный видеоресурс и портал
Содержит видеоматериалы с семинаров, курсов, вебкастов и т.п.
По различным инфраструктурным решениям
Используйте для обучения, справочной информации, знакомства с новыми технологиями
Пополняется ориентировочно несколько раз в неделю
www.techdays.in.ua http://www.techdays.in.ua Новый информационный видеоресурс и портал Содержит видеоматериалы с семинаров, курсов, вебкастов и т.п. По различным инфраструктурным решениям Используйте для обучения, справочной информации, знакомства с новыми технологиями Пополняется ориентировочно несколько раз в неделю
Страница №42
It-club.in.ua
It-club.in.ua
Страница №43
Информация вложена в изображении слайда