ǟǐǖ
GRLLVVQ
ǝǜnjǎǙǔǞǑǗǨǙǚǑǞǑǝǞǔǜǚǎnjǙǔǑǖǚǙǞǑǕǙǑǜǙǚǕ
ǔǏǔǛǑǜǎǔǓǚǜǙǚǕǎǔǜǞǟnjǗǔǓnjǢǔǔ
njǎǏǺǼǰDZDZǮǬ,ǰǺǶǾǺǼǾDZȁǹǹǬǿǶǻǼǺȀDZǽǽǺǼIIDYJ#PDLOUX
ǐǎǏǺǼDZǷǴǶǬ,ǸǬǯǴǽǾǼǬǹǾGH#PDLOUX
ǬǝǬǹǶǾǛDZǾDZǼǭǿǼǯǽǶǴǵǯǺǽǿǰǬǼǽǾǮDZǹǹȇǵǿǹǴǮDZǼǽǴǾDZǾǬȉǼǺǶǺǽǸǴȃDZǽǶǺǯǺǻǼǴǭǺǼǺǽǾǼǺDZǹǴȋ
ǍǘǺǼǽǶǬȋǿǷǝǬǹǶǾǛDZǾDZǼǭǿǼǯǜǠ
ǎǮDZǰDZǹǴDZǻǼǴǻǺǽǾǼǺDZǹǴǴǽǴǽǾDZǸȇǰǷȋǿǰǬǷDZǹǹǺǵǼǬǭǺǾȇǽǾǿǰDZǹǾǺǮǽǺǽǮǺǴǸǴǮǴǼǾǿǬǷȈǹȇǸǴǸǬȄǴǹǬǸǴǮǬDzǹǺ
ǻǼǬǮǴǷȈǹǺǮȇǭǼǬǾȈǯǷǬǮǹȇǵǻǼǴǹȂǴǻǮǴǼǾǿǬǷǴdzǬȂǴǴȃǾǺǻǺdzǮǺǷǴǾǹǬǰDZDzǹǺǴǷDZǯǶǺǼǬdzǰDZǷȋǾȈǸǹǺDzDZǽǾǮǬǮǴǼǾǿǬǷȈǹȇȁ
ǸǬȄǴǹǼǬdzǹȇȁǻǺǷȈdzǺǮǬǾDZǷDZǵǴǻǼǴȉǾǺǸǹǬǴǭǺǷDZDZȉȀȀDZǶǾǴǮǹǺǼǬǽȁǺǰǺǮǬǾȈǮȇȃǴǽǷǴǾDZǷȈǹȇDZǼDZǽǿǼǽȇǽDZǼǮDZǼǬǢDZǷȈ
ǺǻǼDZǰDZǷǴǾȈǹǬǽǶǺǷȈǶǺǸDZǰǷDZǹǹDZDZǭǿǰǿǾǼǬǭǺǾǬǾȈǮǴǼǾǿǬǷȈǹȇDZǸǬȄǴǹȇǮǮȇȃǴǽǷǴǾDZǷȈǹǺǸǶǷǬǽǾDZǼDZǻǼǴǴǽǻǺǷȈdzǺǮǬǹǴǴ
ǾDZȁǹǺǷǺǯǴǴ ǶǺǹǾDZǵǹDZǼǺǮ ǻǺ ǽǼǬǮǹDZǹǴȊ ǽ ǾǼǬǰǴȂǴǺǹǹǺǵ ǾDZȁǹǺǷǺǯǴDZǵ ǴǽǻǺǷȈdzǺǮǬǹǴȋ ǯǴǻDZǼǮǴdzǺǼǬ ǹǬǽǶǺǷȈǶǺ ǸDZǹȈȄDZ
ǻǼǴȉǾǺǸǻǺǾǼDZǭǿDZǾǽȋǺǻDZǼǬǾǴǮǹǺǵǻǬǸȋǾǴǴǽǾǺǴǾǷǴǴǽǻǺǷȈdzǺǮǬǾȈǶǺǹǾDZǵǹDZǼȇǼǬǰǴǿǻǼǺȅDZǹǴȋǮǼDZȄDZǹǴǴǮǬDzǹDZǵ-
ȄDZǵdzǬǰǬȃǴǼǬdzǰDZǷDZǹǴȋǸǹǺDzDZǽǾǮǮǴǼǾǿǬǷȈǹȇȁǸǬȄǴǹǼǬdzǹȇȁǻǺǷȈdzǺǮǬǾDZǷDZǵǜDZdzǿǷȈǾǬǾȇ ǻǺǷǿȃDZǹȇdzǬǮǴǽǴǸǺǽǾǴǻǺ-
ǾǼDZǭǷDZǹǴȋ ǺǽǹǺǮǹȇȁ ǮȇȃǴǽǷǴǾDZǷȈǹȇȁ ǼDZǽǿǼǽǺǮ ǺǾ ǶǺǷǴȃDZǽǾǮǬ dzǬǻǿǽǶǬDZǸȇȁ ǮǴǼǾǿǬǷȈǹȇȁ ǸǬȄǴǹ njǹǬǷǴdz ǻǺǷǿȃDZǹǹȇȁ
ǼDZdzǿǷȈǾǬǾǺǮǻǺǶǬdzǬǷȃǾǺǮǽǷǿȃǬDZǻǺǽǾǼǺDZǹǴȋǶǷǬǽǾDZǼǬǽDZǼǮDZǼǺǮǽǺǭȅǴǸǮǹDZȄǹǴǸǿǽǾǼǺǵǽǾǮǺǸȁǼǬǹDZǹǴȋǰǬǹǹȇȁǰǷȋ
dzǬǻǿǽǶǬǭǺǷȈȄǺǯǺǶǺǷǴȃDZǽǾǮǬǮǴǼǾǿǬǷȈǹȇȁǸǬȄǴǹǼǬǭǺǾǬȊȅǴȁǮǻǬǶDZǾDZǻǼǺǯǼǬǸǸ9LUWXDO%R[ǮȇǯǺǰǹDZDZǴǽǻǺǷȈdzǺǮǬǾȈ
ǶǺǹǾDZǵǹDZǼȇ ǽ ǰǺǭǬǮǷDZǹǴDZǸ ǻǼǺǯǼǬǸǸǹǺǯǺ ǺǭDZǽǻDZȃDZǹǴȋ 'RFNHU ǛǼǬǶǾǴȃDZǽǶǬȋ dzǹǬȃǴǸǺǽǾȈ ǻǼǴ ǽǺdzǰǬǹǴǴ ǮȇȃǴǽǷǴ-
ǾDZǷȈǹǺǯǺǶǷǬǽǾDZǼǬǶǺǹǾDZǵǹDZǼǹǬȋǾDZȁǹǺǷǺǯǴȋǮǴǼǾǿǬǷǴdzǬȂǴǴǽǴǽǻǺǷȈdzǺǮǬǹǴDZǸ'RFNHUǴ9LUWXDO%R[ǻǺdzǮǺǷȋDZǾǹDZǾǺǷȈǶǺ
ǽǿȅDZǽǾǮDZǹǹǺȉǶǺǹǺǸǴǾȈǺǻDZǼǬǾǴǮǹǿȊǻǬǸȋǾȈǻǼǴdzǬǻǿǽǶDZǭǺǷȈȄǺǯǺǶǺǷǴȃDZǽǾǮǬǮǴǼǾǿǬǷȈǹȇȁǸǬȄǴǹǹǺǴǿǮDZǷǴȃǴǮǬDZǾ
ǽǶǺǼǺǽǾȈǮȇȃǴǽǷDZǹǴǵ
ǖǷȊȃDZǮȇDZǽǷǺǮǬ ³ǮǴǼǾǿǬǷȈǹȇDZǸǬȄǴǹȇǶǷǬǽǾDZǼǯǴǻDZǼǮǴdzǺǼǶǺǹǾDZǵǹDZǼ9LUWXDO%R['RFNHU
60 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ № 2, 2018
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
№ 2, 2018 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ 61
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
62 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ № 2, 2018
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
а) 4,5
ОП, 1 VB
4
ОП, 1 контейнер
3,5
Нагрузка на ОП, %
2,5
1,5
0,5
0
0 100 200 300 400 500 600 700 800
Время, с
б) 10
CPU, 1 VB
9 CPU, 1 контейнер
8
Нагрузка на CPU, %
7
6
5
4
3
2
1
0
0 100 200 300 400 500 600 700 800
Время, с
Рис. 1. Нагрузка на оперативную память (а) и CPU (б) в эксперименте с одним контейнером и одной виртуальной
машиной
Fig. 1. RAM load (а) and CPU load (б) in experiment with one container and one virtual machine
которая предоставляет единый том X-RAID-6- Это вспомогательная файловая система, произ-
уровня по i-SCSI-протоколу. Из графика видно, водящая каскадно-объединенное монтирование
что контейнерное решение отрабатывает быстрее других файловых систем. Она позволяет файлам
на 600–800 с. То есть при конфигурации с исполь- и каталогам изолированных файловых систем,
зованием протокола i-SCSI контейнерная виртуа- известных как ветви, прозрачно перекрываться,
лизация оказывается быстрее. Если посмотреть формируя единую связанную файловую систему.
на график рис. 2, б, то можно обнаружить, что Каталоги, которые имеют тот же путь в объеди-
контейнерная виртуализация с применением ненных ветвях, будут совместно отображать со-
Docker не только быстрее, но она еще и меньше держимое в объединенном каталоге новой вирту-
нагружает процессор. То есть по графику рис. 2, а альной файловой системы. Когда ветви монтиру-
уровень потребления ОП одинаковый, а потре- ются, то указывается приоритет одной ветви над
бление ресурсов процессора меньше. Возникает другой. Следовательно, когда обе ветви содержат
вопрос: почему контейнеры работают быстрее, файл с идентичным именем, одна ветвь будет
когда их становится больше? иметь больший приоритет. Различные ветви мо-
Возможно, что этот эффект достигается за счет гут одновременно находиться в режиме «только
использования UnionFS (Union File System) [8]. чтение» и «чтение-запись». Таким образом, за-
№ 2, 2018 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ 63
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
а) 40
35
30
Нагрузка на ОП, %
25
20
15 ОП, 10 контейнеров
ОП, 10 VB
10 ОП, 10 VB HDD
ОП, 10 контейнеров
5 HDD
0
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Время, с
б) 70
CPU, 10 контейнеров
60 CPU, 10 VB
CPU, 10 VB HDD
50 CPU, 10 контейнеров HDD
Нагрузка на CPU, %
40
30
20
10
0
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
Время, с
Рис. 2. Нагрузка на оперативную память (а) и CPU (б) в эксперименте с десятью контейнерами и десятью вирту-
альными машинами
Fig. 2. RAM load (а) and CPU load (б) in an experiment with 10 containers and 10 virtual machines
пись в объединенную виртуальную файловую си- «предков» их образов; скорее всего, что за счет
стему будет направлена на определенную реаль- этого он и выигрывает по скорости работы.
ную файловую систему. То есть получается, что виртуальные маши-
Union File System состоит из слоев (layers). ны, использующие технологию гипервизорной
Слои как бы накладываются друг на друга. Все виртуализации, создают много идентичных ко-
используемые нами контейнеры используют пий операционных систем, которые никак не свя-
общие защищенные от записи слои, в которых заны между собой и потребляют больше аппарат-
находятся неизменяемые файлы операционной ных ресурсов сервера, чем контейнеры, работаю-
системы контейнера, это приводит к ускорению щие на технологии контейнерной виртуализации
доступа к данным. А для изменяемых файлов — с использованием UnionFS.
файлов виртуальных машин, работающих в до- Рассмотрим последний эксперимент, который
керах, — каждый из контейнеров будет иметь проводился с использованием установленных
собственный слой. Естественно, Docker исполь- в сервер жестких дисков, т. е. без использования
зует это решение не только для операционной i-SCSI-протокола. Рассмотрев графики на рис. 2,
системы, но и для любых общих частей контей- можно заметить, что скорость работы контейне-
неров, которые были созданы на основе общих ров, в принципе, упала незначительно, при том
64 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ № 2, 2018
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
что общая картина потребления вычислитель- счет использования сетевого протокола (в отли-
ных ресурсов никак не изменилась. А если обра- чие от непосредственного доступа к локальным
тить внимание на работу виртуальных машин, жестким дискам).
то можно заметить, что в этом случае производи- Рассмотрев зависимости потребления аппа-
тельность возросла. То есть за счет исключения ратных ресурсов, можно сказать, что с увеличе-
сетевых операций на обращение к хранилищу нием количества единиц виртуальных машин и
данных и работу с внутренним хранилищем сер- контейнеров потребность в ресурсах растет оди-
вера виртуальные машины получают ускорение. наково, т. е. зависимость расхода ресурсов отно-
Итак, в результате проведенного исследования сительно друг друга сохраняется. Время выпол-
был определен круг параметров, от которых за- нения всех операций также растет, но с разной
висит производительность двух технологий вир- зависимостью.
туализации — гипервизорной и контейнерной.
Как показал первый (тестовый) эксперимент,
если проводить сравнение одной виртуальной Заключение
машины с одним контейнером, то виртуальная
машина работает гораздо быстрее (см. рис. 1), по- Исследование показало, что хотя потребление
требляя больше вычислительных ресурсов серве- вычислительных ресурсов увеличивается прак-
ра. Но при увеличении количества виртуальных тически одинаково с увеличением количества
машин до 10 экземпляров обстановка кардиналь- используемых контейнеров и виртуальных ма-
но меняется в обратную сторону, и контейнеры шин, контейнеры потребляют ресурсов меньше.
начинают выигрывать не только по быстродей- Продолжительность выполнения вычислений
ствию, но и по потреблению аппаратных ресур- растет приблизительно одинаково, и тут выигры-
сов, которое у них снижено, благодаря использо- вают контейнеры, так как отрабатывают быстрее
ванию UnionFS. обычных виртуальных машин. Для проектиру-
Существует зависимость и от технологии, при- емой кластерной системы этот критерий являет-
меняемой для доступа к хранилищу данных. Мы ся очень важным. Так как используемые внутри
рассматривали две технологии общего, внешнего контейнеров виртуальные машины безопасно
серверного хранилища данных. Прежде всего, изолированы, то это дает возможность студентам
это по протоколу i-SCSI к единому для обоих сер- работать отдельно и никак не пересекаться в про-
веров тому X-RAID-6-уровня. Кроме этого, прове- цессе выполнения лабораторных работ.
ли тестирование при использовании локальных Принимая во внимание все полученные ре-
накопителей, организованных в RAID-массив. зультаты, а также все очевидные плюсы контей-
Исследование показало, что использование обще- нерного решения, можно сделать вывод о целесо-
го сетевого хранилища дает еще больший вы- образности проектировать систему на базе уже
игрыш контейнерам за счет того, что контейнеры развернутой системы дистанционного обучения,
используют UnionFS. А обычные виртуальные но с применением технологии контейнерной вир-
машины получают дополнительную задержку за туализации.
№ 2, 2018 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ 65
ПРОГРАММНЫЕ И АППАРАТНЫЕ СРЕДСТВА
Russian Federation
Introduction: When building a system for students’ remote work with their virtual machines, it is important to correctly choose the
main principle of virtualization, which will reliably and easily split the sets of virtual machines of different users, and most efficiently
use the computing resources of the server. Purpose: Determining how much slower virtual machines in a computing cluster will be when
using container technology in comparison with the traditional technology of using hypervisors, how much less RAM is required, and
whether it is worth using containers for the sake of simplicity in solving the most important task of splitting sets of virtual machines
of different users. Results: We have obtained the dependencies of consumption of basic computing resources on the number of virtual
machines being run. The analysis of the obtained graphs showed that in the case of building a cluster of servers with a common external
storage device in order to run a large number of virtual machines, it is more advantageous to use containers with the addition of Docker
software in which VirtualBox will work. Practical relevance: This technology allows you not only to significantly save RAM, but also
to increase the calculation speed.
Keywords — Virtual Machines, Cluster, Hypervisor, Container, VirtualBox, Docker.
Citation: Gordeev A. V., Gorelik D. V. Comparative Testing of Container and Hypervisor Virtualizations. Informatsionno-
upravliaiushchie sistemy [Information and Control Systems], 2018, no. 2, pp. 60–66 (In Russian). doi:10.15217/issn1684-8853.2018.2.60
References
1. Gordeev A. V. Organization of Remote Work of Students 4. Adrian Mouat. Using Docker. Developing and Deploying
with their Virtual Machines. Informatsionno-upravliaiush- Software with Containers. O’Reilly, 2015. 335 p.
chie sistemy [Information and Control Systems], 2017, no. 2, 5. Markelov A. OpenStack. Znakomstvo s oblachnoi operatsion-
pp. 96–100 (In Russian). doi:10.15217/issn1684-8853. noi sistemoi [OpenStack. Introduction to the Cloud Operating
2017.2.96 System]. Moscow, DMK-Press Publ., 2016. 248 p. (In Russian).
2. Gorelik D. V. Using Containers to Build a System for Work- 6. Karl Matthias, Sean Kane. Docker: Up & Running. Shipping
ing with Remote Virtual Machines. Semidesiataia Mezhdun- Reliable Containers in Production. O’Reilly, 2015. 198 p.
arodnaia studencheskaia nauchnaia konferentsiia. Ch. 2. 7. Jessie Frazelle. Docker Containers on the Desktop. Available
Tekhnicheskie nauki [Proc. Seventieth Intern. Student Scien- at: https://blog.jessfraz.com/post/docker-containers-on-
tific Conf. SUAI. Part 2. Technical Science]. Saint-Peters- the-desktop/ (accessed 07 April 2017).
burg, GUAP Publ., 2017, pp. 66–69 (In Russian). 8. Popov S. Obrazy i konteinery Docker v kartinkakh [Images
3. Ponimaia Docker [Docker Overview]. Available at: https:// and Containers Docker in Pictures]. Available at: https://
habrahabr.ru/post/253877 (accessed 15 November 2017). habrahabr.ru/post/272145/ (accessed 17 November 2017).
66 ИНФОРМАЦИОННО
УПРАВЛЯЮЩИЕ СИСТЕМЫ № 2, 2018