ПредишенСледващото

KSM технологии (Kernel SamePage Сливането)

Технология, свободно общество KSM (ядро samepage обединяване)
Фигура 1. Service KSM

Тази функция е полезна, когато използвате KVM виртуализация. Гост виртуална машина при стартиране наследява само паметта на майка QEMU-KVM. След гост виртуална машина работи, съдържанието на образа на своята операционна система могат да бъдат споделяни с други машини за гости, които използват същата операционна система или същите приложения. KSM идентифицира и обединява само страници с памет, които не оказват влияние върху действието на гости виртуална машина и не застрашава безопасността както на физическа машина хипервайзора и други гости машините. KSM позволява KVM изискват еднаква площ памет на гости виртуалните машини са чести. Експериментална реализация на KSM от Red Hat, показа, че 52 виртуален инстанция на Windows XP с 1GB памет може да работи на компютър с 16 GB оперативна памет.

KSM осигурява по-добро използване на паметта и да ускори работата си. При използване на общи данни KSM-малко измити от кеша на процесора и основната памет. Това намалява броя на "пропуските" Кеш при машините за гости, в резултат на което увеличава производителността на приложения и операционни системи. В допълнение, за споделяне на памет намалява общият размер на паметта се изисква от машината за гости, която ви позволява да "гъста", за да се използват съществуващите ресурси.

KSM и NUMA

Започвайки с Red Hat Enterprise Linux 6.5, KSM работи с NUMA (Non-с обща памет). Тази функция позволява на KSM чрез комбиниране страници вземат предвид топологията на NUMA. Това предотвратява случаи, когато страници са поставени на отдалечени възли, и свързаните с тях проблеми с производителността дистанционно разполагане.

Red Hat препоръчва да не се извършва обединението на една и съща страница, ако тези страници са разположени на различни възли NUMA. За да направите това, трябва да инсталирате на персонализирания параметър / сис / ядро ​​/ мм / KSM / merge_nodes до 0. Защо? Вътрешното ядро ​​броячи могат да започнат конфликт помежду си, след като голяма част от вътрешно-възли сливания. В резултат на това numad демон да се бърка. Ако системата има голямо количество памет, която може да се постигне по-висока производителност, като изключите и деактивиране KSM демон. Обърнете се към създаването Red Hat Enterprise Linux производителност за повече информация за NUMA.

Услуги KSM

За да контролирате KSM в Red Hat Enterprise Linux има две услуги:

  • KSM започва на услуги и спирки KSM нишки на ядрото.
  • ksmtuned услуга следи услуга KSM. динамично контролиране страниците на сливането. ksmtuned услуги KSM започва на услуги и спира, когато паметта е достатъчно. Адаптирането към KSM, например, се създава или унищожени гост машина, трябва да се обадите на услуги ksmtuned пренастройване.

И двете от тези услуги се контролира от стандартните инструменти за управление на услуги.

KSM услуга

KSM услуга, включена в пакета QEMU-KVM. По подразбиране, KSM е забранен в Red Hat Enterprise Linux 6. Въпреки това, при използване на Red Hat Enterprise Linux 6 като KVM домакин, обикновено е включен KSM услуги и ksmtuned.

Когато услугата KSM бягане, KSM ще споделя до половината от основната системна памет на физическа машина, на която той се помещава. Започнете KSM на услуги. да KSM използва повече страници поделена памет.

KSM услуга може да се добавя към стартиране по подразбиране. Направи услуга KSM постоянно с командата chkconfig.

настройки KSM услуги

В ksmtuned услуга няма никакви опции. Service ksmtuned затвори и регулира KSM. Service ksmtuned уведомен процес libvirt. Тя е създадена или унищожена гост виртуална машина.

Ако се обадите на услуги ksmtuned пренастроите. обслужване ksmtuned препрочитам конфигурационния файл и да рестартирате настройка. Преди да се пристъпи към описанието на параметрите във файла, е необходимо да се изяснят понятията:

  • NPAGES - KSM колко страници ще бъдат сканирани преди ksmd ще влязат в режим на заспиване, разположен в / сис / ядро ​​/ мм / KSM / pages_to_scan;
  • RSZ - сумата от паметта на всички процеси QEMU-KVM. в KB;
  • thres - праг за активиране, в KB; KSM цикъл задейства, когато thres + RSZ надвишава общия размер на системната памет.

Променливи и мониторинг KSM

KSM запазва данните от мониторинга в директорията: / сис / ядро ​​/ мм / KSM /. Файловете в тази директория се обновяват ядрото и да предоставят точна представа за използването на KSM. Всеки един от тези файлове съдържа една числова стойност, която показва текущото състояние на услугата:

  • full_scans - брой на общия брой стартирания за сканиране;
  • pages_shared - общ брой на страниците на синтез;
  • pages_sharing - броят на страниците на синтез в момента.
  • pages_to_scan - броят на страниците, които не са били сканирани;
  • pages_unshared - общ брой на страниците на синтез, която разделя във връзка с регистрирането на нови данни;
  • pages_volatile - брой на страниците на сливане, който се отделя в момента;
  • тичам - дали KSM услуга е работещ;
  • sleep_millisecs - като KSM милисекунди, чакащи за следващия старт.

Резултати за конфигуриране дейности KSM се съхраняват в дневник / реактивна / дневник / ksmtuned. ако линията DEBUG = 1 добавен в /etc/ksmtuned.conf файл. Местоположение на лог файл може да бъде променена с помощта на параметъра LOGFILE. Промяна на местоположението на лог файла не се препоръчва и може да изисква специална конфигурация на SELinux.

спрете KSM

KSM намалява производителността, което може да бъде от значение, например, когато не са налице достатъчно процесорна мощ. Тази услуга може да бъде деактивирана чрез спиране на услугите и ksmtuned KSM. Stop деактивира KSM услуги до рестартиране.

За да деактивирате KSM с опазването на този статут след рестартиране, използвайте командата chkconfig:

Да не се скъпя на файла за виртуална памет

Уверете се, че общият размер на паметта, с оглед на файла за виртуална памет е достатъчна за всички стартирани процеси, независимо от това дали KSM започна. Това ще попречи на извънредни ситуации в случаите, когато страници спрат масово да бъдат споделени.

Подкрепете проекта - споделете линка, благодаря!