Новости Статьи VMware Veeam StarWind vStack Microsoft Nakivo Citrix Symantec События Релизы Видео Контакты Авторы RSS
Виртуализация и виртуальные машины

Все самое нужное о виртуализации и облаках

Более 6230 заметок о VMware, AWS, Azure, Veeam, Kubernetes и других

VM Guru | Ссылка дня: VMware Explore Video Library

Как теперь работает технология дедупликации страниц памяти Transparent Page Sharing в vSphere 6.0.


Какое-то время назад мы писали о том, что технология дедупликации страниц памяти Transparent Page Sharing (TPS) с приходом больших страниц памяти становится ненужной (а в последних версиях vSphere и вовсе она отключена). Но это не значит, что сейчас TPS нигде не используется совсем - ведь большие страницы, при условии недостатка ресурсов памяти на хост-сервере, гипервизор ESXi может разламывать на маленькие, после чего дедуплицировать их.

Между тем, в последних релизах VMware vSphere, включая ESXi 6.0, появилась более гранулярная модель управления механизмом TPS, который можно задействовать для отдельных групп виртуальных машин (например, серверы обрабатывающие одни и те же данные, где вероятность дубликатов страниц высока). Называется этот механизм Salting (хэширование с солью).

Как известно, TPS производит хэширование страниц памяти виртуальных машин, после чего происходит сравнение хэшей на предмет их совпадения. Если они совпадают, то начинается побитовое сравнение этих страниц памяти, чтобы исключить ложное срабатывание дедупликации страниц (потому что, как известно, у двух разных исходных строчек теоретически может быть один хэш).

Если страницы полностью совпадают - вносятся изменения в таблицу страниц памяти, где для второй копии ставится просто ссылка на первую, а физически вторая копия страницы уничтожается.

При любой попытке записи в такую страницу со стороны виртуальной машины - мгновенно создается ее физическая копия с помощью механизма copy-on-write (CoW), и она уже перестает быть шаренной (каждая машина начинает использовать свою копию).

Так вот в последних версиях VMware vSphere механизм TPS работает не так просто. По умолчанию используется Salting, а в качестве этой самой соли используется UDID виртуальной машины, который всегда уникален для данного сервера vCenter. То есть перед снятием хэша со страницы памяти происходит добавление соли к исходным данным, а поскольку соль одинакова только для конкретной ВМ, то и дедупликация страниц со стороны TPS происходит только на уровне отдельной виртуальной машины (Intra-VM TPS).

Механизм Salting используется по умолчанию, начиная со следующих версий гипервизоров:

  • ESXi 5.0 Patch ESXi500-201502001
  • ESXi 5.1 Update 3
  • ESXi 5.5, Patch ESXi550-201501001
  • ESXi 6.0

Управлять этим механизмом можно из расширенных настроек хоста VMware ESXi (Advanced Settings, раздел Mem). По умолчанию используется расширенная настройка Mem.ShareForceSalting в значении 2. Это означает, что salting включен и работает Intra-VM TPS.

Если же мы поставим эту настройку в значение 0, как на рисунке выше, то соль перестанет добавляться к хэшу при работе алгоритма TPS, а значит он будет работать для всех виртуальных машин на хосте (Inter-VM TPS).

Ну и, как становится понятным, TPS можно включить для отдельной группы виртуальных машин на хосте ESXi, для чего нужно использовать одинаковую соль для этих виртуальных машин. Для этого в расширенных настройках виртуальной машины нужно добавить параметр sched.mem.pshare.salt с одинаковым значением у всех нужных вам ВМ (это также можно сделать и в vmx-файле).

В этом случае значением настройки Mem.ShareForceSalting должно быть 1 или 2 (разницы тут особой нет, кроме того, что если у вас используется значение 1, то при отсутствии соли включится Inter-VM sharing).

Ну и в таблице ниже приведем различия в работе алгоритма TPS для различных значений Mem.ShareForceSalting и в зависимости от заполненности sched.mem.pshare.salt для виртуальных машин.

Значение Mem. ShareForceSalting (настройка уровня хоста)

Значение sched.mem.pshare.salt (настройка уровня ВМ)

vc.uuid (свойство ВМ)

Значение соли в настройках ВМ

TPS между виртуальными машинами (Inter-VM)

TPS внутри каждой из ВМ (Intra-VM)

