Д.Е. Ефремов, А.А. Перцев, А.Н. Подобрий
Подход к формированию отказоустойчивой облачной
инфраструктуры проектной организации.
Своевременный выпуск продукции проектной организации
зависит от качественной и отказоустойчивой работы инфраструктуры. Отказоустойчивость
[1] — свойство технической системы сохранять свою работоспособность после
отказа одного или нескольких составных компонентов. Отказоустойчивость
определяется количеством любых последовательных единичных отказов компонентов,
после которого сохраняется работоспособность системы в целом. Базовый уровень
отказоустойчивости подразумевает защиту от отказа одного любого элемента —
исключение единой точки отказа. Основной способ повышения отказоустойчивости —
избыточность. Наиболее эффективный метод избыточности — аппаратная
избыточность, которая достигается путем резервирования. В ряде приложений
отказоустойчивость путем резервирования является обязательным требованием,
предъявляемым государственными надзорными органами к техническим системам. Отказоустойчивая
архитектура с точки зрения инженерии — это метод проектирования
отказоустойчивых систем, которые способны продолжать выполнение запланированных
операций (возможно, с понижением эффективности) при отказе их компонентов. Это
означает, что система в целом не прекратит свою работу при возникновении
проблем с аппаратной или программной частью.
Достоинства отказоустойчивых решений очевидны, но
также у них существуют и недостатки [2] связанные с помехами в обнаружении однокомпонентных
и многокомпонентных неполадок, уменьшением приоритета исправления неполадок, сложностью
проверки, стоимостью, и др.
На текущий момент существует множество решений
позволяющих построить отказоустойчивую облачную инфраструктуру, при выборе
которой руководители организаций основываются на личных предпочтениях,
связанных со стоимостью, качеством и уровнем доступности. Одно из компромиссных
решений представляется авторами данной статьи.
Все хосты виртуализации объединены в кластер высокой
доступности. В кластере опубликованы десятки виртуальных машин (ВМ). Для
поддержания высокой доступности все ресурсы виртуальных машин (файлы жестких
дисков, снимков, подкачки второго уровня, конфигурации) должны располагаться на
дисковом томе (или файловом ресурсе SMB 3) доступном на чтение\запись для всех
хостов виртуализации. Для этих целей в системе хранения данных создан том
размером 4 Тб. В случае четного числа участников кластера для поддержания
«Кворума» также требуется дисковый том – свидетель, который хранит текущую
конфигурацию кластера. В случае потери связи между сайтами, продолжать
поддерживать доступность виртуальных машин будут хосты того сайта, из которого
будет доступен диск-свидетель. Виртуальные машины «проигравшего» сайта
запустятся на доступных хостах. Таким образом, важнейшее значение в работе
системы приобретает система хранения данных (СХД).
Ключевые особенности системы хранения в предлагаемом
решении:
– Network RAID. При выходе из строя диска, контроллера
или даже модуля целиком СХД осуществляет синхронную репликацию, распределяя
блоки данных и контрольные суммы по разным узлам кластера. Процедуры
переключения на резервную копию в случае сбоя, синхронизация данных и миграция
LUN между узлами кластера осуществляются незаметно для пользователей.
– Технология Thin Provisioning позволяет не
беспокоиться о том, что завтра потребуется объём больше, чем выделено сегодня.
Система хранения данных выделяет дисковое пространство по мере необходимости, в
тот момент, когда происходит запись данных. Таким образом, устраняется
необходимость в резервировании емкости при создании LUN, и, следовательно,
аппаратное обеспечение используется более эффективно.
– "Мгновенные снимки" (точные копии всей
информации на логическом томе), позволяющие в случае сбоя восстановить систему
и получать непосредственно во время работы бизнес-приложений на исходном диске
(т.е. прямо во время изменения самих данных).
– Масштабируемость. При необходимости, добавляя узлы
хранения, можно увеличить доступную емкость до 256 Тб. С увеличением количества
узлов также увеличивается производительность системы в целом, т.к.
чтение/запись осуществляется сразу со всех узлов.
Для поддержания кворума кластера применяется
специализированный «менеджер» запущенный на виртуальной машине VMware ESXi и территориальной отдаленный от основных сайтов. На
узлах виртуализации создаются «виртуальные коммутаторы», привязанные к сетевому
адаптеру узла. Виртуальные машины назначаются «виртуальному коммутатору», при
этом есть возможность указать принадлежность ВМ к VLAN.
Для управления узлами виртуализации и кластером можно
использовать программное обеспечение Virtual Machine Manager 2012 SP1 (VMM), одним из основных качеств которого является «оптимизация
узлов кластера высокой доступности виртуальных машин». VMM по команде
администратора анализирует характеристики загрузки узлов виртуализации
(процессора, ОЗУ, дисковой подсистемы, сетевых подключений) и предлагает схему
оптимизации размещения ВМ на узлах. Результатом оптимизации является
перемещение ВМ на менее загруженные узлы виртуализации и выравнивание нагрузки
на них.
Список литературы
1. Официальный сайт http://ru.wikipedia.org/Отказоустойчивость-Википедия.html
2. Официальный сайт http://efsol.ru, «Как обеспечить максимальную отказоустойчивость информационной системы»
3. Майкл Хотек «Методы достижения высокой
отказоустойчивости», Windows IT Pro.