Система управления специализированными виртуальными инструментами с механизмами оптимального распределения вычислительных ресурсов тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат технических наук Первин, Артем Юрьевич
- Специальность ВАК РФ05.13.11
- Количество страниц 116
Оглавление диссертации кандидат технических наук Первин, Артем Юрьевич
Список условных обозначений и сокращений.
ВВЕДЕНИЕ.
Актуальность темы.
Цели и задачи работы.
Методы исследования.
Научная новизна работы.
Практическая значимость.
Апробация результатов диссертации.
Структура работы.
Содержание работы.
ГЛАВА 1. Технологии виртуализации.
1.1 Истоки виртуализации.
1.2 Современные технологии виртуализации.
1.2.1 Основные подходы виртуализации.
1.2.2 Аппаратная поддержка виртуализации.
1.3 Современные виртуальные машины.
1.3.1 VMware.
1.3.2 CitrixXen.
1.3.3 Parallels Virtuozzo Containers.
1.4 Области применения виртуальных машин.
1.4.1 Консолидация рабочих нагрузок.
1.4.2 Разработка ПО и нового оборудования.
1.4.3 Распространение ПО в виде виртуальных машин.
1.5 Прикладные системы.
1.5.1 Amazon ЕС2.
1.5.2 ЗТега Applogic.
1.5.3 Eucalyptus.
1.5.4 OpenNebula.
1.5.5 Nimbus.
1.6 Выводы.
ГЛАВА 2. Система Виртуальные сервисы.
2.1 Виртуальный сервис.
2.1.1 Образ файловой системы.
2.2 Компоненты системы.
2.2.1 Системный планировщик.
2.2.2 Планировщик сервиса.
2.2.3 Монитор сервиса.
2.2.4 Модуль управления правилами маршрутизации.
2.2.5 Система мониторинга.
2.2.6 Модуль управления виртуальной машиной.
2.3 Интерфейсы системы.
2.3.1 Консольный интерфейс.
2.3.2 Веб-интерфейс.
2.3.3 Грид-интерфейс.
2.4 Выводы.
ГЛАВА 3. Экспериментальная часть.
3.1 Разработанные сервисы.
3.1.1 Сервис Виртуальный кластер.
3.1.2 Картографический сервис MapServer.
3.1.3 Вычислительный сервис Х-Com.
3.2 Управление ресурсами.
3.2.1 Профиль производительности.
3.2.2 Управление уровнем сервиса.
3.2.3 Математическая модель управления ресурсами.
3.2.4 Эксперимент по управлению ресурсами.
3.3 Выводы.
Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Разработка системы запуска ресурсоемких приложений в облачной гетерогенной среде2013 год, кандидат технических наук Е Мьинт Найнг
Математические модели и методы повышения эффективности функционирования кластера компьютеров в центрах обработки данных2004 год, кандидат физико-математических наук Протасов, Станислав Станиславович
Методология развития научного информационно-вычислительного комплекса в составе глобальной грид-инфраструктуры2012 год, доктор технических наук Кореньков, Владимир Васильевич
Математическое моделирование средств управления ресурсами и данными в распределенных и виртуализованных средах2007 год, доктор физико-математических наук Тормасов, Александр Геннадьевич
Организация системы доступа для пользователей в распределенной вычислительной среде2011 год, кандидат технических наук Ла Мин Хтут
Введение диссертации (часть автореферата) на тему «Система управления специализированными виртуальными инструментами с механизмами оптимального распределения вычислительных ресурсов»
Актуальность темы
На сегодняшний день уже не вызывает сомнения тот факт, что виртуализация является крайне актуальной и востребованной технологией. Применительно к настольным компьютерам и серверам, виртуализация — это создание на одном физическом сервере или компьютере нескольких «виртуальных» машин, на каждой из которых может быть установлена своя среда — операционная система, приложения, пользовательские настройки и т.п. При этом такие виртуальные машины (ВМ) оказываются абсолютно изолированными друг от друга и ведут себя, как отдельные физические компьютеры.
Говоря о достоинствах виртуализации можно выделить две ключевых причины востребованности этой технологии. Во-первых, статистика показывает, что средняя загрузка х86 серверов в мире не превышает 10% [1], т.е. 90% инвестиций, затраченных на формирование серверной инфраструктуры, оказывается израсходованными впустую. К этому также следует добавить всевозрастающие расходы на электроэнергию, кондиционирование и аренду площадей для размещения серверов. Так, по оценкам IDC [2], ежегодные расходы на электроэнергию в крупных центрах обработки данных (ЦОД) могут превысить стоимость самого серверного оборудования уже в 2015 году.
Виртуализация позволяет значительно повысить эффективность имеющегося в распоряжении предприятия оборудования, путем консолидации рабочих нагрузок на сравнительно небольшом количестве физических компьютеров. В свою очередь, повышение эффективности аппаратных ресурсов позволяет сократить количество серверного оборудования и существенно снизить эксплуатационные издержки на содержание ИТ-инфраструктуры предприятия.
Во-вторых, во многих организациях в последнее время практикуется ставший классическим подход выделения отдельного сервера для каждой новой задачи. Так, например, появляется один сервер для СУБД и другой — для файлового хранилища. Такая стратегия позволяет обеспечить хорошую изоляцию несвязанных между собой приложений, однако, с ростом предприятия, экспоненциально растет и объем серверного парка, в результате чего вся ИТ-инфраструктура быстро становится плохо управляемой. При этом значительное количество времени и человеческих ресурсов тратится на обслуживание рабочих станций, ликвидацию неисправностей и простоев, возникают сложности с резервным копированием, восстановлением данных и т.д.
С помощью виртуализации удается организовать более эффективное, централизованное управление вычислительными ресурсами и упростить администрирование оборудования, не нарушая при этом изоляцию несвязанных между собой приложений. Это достигается благодаря новым возможностям виртуализации по управлению ресурсами, которые сложно или невозможно реализовать при использовании традиционных подходов. В частности, виртуальную машину можно:
• приостановить и сохранить ее состояние в памяти, понизив нагрузку на процессор для последующего запуска других приложений;
• остановить и сохранить ее состояние на диск, предоставляя, таким образом, возможность использовать ресурсы другими, более приоритетными с точки зрения пользователя, виртуальными машинами;
• переместить с одного физического компьютера на другой;
• запустить с некоторым числом процессоров, а затем добавлять или убирать процессоры во время работы ВМ, с учетом потребностей других ВМ;
• запустить с некоторой долей процессора и затем увеличивать или уменьшать ее, исходя из потребностей приложений, работающих внутри ВМ;
• запустить с некоторым объемом оперативной памяти и затем, по мере необходимости изменять его;
• запустить с ограниченной сетевой пропускной способностью и динамически изменять этот параметр в зависимости от потребностей приложений ВМ.
В настоящее время существует ряд мощных систем [36, 37, 38] для управления комплексами виртуальных машин. Однако в таких системах решения по вопросам распределения аппаратных ресурсов между приложениями принимается преимущественно администратором или пользователями. Такой способ управления, тем не менее, не способствует оптимальному использованию ресурсов, поскольку пользователи стремятся обеспечить себя избыточным объемом ресурсов, чтобы гарантировать эффективную работу своих приложений при критических уровнях нагрузки.
Представляется возможным и актуальным сделать следующий шаг вперед: системы управления комплексами виртуальных машин должны автоматизировать процесс распределения вычислительных ресурсов на основе соглашений, регламентирующих требуемое качество оказываемых приложениями услуг. Учитывая ценность предоставляемых приложению ресурсов, такие системы могли бы реализовать гибкие и эффективные стратегии управления, динамически наращивая и освобождая вычислительные ресурсы приложений по мере необходимости.
Предлагаемое в рамках диссертационной работы программное решение Виртуальные сервисы ориентировано на использование в первую очередь на высокопроизводительных вычислительных установках, где технологии виртуализации являются актуальной темой научных исследований [3, 4, 48, 49]. Такие вычислительные системы, как правило, используются одновременно несколькими пользователями для решения ресурсоемких, узкоспециализированных научных и инженерных задач, требующих для корректного функционирования определенного набора системного и прикладного ПО. Эти требования часто создают конфликтные ситуации, связанные с различиями версий служебного ПО. Система Виртуальные сервисы позволяет решить эти проблемы с помощью специализированных сервисов — изолированных вычислительных окружений 7 для решения конкретных пользовательских задач. При этом объем аппаратных ресурсов, доступных сервису, может меняться динамически в соответствии с текущими потребностями пользователей этого сервиса.
В диссертации предлагаются новые подходы по управлению вычислительными ресурсами высокопроизводительного кластера, основанные на использовании профилей производительности приложения и концепции уровня сервиса, способствующих повышению КПД аппаратных ресурсов вычислительной системы. В системе Виртуальные сервисы реализован удобный пользовательский интерфейс, совместимый с промежуточным программным обеспечением (111Ю) UNICORE, что позволяет использовать систему, в том числе, и в грид окружении.
Цели и задачи работы
Цель диссертационной работы состоит в разработке методов и средств управления вычислительными ресурсами приложений, работающих на высокопроизводительном кластере в виртуальной среде.
В рамках диссертационной работы решаются следующие задачи
• разработка и реализация архитектуры программного средства для развертывания, мониторинга и распределения вычислительных ресурсов комплексов виртуальных машин. • адаптация ряда типовых демонстрационных приложений для работы в виртуальной вычислительной среде.
• разработка математической модели для автоматического динамического перераспределения вычислительных ресурсов с целью оптимизации их использования.
• реализация математической модели в виде программной компоненты и проведение экспериментов, показывающих ее эффективность.
Методы исследования
Результаты исследования получены на базе разработанного программного комплекса управления виртуальными машинами Виртуальные сервисы. При проектировании и реализации системы применялись открытые международные стандарты (UML, WSDL, Х.509 и другие), использовались инструментальные среды и пакеты системного ПО. Реализация программного комплекса велась с применением компонентного подхода. Математическая модель управления вычислительными ресурсами построена с помощью теории оптимизации динамических систем.
Научная новизна работы
Научной новизной обладают следующие результаты диссертации:
• Предложена архитектура программной системы для управления комплексами виртуальных машин.
• Предложен подход к распределению вычислительных ресурсов на основе статистического и текущего потребления ресурсов виртуальными сервисами с применением профиля производительности и уровня сервиса.
• Разработана и программно реализована модель оптимального управления вычислительными ресурсами для совокупности виртуальных сервисов.
Практическая значимость
Программная система Виртуальные сервисы разработана в рамках работ по суперкомпьютерной программе «СКИФ-ГРИД» Союзного Государства в проекте «Разработка программных средств организации виртуальных кластеров на суперкомпьютерах семейства "СКИФ"», а также по программе фундаментальных исследований Президиума РАН №15 «Разработка фундаментальных основ создания научной распределенной информационно-вычислительной среды на основе технологии GRID».
Система Виртуальные сервисы используется в Геофизическом центре РАН, при развертывании ресурсного узла национальной инфраструктуры СКИФ-ГРИД для системы управления метаданными в виртуальных обсерваториях по окружающей среде.
Апробация результатов диссертации
По теме диссертации автором опубликовано 5 работ (из них 1 в издании по перечню ВАК). Статей в научных журналах — 2. Тезисов докладов и выступлений на международных и российских научных конференций — 3.
Материалы, вошедшие в диссертационную работу, докладывались и обсуждались на семинарах ИПС РАН и на следующих конференциях:
• 3-я международная конференция "Распределенные вычисления и Грид технологии в науке и образовании", Дубна, 30 июня — 4 июля 2008 г.
• XV Всероссийская научно-методическая конференция "Телематика'2008" Санкт-Петербург, 2008.
• Международная научная конференция «Параллельные вычислительные технологии» (ПаВТ'2008), Санкт-Петербург, 28 января — 1 февраля 2008 г.
• IV международная конференция «Параллельные вычисления и задачи управления» (РАСО'2008), Москва, 27 — 29 октября 2008 г.
• 3rd Workshop on Virtualization in High-Performance Cluster and Grid Computing (VHPC '08), Las Palmas de Gran Canaria, Canary Island, Spain, August 26 — 29, 2008.
• XVI Международная конференция по Вычислительной механике и современным прикладным программным системам (ВМСППС'2009), Алушта, Крым, 25 — 31 мая 2009 г.
Структура работы
Диссертация состоит из введения, трех глав, заключения, библиографического списка из 62 наименований и пяти приложений. Объем диссертационной работы составляет 104 страницы машинописного текста, включая 31 рисунок.
Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Развитие теоретических основ и методов функционально-структурной организации систем и сетей внешнего хранения и обработки данных2009 год, доктор технических наук Зинкин, Сергей Александрович
Разработка методики повышения эффективности использования вычислительных ресурсов при применении технологии виртуальных машин2005 год, кандидат технических наук Рахман, Павел Азизурович
Использование виртуализации для увеличения эффективности вычислении2020 год, кандидат наук Чжо За
Методы и программные средства логического управления вычислительными процессами в агентно-ориентированных метакомпьютерных системах2011 год, кандидат технических наук Карамышева, Надежда Сергеевна
Построение и оптимизация распределенных виртуальных вычислительных систем2020 год, кандидат наук Пья Сон Ко Ко
Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Первин, Артем Юрьевич
3.3 Выводы
В этом разделе диссертации определяются критерии выбора приложений для системы Виртуальные сервисы и описываются разработанные с учетом этих критериев демонстрационные сервисы. Картографический сервис MapServer, вычислительный сервис Х-Сош и сервис виртуальный кластер отражают основные характеристики задач, традиционно решаемых на таких высокопроизводительных вычислительных системах.
В главе вводятся понятия профиля производительности, характеристики приложения и уровня сервиса. Профиль производительности — это функция, описывающая качество обслуживания, оказываемое приложением, при заданных пользовательской нагрузке и распределении вычислительных ресурсов. С помощью профиля производительности можно реализовать эффективные средства для автоматического управления ресурсами приложений.
Далее определяется математическая модель управления ресурсами приложений, работающих в виртуальной среде. Такого рода решение позволяет автоматизировать процесс принятия решения о назначении ресурсов вычислительного кластера тому или иному сервису. Приводятся экспериментальные данные, подтверждающие эффективность предложенного подхода.
Заключение
Основным результатом диссертации является создание алгоритмического и программного обеспечения мультипроцессорных систем, реализующего новый подход распределения вычислительных ресурсов с использованием виртуальных машин. Решены следующие задачи:
1. Разработана программная система для управления приложениями, функционирующая на мультипроцессорной системе. Система позволяет взаимодействовать с приложениями, работающими на виртуальных машинах, динамически увеличивать или уменьшать объем доступных приложениями ресурсов.
2. Выполнена адаптация ряда приложений для работы в разработанной программной среде, отражающих основные сценарии использования вычислительных кластеров и иллюстрирующие характеристики задач, традиционного решаемых на таких системах.
3. Проведено исследование зависимости приложений между имеющимися вычислительными ресурсами, текущей пользовательской нагрузкой и уровнем сервиса, обеспечиваемым этими приложениями. Составлены профили производительности приложений, фиксирующие такие зависимости.
4. Создана математическая модель управления ресурсами, позволяющая автоматизировать процесс принятия решений о назначении вычислительных мощностей приложениям. Проведены эксперименты, показывающие эффективность применения предложенной модели для динамического распределения ресурсов.
Список литературы диссертационного исследования кандидат технических наук Первин, Артем Юрьевич, 2009 год
1. Роджер Диттнер, Виртуализация и Microsoft Virtual Server 2005, Бином-Пресс, 2008 г.
2. N. Martinez, К. Bahloul. Green IT Barometer: European Organisations and the Business Imperatives of Deploying a Green and Sustainable IT Strategy Электронный ресурс.,http://www.dell.com/downloads/global/corporate/environ/complyЯDCWP28Q.pdf
3. Mark F. Mergen, Volkmar Uhlig, Orran Krieger, Jimi Xenidis: Virtualization for high-performance computing. Operating Systems Review 40(2): 8-11 (2006)
4. Lamia Youseff, Richard Wolski, Brent C. Gorda, Chandra Krintz: Paravirtualiza-tion for HPC Systems. ISPA Workshops 2006: 474-486.
5. R. P. Goldberg. Survey of virtual machine research. IEEE Computer, pp 34-35, June 1974.
6. Gerald J. Popek and Robert P. Goldberg (1974). "Formal Requirements for Vir-tualizable Third Generation Architectures". Communications of the ACM 17 (7), pp 412-421.
7. Meyer, P. A. and L.H. Seawright,"A Virtual Machine Time-Sharing System", IBM Systems Journal, 9, No. 3, 1970, pp. 131-149.
8. R.P.Case and A.Padegs, "Architecture of the IBM System/370", Communications of the ACM 21, No. 1, 73-96, January 1978.
9. Peter H. Gum. System/370 extended architecture: Facilities for virtual machines. IBM Journal of Research and Development, 27(6):530-544, November 1983.
10. Кольца защиты Электронный ресурс., http://ru.wikipedia.org/wik^onb4a3an^HTbi
11. DOSBox, a x86 emulator with DOS Электронный ресурс., http://www.dosbox.com/
12. Kevin P. Lawton, Bochs: A portable PC Emulator for Unix/X, Linux Journal, Volume 1996, Issue 29es (September 1996), Article No. 7.
13. Wine Электронный ресурс., http://www.winehq.org/
14. S. Devine, E. Bugnion, and M. Rosenblum. Virtualization system including a virtual machine monitor for a computer with a segmented architecture. US Patent, 6397242, Oct. 1998.
15. VMware Virtualization Technology Электронный ресурс., http ://www. vmware.com/
16. QEMU Электронный ресурс., http://www.nongnu.org/qemu/
17. Hyper-V Электронный ресурс., http://en.wikipedia.org/wiki/Hyper-V
18. Xen Электронный ресурс., http://www.xen.org/
19. The User-mode Linux Kernel Электронный ресурс., http://user-mode-linux.sourceforge.net/
20. Padala, Pradeep; Zhu, Xiaoyun; Wang, Zhikui; Singhal, Sharad; Shin, Kang G., HPL-2007-59 technical report Электронный ресурс., http://www.hpl.hp.com/techreports/2007/HPL-2007-59Rl .html?jumpid= regRl 002USEN
21. P.-H. Kamp and R. N. M. Watson. Jails: Confining the Omnipotent Root. In Proc. of the 2nd International SANE Conference, Maastricht, The Netherlands, May 2000.
22. Ligneris, B. D., "Virtualization of Linux-Based Computers: The Linux-vserver Project," 19th International Symposium on High Performance Computing Systems and Applications, HPCS, pp. 340-346, May, 2005.
23. OpenVZ Электронный ресурс., http://wiki.openvz.org/MainPage
24. Virtuozzo Электронный ресурс. http://www.parallels.com/products/virtuozzo/
25. Solaris Containers Электронный ресурс., http://en.wikipedia.org/wiki/ Solaris Containers
26. Gil Neiger, Amy Santoni, Felix Leung, Dion Rodgers, and Rich Uhlig. Intel Vir-tualization Technology: Hardware support for efficient processor virtualization. Intel Technology Journal, 10(3):167-177, August 2006.
27. AMD. Amd64 virtualization codenamed "pacifica" technology: Secure virtual machine architecture reference manual, May 2005.
28. Comparison of platform virtual machines Электронный ресурс., http://en.wikipedia.org/wiki/Comparisonofplatformvirtualmachines
29. Laurianne McLaughlin, Adventures in managing virtualization, Электронный ресурс., http://www.cio.com/article/341813/ AdventuresinManagingVirtualization
30. Daniel Dern, How Virtualization Improves Software Development, Электронный ресурс., http://www.cio.com/article/480420/ HowVirtualizationImprovesSoftwareDevelopment
31. Cloud computing Электронный ресурс., http://en.wikipedia.org/wiki/Cloudcomputing
32. Utility computing Электронный ресурс., http://en.wikipedia.org/wiki/Utilitycomputing
33. Software-as-a-Service Электронный ресурс., http://en.wikipedia.org/wiki/Softwareasaservice
34. Amazon Elastic Compute Cloud (Amazon EC2) Электронный ресурс., http:// aws. amazon.com/ec2/
35. Grid Computer Operating System for Web Applications Электронный ресурс., http://www.3tera.com/AppLogic/
36. OpenNebula Электронный ресурс., http://www.opennebula.org/doku.php
37. S.M. Kelly and R. Brightwell, "Software Architecture of the Light Weight Kernel, Catamount", In Proc. 2005 Cray User Group Ann. Tech. Conf.102
38. Netfilter/iptables project homepage Электронный ресурс., http://www.netfilter.org/
39. Barry O'Donovan, Advanced Features of netfilter/iptables, Linux Gazette, November 2004 (#108) Электронный ресурс.,http ://linuxgazette .net/10 8/odono van. html
40. Ganglia Monitoring System Электронный ресурс., http://ganglia.info/
41. High availability Электронный ресурсы., http://en.wikipedia.org/wiki/Highavailability
42. UNICORE — Distributed computing and data resources Электронный ресурс., http://www.unicore.eu/
43. UNICORE-Community —Projects Электронный ресурс., http://www.unicore.eu/community/projects/
44. GridBean Developer Guide Электронный ресурс., http://gpe4gtk.sourceforge.net/gridbeans.htm
45. POV-Ray — The Persistence of Vision Raytracer Электронный ресурс., http ://www.po vray. org/
46. W. Huangy, J. Liuz, B. Abaliz, and D. K. Panda. A Case for High Performance Computing with Virtual Machines. In Proc. of the 20th ACM Int. Conf. on Super-computing (ICS), June 2006.
47. H. Bjerke. HPC Virtualization with Xen on Itanium. Master's thesis, Norwegian University of Science and Technology (NTNU), July 2005.
48. Кластер (группа компьютеров) Электронный ресурс., http://ru.wikipedia.org/wiki/Kлacтep(гpyппaкoмпьютepoв)
49. Linux НА Электронный ресурс., http://www.linux-ha.org/
50. Beowulf Электронный ресурс., http://en.wikipedia.org/wiki/Beowulf(computing)
51. Walfredo Cirne. Grid Computing for Bag of Tasks Applications. In Proc. of the Third IFIP Conference on E-Commerce, E-Business and E-Govemment, September 2003.
52. Абрамов С., Адамович А., Инюхин А., Московский А., Роганов В., Шевчук Ю., Шевчук Е. Т-Система с открытой архитектурой // Суперкомпьютерные системы и приложения. — Минск: ОИПИ НАН Беларуси, 2004, 18-22 с.
53. MapServer Электронный ресурс., http://mapserver.gis.umn.edu/
54. Воеводин В., Филамофитский М. Суперкомпьютер на выходные. — Т. 5: Открытые системы, 2003, 43-48 с.
55. Thain D., Livny М. Distributed computing in practice: the Condor experience // Concurrency and Computation: Practice and Experience. — T. 17, № 2-4, 2004, 323-356 c.
56. Yathiraj B. Udupi, Akhil Sahai, Sharad Singhal: A Classification-Based Approach to Policy Refinement. Integrated Network Management 2007: 785-788.
57. Httperf homepage Электронный ресурс., http://www.hpl.hp.com/research/linux/httperf/
58. Бахвалов H. С., Жидков Н. П., Кобельков Г. М. Численные методы — М.: Лаборатория Базовых Знаний, 2001.
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.