0

Игнорируется

Игнорируется

0

Да, между всеми машинами на хосте

Да

1

Установлено

Игнорируется

Используется sched.mem.pshare.salt

Только между ВМ с одинаковой солью

Да

1

Не установлено

Игнорируется

0

Да, между всеми машинами на хосте

Да

2

Установлено

Игнорируется

sched.mem.pshare.salt

Только между ВМ с одинаковой солью

Да


(по умолчанию)

Не установлено (по умолчанию)

Используется

Используется vc.uuid

No inter-VM TPS

Да

2

Не установлено

Отсутствует по какой-либо причине

Используется случайный номер для каждой ВМ

No inter-VM TPS

Да

Для более детальной информации вы можете обратиться к статье KB 2097593.


Таги: VMware, vSphere, Memory, Обучение, TPS, Performance, ESXi, VMachines

Отключенный Transparent Page Sharing на хосте VMware ESXi - сколько можно сэкономить, если включить его?


Осенью мы писали о том, что компания VMware планирует отключить технологию Transparent Page Sharing (TPS) в новых релизах платформы виртуализации VMware vSphere. Напомним, что TPS - это механизм поиска и удаления дубликатов страниц памяти в целях экономии физического пространства RAM (вместо самой дублирующейся страницы хранится только ссылка на нее).

Технологию TPS было решено прекратить использовать по двум причинам:

  • Использование в современных ОС больших страниц памяти (large memory pages) размером в 2 МБ делает намного менее вероятным появление дубликатов.
  • Использование одной копии страницы памяти несколькими ВМ создает потенциальные проблемы безопасности.

На данный момент статус отключенности TPS по умолчанию на хостах VMware ESXi таков:

  • В ESXi 5.5 U2d, запланированном на первый квартал 2015 года, TPS будет отключен.
  • В ESXi 5.1 U3, выпущенном 4 декабря 2014 года, TPS уже отключен.
  • В ESXi 5.0 U3d, запланированном на первый квартал 2015 года, TPS будет отключен.

Однако не стоит сбрасывать TPS со счетов - возможно, если вы используете старые ОС (Windows 2003) и инфраструктуру VDI на базе старых клиентских ОС, TPS сможет сэкономить вам какое-то количество памяти (если безопасность TPS вас не особенно заботит). Ну и напомним, что TPS отключена только для межмашинного взаимодействия и продолжает работать для внутримашинного.

Для этого в VMware сделали скрипт Host Memory Assessment Tool.ps1, который показывает количество памяти на хостах, которую можно сэкономить с помощью TPS.

Вот что он делает:

  • Соединяется с vCenter и определяет хосты ESXi
  • Позволяет включить SSH на хостах
  • Генерирует отчет об обследовании на экономию по TPS
  • Можно экспортировать результаты в CSV
  • Можно снова включить SSH, если нужно

Пока скрипт позволяет указать только одну пару логин-пароль на хостах ESXi, но надеемся это будет исправлено в следующих версиях.

Здесь вот какие значения в колонках:

  • Total Host Memory – объем физической памяти хоста (доступной vmkernel).
  • Host Mem Saved via TPS – объем памяти, которая сэкономлена TPS.
  • Host Mem Saved via TPS Zero Pages – объем памяти, которая экономится на нулевых страницах. Фактически такая экономия не актуальна для большинства случаев, так как сэкономленные нули означают, что недостатка ресурсов не наблюдается.
  • Potential Host Mem Savings Lost – а вот эта экономия уже на реально используемых страницах. Объем, указанный тут, показывает сколько можно потерять, отключив TPS на хосте.
  • Host Free Mem – объем свободной оперативной памяти (по данным vmkernel). Если свободной памяти меньше, чем значение в предыдущей колонке, то при отключении TPS будет своппинг.

Вот такая штука, можно проводить эксперименты (особенно полезно это будет для крупной инфраструктуры). Скрипт безопасен для памяти хостов, так как использует режим доступа к памяти только для чтения.

После запуска скрипта вам может потребоваться отключить или включить Transparent Page Sharing на хосте ESXi. В этом случае вам пригодится KB 2097593.


Таги: VMware, TPS, Memory, ESXi, vSphere

Технология Transparent Page Sharng (TPS) будет отключена по умолчанию в следующих релизах и обновлениях VMware vSphere.


