К современным системам обработки, хранения и передачи данных различного назначения, в том числе к киберфизическим и инфокоммуникационным, предъявляются высокие требования по надежности, безопасности, отказоустойчивости и низкой стоимости реализации и эксплуатации [1–3].
Требования, предъявляемые к компьютерным системам, во многом зависят от выполняемых ими прикладных задач, их критичности к задержкам и непрерывности обслуживания, особенностей эксплуатации и ее сложности [4–6].
Высокая надежность, отказоустойчивость и готовность компьютерных систем к критическому применению достигаются при консолидации ресурсов обработки и хранения данных на основе технологии кластеризации, динамического распределения запросов [7–9] и виртуализации.
В кластерной системе с виртуализацией в случае отказов или отключений физических серверов для профилактических или иных работ работоспособность обеспечивается в результате перемещения виртуальных ресурсов, служб или приложений между физическими серверами [10] при поддержке непрерывности вычислительных процессов. Современные технологии виртуализации основываются на целенаправленной миграции виртуальных ресурсов между физическими серверами с целью адаптации кластерных систем к накоплению отказов физических серверов [8].
При миграции виртуальных машин (ВМ) в кластере может использоваться общее хранилище данных с виртуальными дисками ВМ, что ускоряет процесс миграции в результате переноса только оперативной памяти, регистров виртуальных процессоров и состояния виртуальных устройств ВМ [11–13].
В кластере без реализации общей системы хранения данных при миграции дополнительно перемещается содержимое виртуальных дисков ВМ, объем которых может быть значительным, что замедляет процесс миграции.
Процесс миграции виртуальных ресурсов может дополнительно замедляться в случае их перемещения через сеть [14–16].
В процессе динамической миграции можно выделить этапы передачи данных (регистры ВМ, оперативная память, диск(и)) на резервный сервер и активизации функционирования на нем ВМ [17, 18].
Технология виртуализации, направленная на обеспечение высокой надежности компьютерных систем, включает технологии «Высокая доступность» (High Availability Cluster) и «Отказоустойчивость» (Fault Tolerance), первая из которых поддерживает автоматический перезапуск ВМ на работоспособных узлах кластера [12], а вторая – непрерывность вычислительного процесса при его перемещении на ВМ одного из серверов кластера, сохранивших работоспособность [13].
Технология «Высокая доступность» позволяет автоматически перемещать ВМ с отказавшего сервера на работоспособный. Восстановление функционирования ВМ может происходить за несколько минут в зависимости от конфигурации и загрузки физического сервера и свойств пользовательских приложений. При этой технологии для автоматического перезапуска ВМ все их данные должны храниться на общем хранилище данных, которое может быть реализовано в виде или устройства, подключенного ко всем узлам кластера, или распределенной системы хранения данных [10]. После отказа какого-либо физического сервера в других серверах могут запускаться ВМ, используя виртуальные диски ВМ, располагающиеся на общем хранилище. При этом теряется состояние ВМ, в том числе данные в оперативной памяти, регистры виртуальных процессоров и состояния внешних устройств. Поэтому системе требуется время для инициализации ВМ и приведения ее к состоянию перед отказом. Для корректной работы данного механизма виртуализации необходимо обеспечить изоляцию физических серверов после отказа, чтобы при перезапуске исключить одновременное выполнение вычислительного процесса двумя ВМ с целью исключения неоднозначности данных в общем хранилище.
Технология «Высокая доступность» предполагает, что после отказа любого физического сервера функционирующие на нем ВМ автоматически распределяются по уцелевшим узлам и перезапускаются на них. Состояние оперативной памяти всех ВМ, находившихся на отказавшем узле, теряется.
Технология «Отказоустойчивость» обеспечивает непрерывность вычислительного процесса (сервиса) в кластере после отказа одного физического сервера при поддержке двух копий ВМ в оперативной памяти, расположенных на разных физических серверах, чтобы в случае отказа одного из них продолжить работу на другом. Для рассматриваемой организации вычислительного процесса во время функционирования ВМ на одном из серверов на другом должна поддерживаться актуальная копия оперативной памяти [10] активной ВМ. При этом образы виртуальных дисков ВМ должны храниться в выделенном или распределенном хранилище данных с синхронной репликацией данных.
К программным продуктам, поддерживающим технологию отказоустойчивости, можно отнести VMware Fault Tolerance, Kemari для Xen и KVM [17, 18].
Указанные механизмы виртуализации влияют на надежность кластерной системы, что необходимо учитывать при обосновании структуры системы, организации вычислительных процессов и дисциплин восстановления и обслуживания высоконадежных кластерных систем.
Обоснование выбора проектных решений построения высоконадежных кластерных систем должно опираться на моделирование [19–21] при оценке надежности, готовности, отказоустойчивости и производительности рассматриваемых реализаций.
Целью авторов статьи является построение моделей кластерных систем, позволяющих оценить влияние процесса виртуализации на их надежность.
Рассматриваемые модели ориентированы на обоснование выбора структуры и дисциплины обслуживания и восстановления кластера с учетом требований к реализуемым прикладным задачам и используемых механизмов виртуализации [10].
Объект исследования
Рассмотрим высоконадежный кластер, реализованный на базе технологии виртуализации, ориентированной на поддержку непрерывности сервиса (вычислительного процесса).
Отказоустойчивый кластер в простейшем случае состоит из двух физических серверов (основного и резервного) с высокоскоростными сетевыми интерфейсами (рис. 1). В каждом сервере установлен один локальный жесткий диск (HDD), подключенный по интерфейсу SATA или SAS. В обоих серверах на жесткий диск установлены гипервизор, ПО кластеризации и управления виртуализацией. На локальных жестких дисках серверов развернута распределенная система хранения данных с синхронной репликацией данных с исходного сервера на резервный [17, 18]. На кластере запущена ВМ в режиме «Отказоустойчивость».
Система предполагает запуск теневой копии ВМ на резервном сервере, что позволяет после отказа основного сервера без прерываний продолжить вычислительный процесс на ВМ резервного сервера.
Поддержка непрерывности вычислительного процесса при автоматическом восстановлении функционирования после отказов (реконфигурация) требует:
- постоянной синхронизации оперативной памяти и дисковых данных, для чего возможно использование высокоскоростных сетевых адаптеров и коммутаторов второго уровня, например, 10G Ethernet или InfiniBand;
- организации в серверах распределенной системы хранения данных, поддерживающей синхронную репликацию дисковых данных с основного на резервный сервер или отдельного сервера для организации внешней общей системы хранения данных.
Рассмотрим восстановление ресурсов системы, теряемых в результате отказов, осуществляемое сразу после отказа (предполагает мгновенное определение возникновения отказа средствами контроля, наличие комплекта ЗИП, приспособлений и персонала, готовых к проведению ремонтных работ). Для отказоустойчивых кластерных систем в качестве показателя надежности воспользуемся коэффициентами стационарной и нестационарной готовности [22, 23].
Модель надежности отказоустойчивого кластера с оперативным восстановлением
Построим марковскую модель надежности [23–25] отказоустойчивого кластера с оперативным восста- новлением, учитывающую реализацию механизмов миграции ВМ. Диаграмма состояний и переходов отказоустойчивого кластера с оперативным восстановлением при реализации миграции ВМ приведена на рисунке 2.
На рисунке исправные состояния кластера (работоспособные состояния без отказавших узлов) обозначены вершинами, обведенными сплошной линией, работоспособные состояния с отказавшими узлами – пунктирной, неработоспособные состояния, в которых происходит автоматическое восстановление пользовательского сервиса, – двойной сплошной, неработоспособные состояния, в которых ожидается восстановление узлов ремонтником, – жирной сплошной линией. Пометка «ВМ» на вершинах графов обозначает сервер, на котором запущена в данный момент ВМ с виртуальным сервисом. Перечеркнутая двумя линиями вершина обозначает отказ узла, одной линией – состояние узла, при котором он в данный момент не функционирует и, соответственно, не отказывает. На диаграмме обозначены интенсивности отказов (λ0, λ1, λ2) и восстановлений (μ0, μ1, μ2) сервера, диска и коммутатора соответственно. Интенсивность восстановления (синхронизации системы распределенного хранилища), включающего занесение актуальной реплики данных на восстановленный диск, – μ3. Интенсивность восстановления ВМ после автоматического перезапуска, включающего запуск ВМ на резервном сервере и загрузку на нем приложения пользователя, – μ4.
Для нахождения искомых вероятностей состояний по приведенным диаграммам состояний и переходов составляются системы алгебраических уравнений при оценке стационарного коэффициента готовности или дифференциальных уравнений при оценке нестационарного коэффициента готовности [23, 26].
Систему дифференциальных уравнений в соответствии с диаграммой состояний и переходов (рис. 2) представим следующим образом:
Упрощенная марковская модель надежности кластера без учета влияния на снижение готовности кластера издержек на миграцию ВМ, соответственно, приводящая к верхней оценке надежности системы, представлена на рисунке 3.
Система дифференциальных уравнений, соответствующая диаграмме состояний и переходов, приведенной на рисунке 3, имеет вид:
Результаты расчета коэффициентов нестационарной готовности кластера по моделям, соответствующим диаграммам на рисунках 2 и 3, показаны на рисунке 4.
На рисунке 4 кривые 1 и 2 соответствуют оценке нестационарных коэффициентов готовности К1(t) и К2(t) на основе диаграмм на рисунках 2 и 3. Кривая 3 на рисунке 4 соответствует разнице d = К2(t) – К1(t). Расчет выполнен при следующих интенсивностях отказов сервера, диска, коммутатора: λ0 = 1,115 10-5 1/ч, λ1 = 3,425×10-6 1/ч, λ2 = 2,3×10-6 1/ч и интенсивностях их оперативного восстановления соответственно: μ0 = 0,33 1/ч, μ1 = 0,17 1/ч, μ2 = 0,33 1/ч. Интенсивность синхронизации системы распределенного хранилища: μ3 = 1 1/ч, μ4 = 2 1/ч. Расчеты выполнены в системе компьютерной математики Mathcad-15.
Представленные на рисунке 4 графики позволяют сделать вывод о существенном влиянии учета миграции ВМ на надежность.
Заключение
Таким образом, предложена марковская модель надежности отказоустойчивого кластера, учитывающая издержки на миграцию ВМ. Построена упрощенная модель отказоустойчивого кластера, пренебрегающая издержками при восстановлении на миграцию ВМ. Показано существенное влияние на надежность отказоустойчивого кластера (оцениваемую по нестационарному коэффициенту готовности) учета механизмов виртуализации, в том числе миграции ВМ.
Литература
1. Kopetz H. Real-time systems: design principles for distributed embedded applications. Springer, 2011, 396 p.
2. Sorin D. Fault tolerant computer architecture. Morgan & Claypool, 2009, 103 p.
3. Верзун Н.А., Колбанев М.О., Татарникова Т.М. Технологическая платформа четвертой промышленной революции // Геополитика и безопасность. 2016. № 2. С. 73–78.
4. Абрамян Г.В. Структура и функции информационной системы мониторинга и управления рисками развития малого и сред- него бизнеса Северо-Западного федерального округа // Аудит и финансовый анализ. 2017. № 5–6. С. 611–617.
5. Velichko E.N., Grishentsev A.Y., Korobeynikov A.G. Inverse problem of radiofrequency sounding of ionosphere. Intern. J. of Mod-ern Physics A, IET, 2016, vol. 31, no. 2–3, art. 1641033.
6. Богатырев В.А., Богатырев С.В. Резервированное обслуживание в кластерах с уничтожением неактуальных запросов // Вестн. компьютер. и информ. технологий. 2017. № 1. С. 21–28.
7. Богатырев В.А., Богатырев С.В., Богатырев А.В. Надежность кластерных вычислительных систем с дублированными связями серверов и устройств хранения // Информационные технологии. 2013. № 2. С. 27–32.
8. Богатырев В.А., Богатырев А.В., Голубев И.Ю., Богаты- рев С.В. Оптимизация распределения запросов между кластерами отказоустойчивой вычислительной системы // Науч.-технич. вестн. СПбГУИТМО. 2013. № 3. С. 77–82.
9. Богатырев В.А., Богатырев С.В., Богатырев А.В. Оптимизация древовидной сети с резервированием коммутационных узлов и связей // Телекоммуникации. 2013. № 2. С. 42–48.
10. Алексанков С.М. Модель процесса динамической миграции с копированием данных после остановки виртуальных машин // Изв. вузов: Приборостроение. 2016. Т. 59. № 5. С. 173–178.
11. Как «быть готовым» или DR на Nutanix: асинхронная репликация. 2015 // Блог компании Nutanix. URL: https://habrahabr.ru/ company/nutanix/blog/250197/ (дата обращения: 25.04.2018).
12. Самойленко А. Требования и ограничения VMware Fault Tolerance. 2010 // портал VM Guru. URL: http://www.vmgu.ru/articles/ vmware-fault-tolerancemain (дата обращения: 25.04.2018).
13. Общее представление о конфигурациях кворума в отказоустойчивом кластере. URL: https://technet.microsoft.com/ru-ru/ library/cc731739(v=ws.11).aspx (дата обращения: 25.04.2018).
14. Татарникова Т.М. Аналитико-статистическая модель оценки живучести сетей с топологией mesh // Информационно-управляющие системы. 2017. № 1. С. 17–22.
15. Абрамян Г.В. Модели и технологии оптимизации телекоммуникаций в науке и образовании Северо-Западного региона на основе использования saas/sod облачных сервисов // ИТСиТ: сб. тр. Всерос. науч.-практич. конф. 2015. С. 27.
16. Алиев Т.И., Муравьева-Витковская Л.А. Приоритетные стратегии управления трафиком в мультисервисных компьютерных сетях // Изв. вузов: Приборостроение. 2011. Т. 54. № 6. С. 44–48.
17. Технология Kemari // xguru.ru: портал обмена знаниями по UNIX/Linux-системам, системам с открытым исходным кодом, сетям и другим родственным вещам. URL: http://xgu.ru/wiki/Kemari (дата обращения: 25.04.2018).
18. Елизаров Е. Dell Live Volume: виртуализуем дисковое пространство. URL: https://onlanta.ru/press/blogs/evgeniy-elizarov/32031/ (дата обращения: 25.04.2018).
19. Кутузов О.И., Татарникова Т.М. Инфокоммуникационные сети. Моделирование и оценка вероятностно-временных характеристик. СПб: Изд-во ГУАП, 2015. 382 с.
20. Gatchin Y.A., Zharinov I.O., Korobeynikov A.G., Zhari- nov O.O. Theoretical estimation of Grassmann's transformation resolution in avionics color coding systems. MAS, 2015, vol. 9, no. 5, pp. 197–210.
21. Жмылев С.А., Мартынчук И.Г., Киреев В.Ю., Алиев Т.И. Оценка длины периода нестационарных процессов в облачных системах // Изв. вузов: Приборостроение. 2018. Т. 61. № 8. С. 645–651.
22. Черкесов Г.Н. Надежность аппаратно-программных комплексов. СПб: Питер, 2005. 479 с.
23. Половко А.М., Гуров С.В. Основы теории надежности. СПб: БХВ-Петербург, 2006. 704 с.
24. Шубинский И.Б. Надежные отказоустойчивые информационные системы. Методы синтеза. Ульяновск: Печатный двор, 2016. 544 с.
25. Алиев Т.И. Основы моделирования дискретных систем. СПб, 2009. 363 с.
26. Шубинский И.Б. Структурная надежность информационных систем. Методы анализа. Ульяновск: Печатный двор, 2012. 296 с.
References
- Kopetz H. Real-Time Systems: Design Principles for Distributed Embedded Applications. Springer Publ., 2011, 396 p.
- Sorin D. Fault Tolerant Computer Architecture. Morgan & Claypool Publ., 2009, 103 p.
- Verzun N.A., Kolbanev M.O., Tatarnikova T.M. Technological platform of the fourth industrial revolution. Geopolicy and Safety. 2016,
no. 2, pp. 73–78 (in Russ.).
- Abramyan G.V. The structure and functions of an information system for monitoring and managing risks of the development of small and medium-sized businesses in the North-West Federal District. Audit and Financial Analysis. 2017, no. 5–6, pp. 611–617 (in Russ.).
- Velichko E.N., Grishentsev A.Y., Korobeynikov A.G. Inverse problem of radiofrequency sounding of ionosphere. Intern. J. of Modern Physics A. 2016, vol. 31, no. 2–3, art. 1641033.
- Bogatyrev V.A., Bogatyrev S.V. Redundant service clusters with the destruction of irrelevant queries. Herald of Computer and Information Technologies. 2017, no. 1, pp. 21–28 (in Russ.).
- Bogatyrev V.A., Bogatyrev S.V., Bogatyrev A.V. Reliability clusters computing systems with the duplicated communications of servers and storage devices. Information Technologies. 2013, no. 2, pp. 27–32 (in Russ.).
- Bogatyrev V.A., Bogatrev A.V., Golubev I.Yu., Bogatyrev S.V. Queries distribution optimization between clusters of fault-tolerant computing system. Scientific and Technical J. of Information Technologies, Mechanics and Optics. 2013, no. 3, pp. 77–82 (in Russ.).
- Bogatyrev V.A., Bogatyrev S.V., Bogatyrev A.V. Tree network optimization with redundant switching nodes and connections. Telecommunications. 2013, no. 2, pp. 42–48 (in Russ.).
- Aleksankov S.M. Model of live migration process with data copying after virtual machines stopping. J. of Instrument Engineering, 2016,
vol. 59, no. 5, pp. 348–354.
- How to be ready or DR on Nutanix: asynchronous replication. 2015. Nutanix Company Blog. 2015. Blog kompanii Nutanix. Available at: https://habrahabr.ru/company/nutanix/blog/250197/ (accessed April 25, 2018).
- Samoylenko A. VMware Fault Tolerance requirements and limitations. 2010. VM Guru. Available at: http://www.vmgu.ru/articles/vmware-fault-tolerancemain (accessed April 25, 2018).
- Overview of Quorum Configurations in a Failover Cluster. Available at: https://technet.microsoft.com/ru-ru/library/cc731739(v=ws.11).aspx (accessed April 25, 2018).
- Tatarnikova T.M. Analytical-statistical model of mesh network survivability evaluation. Information and Control Systems. 2017, no. 1, pp. 17–22 (in Russ.).
- Abramyan G.V. Models and technologies to optimize telecommunications in science and education in the North-West region based on saas/sod cloud services. ITSiT: Proc. All-Russian Sci. and Pract. Conf. 2015, p. 27 (in Russ.).
- Aliev T.I., Muravyeva-Vitkovskaya L.A. Priority-based strategies of traffic management in multiservice computer networks. J. of Instrument Engineering. 2011, vol. 54, no. 6, pp. 44–48 (in Russ.).
- Kemari Technology. Xguru.ru. Available at: http://xgu.ru/wiki/Kemari (accessed April 25, 2018).
- Elizarov E. Dell Live Volume: Virtualizing Disk Space. Available at: https://onlanta.ru/press/blogs/evgeniy-elizarov/32031/ (accessed April 25, 2018).
- Kutuzov O.I., Tatarnikova T.M. Infocommunication Networks. Modeling and Evaluation of Probability-Time Characteristics. St. Petersburg, GUAP Publ., 2015, 382 p.
- Gatchin Y.A., Zharinov I. O., Korobeynikov A.G., Zharinov O.O. Theoretical estimation of Grassmann's transformation resolution in avionics color coding systems. MAS. 2015, vol. 9, no. 5, pp. 197–210.
- Zhmylev S.A., Martynchuk I.G., Kireev V.Yu., Aliev T.I. Estimation of periods of nonstationaty processes in cloud systems. J. of Instrument Engineering. 2018, vol. 61, no. 8, pp. 645–651.
- Cherkesov G.N. Reliability of Hardware and Software Systems. St. Petersburg, Piter Publ., 2005, 479 p.
- Polovko A.M., Gurov S.V. Fundamentals of the Theory of Reliability. St. Petersburg, BHV-Peterburg Publ., 2006, 704 p.
- Shubinsky I.B. Reliable Fault-Tolerant Information Systems. Synthesis Methods. Ulyanovsk, Pechatny dvor Publ., 2016, 544 p.
- Aliev T.I. Fundamentals of Discrete Systems Modeling. St.-Petersburg, 2009, 363 p.
- Shubinsky I.B. Structural Reliability of Information Systems. Methods of Analysis. Ulyanovsk, Pechatny dvor Publ., 2012, 296 p.