Архив метки: KVM

Экономия оперативной памяти с KSM

KSM (Kernel SamePage Merging, также: Kernel Shared Memory, Memory Merging) — технология ядра, позволяющая объединять одинаковые страницы памяти между различными процессами в одну для совместного использования. Эта возможность позволяет снизить общее использование памяти виртуальными гостевыми системами при использовании KVM. Модуль ядра ksmd запускает сканирование памяти с заданным интервалом времени (настройка sleep_millisecs). Идентичные блоки объединяются в одну, а освободившиеся дубликаты удаляются. При этом, общая на несколько процессов страница помечается флагом «copy-on-write» и будет разделена ядром при следующем изменении каким либо из процессов. KSM поддерживается ядром Linux, начиная с версии 2.6.32, и доступно в QEMU с версии 0.12.

К плюсам данной технологии относится выделение превышающих физическое значение ресурсов памяти без использования файлов подкачки. Например, можно раздать 52 раза по 1GB виртуальным машинам с одинаковой Windows XP на борту и занять при этом физически всего 16GB реальной памяти хоста (эксперименты Red Hat). Из минусов — расходуется процессорное время, поэтому на машинах со слабым CPU включение KSM может больше навредить.

Читать далее

Увеличение корневого раздела на LVM в Linux

Предположим, нам стало места на системном разделе в виртуальной машине под KVM/VMWare или вовсе в облаке какого-либо хостинга.После физического увеличения размера блочного устройства для виртуальной машины внутри ничего не поменяется, и система продолжит думать, что всё плохо.

Последовательность действий при использовании LVM такова:
1. Увеличиваем размер раздела, выделенного под LVM
2. Увеличиваем физический раздел pv
3. Увеличиваем логический раздел lv по аналогии с обычной системой разметки
4. Расширяем файловую систему на увеличенном разделе

Читать далее