Четыре с половиной года назад мы писали про то, что у технологии Transparent Page Sharing (TPS), которая по-умолчанию используется в VMware vSphere, нет будущего. Напомним, что TPS - это механизм поиска и удаления дубликатов страниц памяти в целях экономии физического пространства RAM (вместо самой дублирующейся страницы хранится ссылка на нее).

Технолония потеряла актуальность, когда вовсю стали применяться большие страницы памяти (Large Memory Pages), для которых размер страницы равен 2 МБ, а значит вероятность появления двух полностью одинаковых страниц очень низка.

Ну вот и пришло время эту технологию отключать. На днях компания VMware выпустила статью базы знаний "Security considerations and disallowing inter-Virtual Machine Transparent Page Sharing", в которой заявляется о том, что в будущих релизах платформы виртуализации VMware vSphere функции TPS будут по умолчанию отключены (хотя и доступны).

Это во многом связано с тем, что TPS (помимо негативного влияния на производительность хоста) - это еще и потенциальный источник проблем, связанных с неавторизованным доступом к данным оперативной памяти. Эти моменты основаны на аналитическом исследовании, выводы из которого опубликованы в статье базы знаний "Additional Transparent Page Sharing management capabilities in ESXi 5.5 patch October 16, 2014 and ESXi 5.1 and 5.0 patches in Q4, 2014 (2091682)".

Вот когда TPS будет отключен в VMware vSphere:

  • ESXi 5.5 Update release – Q1 2015
  • ESXi 5.1 Update release – Q4 2014
  • ESXi 5.0 Update release – Q1 2015
  • VMware ESX 6.x и более поздние версии

Более подробно о проблемах с TPS написано вот в этой статье на блогах VMware.

Если же вы хотите отключить этот механизм уже прямо сейчас, то нужно сделать следующее:

  1. Залогиниться на ESX\ESXi или vCenter Server через vSphere Client.
  2. Выбрать нужный хост и зайти на вкладку Configuration, затем перейти в Advanced Settings в секции Software.
  3. Выбираем раздел Mem и в нем устанавливаем значение параметра Mem.ShareScanGHz в 0.

После патча и обновлений ESXi механизм TPS можно будет включить следующим образом (Advanced Settings в секции Software):

  • Параметр Mem.ShareForceSalting (включение TPS на уровне всего хоста ESXi). Если значение стоит 0 - то значит TPS по-прежнему работает на хосте, если 1 - механизм отключен.
  • Параметр sched.mem.pshare.salt (ставится на уровне ВМ) позволяет включать/отключать TPS для отдельных виртуальных машин (например, старые Windows или линуксы - для них можно было бы включить). Когда параметр ShareForceSalting установлен в значение 1, то для нуждающихся в TPS машин в их Advanced Configuration нужно установить одинаковые значения "соли". Без этого TPS не работает - соответственно, он отключен.

Таги: VMware, vSphere, TPS, Memory, Performance, Security, Update

Возможности Dynamic Memory в Microsoft Hyper-V.


Мы уже писали о том, какими возможностями будет обладать технология Dynamic Memory в гипервизоре Hyper-V и почему в ней будет отсутствовать аналог Transparent Page Sharing (TPS) от VMware. Совсем недавно компания Microsoft раскрыла подробности работы техник Dynamic Memory, которые теперь доступны в виде презентации, которую можно скачать с сайта TechEd:


Таги: Microsoft, Hyper-V, Dymanic Memory, VMachines, Server, VDI, TPS

Важная информация от Microsoft - техники Dynamic Memory в Hyper-V и есть ли будущее Transparent Page Sharing в VMware vSphere 4?


Многим пользователям VMware должна быть известна техника Memory Overcommit, которая представляет собой, по-сути, совокупность трех технологий:

  • Memory Balooning - выдергивание неиспользуемой памяти из гостевой системы и ее передача нуждающимся виртуальным машинам
  • Технологии использования файлов подкачки (swap) и Memory Compression (появится в следующих релизах vSphere)
  • Transparent Page Sharing - техника поиска и удаления дубликатов страниц памяти виртуальных машин (остаются только ссылки на них)

