Тут йдеться про набагато більше, ніж лише ESXi,
- Кожна віртуальна машина буде споживати до 4GBs + «над головою» , яка документально тут . Це залежить від vCPU, + виділеної пам'яті. Як мінімум кожен VM використовуватиме 4261,98 Мб (4096 + 165,98)
- Власна пам'ять ESXi, це залежить від обладнання. Найпростіший варіант - подивитися використання системної пам’яті в клієнті vSphere. З пам’яті я пам'ятаю, що вона становить приблизно 1,3 ГБ, але, як зазначено, дуже залежить від обладнання.
Розподіл пам'яті та перевиконання пам’яті
Зауважте, що гіпервізор не буде виділяти всю цю пам'ять наперед , це залежить від використання VM. Однак варто зрозуміти, що станеться, якщо віртуальні машини намагатимуться виділити та використовувати всю виділену їм пам'ять.
Максимум, який намагатиметься використовувати хост VM +, буде приблизно, пробіг 55 ГБ може змінюватись
- 1,3 ГБ, що використовується ESXi
- 4261,98 Мб * 13, що використовується ВМ
Існує ще один аспект, який слід врахувати, і це пороги пам'яті. За замовчуванням VMware має на меті отримати 6% вільного (високий поріг пам'яті). Таким чином, 55 Гб використовуваної пам'яті потрібно скоротити до ~ 45 ГБ
Це означає, що хост матиме приблизно 10 500 МБ пам'яті, яку йому потрібно повернути звідкись, якщо віртуальні машини використовуватимуть виділену їм пам'ять. Є три речі, які ESX робить, щоб знайти додаткові 10,5 ГБ.
Методи рекультивації пам'яті
- Прозорий обмін сторінками
- Повітряна куля
- Гіпервізорний обмін
Ви повинні прочитати та зрозуміти Розуміння управління ресурсами пам'яті на сервері VMware® ESX ™ .
Залежно від великої кількості факторів, комбінація всіх трьох волів / може статися на надмірно відданому хості. Вам потрібно перевірити своє оточення та відстежувати ці показники, щоб зрозуміти вплив надмірного скоєння.
Деякі грубі правила, які варто знати (усі у вищенаведеному документі та інших джерелах).
- Прозоре обмін сторінками не відбувається для віртуальних машин, які використовують 2/4 МБ сторінок. Оскільки ви виділили 4096 Мб для своїх віртуальних машин Windows, вони використовуватимуть сторінки 2/4 Мб за замовчуванням (залежно від PAE). Тільки під тиском пам'яті VMware розбиває великі сторінки до 4 КБ сторінок, якими можна ділитися. TPS покладається на використання непрацюючих циклів процесора та сканування сторінок пам'яті з певною швидкістю. Він повертає пам'ять відносно повільно (думайте годину, а не хвилину). Тож завантажувальний шторм означає, що TPS не допоможе вам. З трьох, це має найменший вплив на продуктивність. Більше з документа,
У системах віртуалізації з підтримкою апаратури (наприклад, Intel EPT Hardware Assist та AMD RVI Hardware Assist [6]) системи ESX автоматично повертає гостьові фізичні сторінки з великими фізичними сторінками хоста (2 МБ суміжної області пам'яті замість 4 КБ для звичайних сторінок) для кращі показники за рахунок менших пропусків TLB. У таких системах ESX не поділиться цими великими сторінками, оскільки: 1) ймовірність знайти дві великі сторінки, що мають однаковий вміст, низька, і 2) накладні витрати на порівняння біт-бітів для сторінки на 2 МБ набагато більше, ніж для сторінки 4 КБ. Однак ESX все ще генерує хеші для сторінок 4 КБ у межах кожної великої сторінки. Оскільки ESX не буде замінювати великі сторінки, під час розміщення хостів, велика сторінка буде розбита на невеликі сторінки, так що ці заздалегідь створені хеші можуть бути використані для обміну невеликими сторінками перед тим, як їх замінити. Коротше кажучи, ми не можемо спостерігати обмін будь-якими сторінками для апаратних систем віртуалізації пам’яті до тих пір, поки пам'ять хоста не буде перезапущена.
Повітря на повітряній кулі натискає наступне (пороги налаштовуються, за замовчуванням - це тоді, коли хост має менше 6% вільної пам'яті (між високим і програмним забезпеченням)). Не забудьте встановити драйвер та стежити за Java та керованими програмами загалом. ОС не має уявлення про те, що буде робити сміттєзбірник далі, і в кінцевому підсумку буде потрапляти сторінки, які були замінені на диск. Не рідкість практика для серверів, які запускають додатки Java виключно, відключати своп, щоб гарантувати, що цього не відбудеться. Подивіться сторінку 17 управління vSphere Memory, SPECjbb
Переміщення гіпервізора з трьох методів - єдиний, який гарантує, що "пам'ять" буде доступна гіпервізору за встановлений час. Це буде використано, якщо 1 і 2 не дасть йому достатньо пам’яті, щоб залишатися під жорстким порогом (за замовчуванням 2% вільної пам'яті). Прочитавши показники ефективності (зробіть своє), ви зрозумієте, що це найгірше з цих трьох. Намагайтеся уникати цього будь-якою ціною, оскільки вплив на продуктивність буде дуже помітним для майже всіх програм із двозначним відсотком
Є ще один стан, який слід знати про низький (за замовчуванням 1%). З посібника це може різко знизити вашу ефективність,
У рідкісному випадку, коли вільна пам'ять хоста опускається нижче низького порогового значення, гіпервізор продовжує відновлювати пам'ять шляхом заміни та стиснення пам'яті, а також додатково блокує виконання всіх віртуальних машин, які споживають більше пам'яті, ніж їх цільовий обсяг пам'яті.
Підсумок
Ключовим моментом наголоси є те, що неможливо передбачити з подій, як поводитиметься ваше оточення.
- Скільки може дати вам TPS? (Залежить від того, наскільки схожі ваші відеомагнітофони з їх ОС, пакетом оновлень та запущеними програмами)
- Як швидко ваші відеомашини розподіляють вашу пам'ять? Чим швидше вони роблять, тим більше шансів на те, що ви перейдете до наступного порогу, перш ніж менш вдала схема рекультивації пам'яті вдасться утримати вас у поточному порозі.
- Залежно від застосування, кожна схема рекультивації пам'яті матиме різний вплив.
Перевірте свій середній сценарій, ви склали 95% перцентильний сценарій і, нарешті, свій максимум, щоб зрозуміти, як буде працювати ваше середовище.
Редагуйте 1
Варто додати, що за допомогою vSphere 4 (або 4.1 не можу згадати), тепер можна помістити підкачку гіпервізора на локальний диск, але все-таки всмоктувати VM. Якщо ви використовуєте спільне зберігання, я настійно рекомендую перенести файл своп гіпервізора на локальний диск за замовчуванням. Це гарантує, що коли один хост знаходиться під сильним тиском пам'яті, він не впливає на всі інші VSphere хости / VM на одній спільній пам’яті.
Редагувати 2
На основі зауважень зробив той факт, що ESX не виділяє пам'ять вперед жирним шрифтом ...
Правка 3
Пояснили трохи більше про пороги пам’яті.