Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux

Використанні пам'яті віртуальними машинами VMware vSphere

Використанні пам'яті віртуальними машинами VMware vSphere-01

Всім привіт сьогодні хочу розповісти про використання пам'яті віртуальними машинами VMware vSphere. В VMware vSphere є кілька видів пам'яті і у вас, напевно, є ряд питань, яка з них що означає. Отже, якщо відкрити вкладку Summary в vSphere Client для віртуальної машини, ми побачимо ось таку картину:

Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux

Використанні пам'яті віртуальними машинами VMware vSphere-02

У vmware vsphere 5.5 ми бачимо

  • Memory - це та кількість оперативної пам'яті, яке ви виділили віртуальній машині при створенні. За це кількість гостьова ОС не вийде при її використанні. Це ж кількість пам'яті ви побачите в гостьовій ОС.
  • Memory Overhead - це кількість пам'яті, яке може знадобитися Гіпервізор на підтримку роботи віртуальної машини понад використовуваної пам'яті (тобто розрахункові накладні витрати на віртуалізацію, але не поточні).

Далі ми бачимо панель Resources, тут є такі показники:

Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux

Використанні пам'яті віртуальними машинами VMware vSphere-03

  • Consumed Host Memory - це кількість фізичної пам'яті хоста ESXI, виділеної віртуальної машині. Зазвичай це значення не більш значення Memory на попередньої картинки. Але може бути і більше, оскільки Consumed Host Memory включає в себе і Memory Overhead, але не з картинки вище, а реально використовуваний гіпервізором Overhead (про який йтиметься нижче). І важливий момент - лічильник Consumed для Memory на вкладці "Performance" не включає в себе Overhead.
  • Active Guest Memory - це кількість пам'яті, яке на думку гипервизора VMkernel активно використовується гостьовою операційною системою. Обчислюється цей параметр на базі статистичних показників. Тобто, якщо ОС не дуже активно використовує пам'ять, то можна їй її трохи підрізати в умовах браку ресурсів.

Тепер йдемо на вкладку "Resource Allocation" в vmware vsphere hypervisor. Тут все трохи складніше:

Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux

Використанні пам'яті віртуальними машинами VMware vSphere-04

З'являються ось такі показники:

Для Host Memory (бачимо, що це 2187 МБ = сконфигурированная пам'ять 2048 МБ + Overhead):

  • Consumed - це, знову-таки, обсяг споживаної віртуальною машиною фізичної пам'яті хоста ESXI (постійно змінюється). І він включає в себе накладні витрати гипервизора по пам'яті.
  • Overhead Consumption - це поточний обсяг витрат пам'яті на підтримку віртуальної машини (тут 42 МБ на відміну від розрахункового в 110 МБ)

А формула така: Consumed = Private + Overhead Comsumption

Для Guest Memory (2048 МБ налаштоване в настройках):

  • Private - це обсяг пам'яті фізично зберігається хостом для віртуальної машини (див. Формулу вище).
  • Shared - це обсяг пам'яті, який віддається іншим віртуальним машинам від різниці між сконфігурованим обсягом (Configured Memory) і споживаються (Consumed). Суть в тому, що ОС Windows при завантаженні очищає всю пам'ять віртуальної машини, але потім ці порожні сторінки додатками не використовуються. Тому гипервизор віддає їх іншим ВМ, поки ВМ, що володіє пам'яттю не зажадає їх. Ці сторінки і є Shared. Як ми бачимо, Private + Shared = Guest Memory.
  • Swapped - це обсяг пам'яті, який пішов у файл підкачки vswp. Тобто це не файл підкачки Windows, а файл підкачки в папці з віртуальною машиною. Само собою цей показник повинен бути нульовим або зовсім невеликим, оскільки своппинг, який робить ESX (а точніше VMkernel) - це погано, тому що він не знає (на відміну від Windows), які сторінки потрібно складати в своп, тому кладе все підряд.
  • Compressed - це обсяг пам'яті, який отримано після стиснення сторінок за допомогою механізму Memory Compression (тобто, що зберігається в VM Compression Cache).
  • Ballooned - це обсяг пам'яті, який забрав balloon-драйвер (vmmemctl), щоб віддати її іншим нужденним віртуальним машинам.
  • Unaccessed - це пам'ять, до якої гостьова ОС ні разу не зверталася (у Windows - це близько до нуля, так як вона обнуляє пам'ять при завантаженні, у Linux має бути якось інакше).
  • Active - знову-таки, активно використовувана пам'ять на основі статистики гипервизора.

На хорошому і продуктивному хості VMware ESXI метрики Compressed, Ballooned, Unaccessed - повинні бути близько нуля, так як це означає що машини не борються за ресурси (тобто не стискають сторінки і не перерозподіляють пам'ять між собою). Ну і, звичайно, якщо показник Active маленький, варто задуматися про урізання пам'яті (але спочатку подивіться в гостьову ОС, вона краще знає, ніж гипервизор, все-таки).

Ну і остання секція Resource Settings:

  • Reservation, Limit, Shares, Configured
  • Worst Case Allocation - це скільки буде виділено віртуальної машині при найгіршому розкладі (максимальне використання ресурсів), тобто вся пам'ять буде використовуватися, та ще й накладні витрати будуть (тобто Configured + максимальний Overhead).
  • Overhead Reservation - це скільки зарезервовано пам'яті під Overhead гіпервізором.

Таблиця VMware ESXI Overhead

Така ось наочна табличка VMware ESXI Overhead

Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux

Використанні пам'яті віртуальними машинами VMware vSphere-VMware ESXI Overhead

Ось таке ось цікавий розподіл пам'яті віртуальними машинами vmware vsphere.

Популярні Схожі записи:

  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Host CPU usage і host memory usage
  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Що таке HA Admission control в ESXI 5.x.x
  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Як збільшити розмір пам'яті і кількість процесорів (ядер) на працюючій віртуальній машині в ESXI 5.x.x
  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Помилка The available Memory resources in the parent resource pool are insufficient for the operation в VMware ESXI 5.5
  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Як змінити розмір оперативної пам'яті і кількості CPU у віртуальної машини в PowerCLI
  • Використанні пам'яті віртуальними машинами vmware vsphere, настройка серверів windows і linux
    Що таке Transparent Page Sharing на VMware ESX / ESXi і як він впливає на продуктивність?

Схожі статті