Сегодня мы как раз и поговорим о последней технологии - Transparent Page Sharing. По статистике она позволяет экономить до 15% и более оперативной памяти хост-сервера VMware ESX, что, естественно, ведет к большему (по сравнению с другими платформами) коэффициенту консолидации виртуальных машин.

Отчасти, именно благодаря Transparent Page Sharing, продуктам компании VMware удавалось выгодно отличаться от конкурирующих платформ виртуализации. Page Sharing работает со страницами памяти размером 4 килобайта, что практически не влияет на производительность сервера виртуализации.

Так вот, согласно вот этой статье Alessandro Perilli, операционные системы Windows 7 и Windows Server 2008 R2 уже поддерживают технологию Large Memory Pages, которая позволяет использовать страницы памяти размером 2 мегабайта (чувствуете разницу на 2 с половиной порядка?). Кроме того, эта технология поддерживается и в процессорах Intel Nehalem, а также последних моделях AMD Opteron. Так вот исследование показало, что большие страницы памяти Large Memory Pages работают на 20% производительнее маленьких на новом железе. Что позволяет говорить о том, что эта техника использования памяти в операционных системах скоро станет стандартной.

Теперь вернемся к Transparent Page Sharing. Во-первых, подумайте - сколько дубликатов страниц вы найдете, если размер страницы увеличился в 500 раз? Наверное, процент этих страниц будет очень и очень близок к нулю. Во-вторых, по заверениям Microsoft (объяснявшей возможности функций Dynamic Memory в новой версии Hyper-V), процесс исследования двухмегабайтовых страниц памяти побитно, их хэширование и сохранение в таблице учета дубликатов может занять часы!

Данные факты подтверждаются и сотрудником самой VMware, который говорит о том, что ESX не трогает большие страницы:

The only problem is that when large pages is used, Page Sharing needs to find identical 2M chunks (as compared to 4K chunks when small pages is used) and the likelihood of finding this is less (unless guest writes all zeroes to 2M chunk) so ESX does not attempt collapses large pages and thats [sic] why memory savings due to TPS goes down when all the guest pages are mapped by large pages by the hypervisor.

Понимаете о чем это? Это о том, что технология Transparent Page Sharing в ее нынешнем виде может умереть...


Таги: TPS, VMware, ESX, vSphere, Memory Overcommit, Dynamic Memory, Hyper-V, Microsoft, vSphere, Blogs, RAM, Производительность, Performance

 
Интересное:





Зал Славы Рекламодателя
Ближайшие события в области виртуализации:

04/11/2024:  VMware Explore 2024 Барселона

Быстрый переход:
VMware Cloud StarWind VMachines Offtopic NAKIVO vStack Gartner Veeam Vinchin Nakivo IT-Grad Teradici VeeamON VMworld PowerCLI Citrix VSAN GDPR 5nine Hardware Nutanix vSphere RVTools Enterprise Security Code Cisco vGate Microsoft SDRS Parallels IaaS HP VMFS VM Guru Oracle Red Hat Azure KVM VeeamOn 1cloud DevOps Docker Storage NVIDIA Partnership Dell Virtual SAN Virtualization VMTurbo vRealize VirtualBox Symantec Softline EMC Login VSI Xen Amazon NetApp VDI Linux Hyper-V IBM Google VSI Security Windows vCenter Webinar View VKernel Events Windows 7 Caravan Apple TPS Hyper9 Nicira Blogs IDC Sun VMC Xtravirt Novell IntelVT Сравнение VirtualIron XenServer CitrixXen ESXi ESX ThinApp Books P2V vSAN Tanzu VCF AI Intel Workstation Private AI VCP V2V HCX Aria NSX DPU Explore Update EUC Avi Broadcom Community Skyline Host Client Chargeback Horizon Labs SASE Workspace ONE Networking Backup Ransomware Tools Performance Lifecycle Network AWS API USB SDDC Fusion Whitepaper SD-WAN Mobile VMUG SRM ARM HCI Converter Photon OS Operations VEBA App Volumes Certification VMConAWS Workspace Imager SplinterDB DRS SAN vMotion Open Source iSCSI Partners HA Monterey Kubernetes vForum Learning vRNI UAG Support Log Insight AMD vCSA NSX-T Graphics NVMe HCIBench SureBackup vCloud Обучение Web Client vExpert OpenStack UEM CPU PKS vROPs Stencils Bug VTL Forum Video Update Manager VVols DR Cache Storage DRS Visio Manager Virtual Appliance PowerShell LSFS Client Datacenter Agent esxtop Book Photon Cloud Computing SSD Comparison Blast Encryption Nested XenDesktop VSA vNetwork SSO VMDK Appliance VUM HoL Automation Replication Desktop Fault Tolerance Vanguard SaaS Connector Event Free SQL Sponsorship Finance FT Containers XenApp Snapshots vGPU Auto Deploy SMB RDM Mirage XenClient MP iOS SC VMM VDP PCoIP RHEV vMA Award Licensing Logs Server Demo vCHS Calculator Бесплатно Beta Exchange MAP ONE DaaS Hybrid Monitoring VPLEX UCS GPU SDK Poster VSPP Receiver VDI-in-a-Box Deduplication Reporter vShield ACE Go nworks iPad XCP Data Recovery Documentation Sizing Pricing VMotion Snapshot FlexPod VMsafe Enteprise Monitor vStorage Essentials Live Migration SCVMM TCO Studio AMD-V KB VirtualCenter NFS ThinPrint Stretched Memory Bugs Director ESA Troubleshooting Android Python Upgrade ML Hub Guardrails CLI VCPP Driver Foundation HPC Orchestrator Optimization SVMotion Diagram Ports SIOC Plugin Helpdesk VIC VDS Migration Air DPM Flex Mac SSH VAAI Heartbeat MSCS Composer
Полезные постеры:

Постер VMware vSphere PowerCLI 10

Постер VMware Cloud Foundation 4 Architecture

Постер VMware vCloud Networking

Постер VMware Cloud on AWS Logical Design Poster for Workload Mobility

Постер Azure VMware Solution Logical Design

Постер Google Cloud VMware Engine Logical Design

Постер Multi-Cloud Application Mobility

Постер VMware NSX (референсный):

Постер VMware vCloud SDK:

Постер VMware vCloud Suite:

Управление памятью в VMware vSphere 5:

Как работает кластер VMware High Availability:

Постер VMware vSphere 5.5 ESXTOP (обзорный):

 

Популярные статьи:
Как установить VMware ESXi. Инструкция по установке сервера ESXi 4 из состава vSphere.

Включение поддержки технологии Intel VT на ноутбуках Sony VAIO, Toshiba, Lenovo и других.

Типы виртуальных дисков vmdk виртуальных машин на VMware vSphere / ESX 4.

Как работают виртуальные сети VLAN на хостах VMware ESX / ESXi.

Как настроить запуск виртуальных машин VMware Workstation и Server при старте Windows

Сравнение Oracle VirtualBox и VMware Workstation.

Что такое и как работает виртуальная машина Windows XP Mode в Windows 7.

Работа с дисками виртуальных машин VMware.

Диски RDM (Raw Device Mapping) для виртуальных машин VMware vSphere и серверов ESX.

Подключение локальных SATA-дисков сервера VMware ESXi в качестве хранилищ RDM для виртуальных машин.

Где скачать последнюю версию VMware Tools для виртуальных машин на VMware ESXi.

Инфраструктура виртуальных десктопов VMware View 3 (VDI)

Как перенести виртуальную машину VirtualBox в VMware Workstation и обратно

Как использовать возможности VMware vSphere Management Assistant (vMA).

Бесплатные утилиты для виртуальных машин на базе VMware ESX / ESXi.

Интервью:

Alessandro Perilli
virtualization.info
Основатель

Ратмир Тимашев
Veeam Software
Президент


Полезные ресурсы:

Последние 100 утилит VMware Labs

Новые возможности VMware vSphere 8.0 Update 1

Новые возможности VMware vSAN 8.0 Update 1

Новые документы от VMware

Новые технологии и продукты на VMware Explore 2022

Анонсы VMware весной 2021 года

Новые технологии и продукты на VMware VMworld 2021

Новые технологии и продукты на VMware VMworld 2020

Новые технологии и продукты на VMware VMworld Europe 2019

Новые технологии и продукты на VMware VMworld US 2019

Новые технологии и продукты на VMware VMworld 2019

Новые технологии и продукты на VMware VMworld 2018

Новые технологии и продукты на VMware VMworld 2017



Copyright VM Guru 2006 - 2024, Александр Самойленко. Правила перепечатки материалов.
vExpert Badge