Многие компании по-прежнему сомневаются в полезности новой облачной модели, и лишь некоторые переходят от стадии обсуждения ее возможностей к тестированию и первым пилотным внедрениям. Тем не менее, по мнению аналитиков, подобно тому как серверная виртуализация получила повсеместное признание российских заказчиков в течение последних двух лет, так и распространения полноценных облачных инфраструктур можно ожидать уже в ближайшие 1,5–2 года.
Бытует мнение, что развертывание облачной инфраструктуры требует покупки дорогостоящих облачных платформ (специализированных серверов и систем хранения данных или комплексных решений), немалых затрат на лицензирование программного обеспечения и, главное, создания ЦОД, а с построением и эксплуатацией среды облачных вычислений могут справиться лишь эксперты, обладающие солидными знаниями и опытом. Однако все перечисленное вовсе не является обязательным условием. Как показывает описанный ниже проект, для создания вполне функционального облака можно использовать даже видавшие виды серверы и свободно распространяемое ПО. Это красивое, простое и сравнительно дешевое решение может стать первым шагом к созданию настоящей облачной инфраструктуры.
Подобные архитектуры большего масштаба используются в корпоративных системах и зарекомендовали себя как надежные решения для бизнеса. Однако в данном случае такой подход применяет относительно небольшая компания. Ее специалистам удалось разработать решение, которое многим покажется интересным и заслуживающим внимания. При этом они добились высокой надежности системы — как в плане стабильной работы, так и в части предотвращения утечек информации и компрометации данных клиентов. Оказывается, далеко не новое оборудование вполне может приносить пользу, если с его помощью создать небольшое облако.
Проект реализовывали специалисты, занимающиеся практической бухгалтерией и понимающие требования и повседневные нужды клиентов. Его можно охарактеризовать как интересное и хорошо продуманное техническое решение, сбалансированное по соотношению затрат и получаемых результатов. Оно допускает горизонтальное масштабирование при росте нагрузки и имеет право на существование не только в малом бизнесе — внедрение подобных систем оправданно и в организациях среднего размера.
ОБЛАКО НА КОНКУРС
Осенью текущего года компания «Телфин» провела на своем сайте конкурс среди специалистов в области ИТ и телекоммуникаций на лучшее телекоммуникационное решение для бизнеса. В номинации «Лучшее телеком-решение» победу одержал проект «Облако в подсобке» (см. заметку Дмитрия Ганьжи «Облако бывает и в подсобке» в ноябрьском номере «Журнала сетевых решений/LAN»). Его инициатор, Александр Коваленко из «Ассоциации Профессиональных Бухгалтеров», подробно рассказал, каким образом можно добиться сохранности и защиты информации, организовать бесперебойную работу ИТ-инфраструктуры компании, предоставляющей услуги в области бухгалтерского обслуживания, обеспечить быстрое восстановление в случае отказов, снижение TCO, а также сделать невозможным силовое изъятие информации.
Это не совсем телекоммуникационный проект, но ведь в современном мире к телекоммуникациям относятся не только телефония и все с нею связанное (такая тематика была у большинства представленных на конкурс проектов), но и системы передачи информации с использованием программных или технических средств.
«Ассоциация Профессиональных Бухгалтеров» (Ульяновск) — известный в Поволжье бухгалтерский аутсорсер. «Специфика бухгалтерии такова, что работа должна быть бесперебойной, а все данные клиентов — храниться в секрете. От этих двух факторов напрямую зависит стабильность бизнеса клиентов, — рассказывает основатель компании Александр Коваленко. — Мы не только сдаем отчетность, но и ведем полный цикл документооборота для клиентов. И если прервется наша деятельность, то пострадаем мы, наши клиенты и клиенты наших клиентов. Поэтому непрерывность и безопасность имеют первостепенное значение». По этой же причине восстановление после отказов должно проходить быстро. Хотя требования не столь высоки, как, например, в банковской отрасли или розничной торговле, простой оборудования не должен превышать нескольких часов.
«Ассоциация Профессиональных Бухгалтеров» хранит записи сотен клиентов о сотнях тысяч сделок. Эти критически важные данные не должны быть доступны третьим лицам, в том числе и при выемке или краже компьютеров. Невозможность получить данные учета без ведома их владельца — один из основных приоритетов. Кроме того, как в любой коммерческой деятельности, важно обеспечивать достаточную норму прибыли, а для этого необходимо снижать совокупную стоимость владения информационных систем.
ИСТОРИЯ ПРОЕКТА
«После того как в 2007 году у нас четвертый раз сломался сервер, тянувший на себе всю «обвязку» офиса, пришлось задуматься, — вспоминает Александр Коваленко. — Получалось, что по разным причинам сервер выходил из строя примерно раз в два года, и приходилось заново устанавливать все программное обеспечение. Резервные копии не спасали, так как за это время менялись аппаратные платформы и Windows отказывалась запускаться на новом сервере без переустановки. В итоге каждый раз на заказ, доставку, установку и настройку сервера, а затем и инсталляцию нового ПО уходило до двух недель».
Такая ситуация компанию не устраивала, и она начала экспериментировать с разными гипервизорами и системами хранения данных. Основным требованием было использование промышленных решений и, по возможности, свободно распространяемого ПО.
Первой системой хранения iSCSI, на которой остановили свой выбор ИТ-специалисты, была Open-E — универсальная операционная система для систем хранения данных, позволяющая любой сервер превратить в хранилище NAS или SAN. Однако потом от нее отказались, последовательно перепробовали FreeNAS, OpenFiler и еще несколько менее известных продуктов, попытались самостоятельно собрать систему из разных программных пакетов, но в итоге снова вернулись к Open-E. «Мы полтора года экспериментировали с разными хранилищами, но с Open-E удалось сделать именно то, что нас устраивало, и за вполне разумные деньги, — подчеркивает Александр Коваленко. — Построение инфраструктуры с начала экспериментов до того момента, как мы смогли наконец получить то, что хотели, заняло два года».
В итоге в данном проекте применяются технологии iSCSI (Open-E DSS v7) и RAID6 (Adaptec 6805), система виртуализации серверов (XCP 1.1), система документирования (DokuWiki), система управления задачами (RedMine), шифрование (DiskCryptor). Open-Е и XCP — коммерчески поддерживаемые продукты.
Специалисты остановились на программной реализации iSCSI как на наиболее простом и гибком инструменте. При отказе любого компонента решения можно за полчаса приобрести его аналог в соседнем компьютерном магазине. Под заказ поставляются только адаптеры RAID, но поскольку их два (в разных хранилищах) можно спокойно работать неделю-полторы, пока будут доставлены платы из Москвы. В крайнем случае на это время можно собрать программный RAID (Open-E DSS это допускает), чтобы исключить потерю данных. Выбор Fibre Channel, несмотря на все достоинства, привел бы к значительному повышению стоимости решения.
ВИРТУАЛИЗАЦИЯ СЕРВЕРОВ
Почти все приложения работают в своих отдельных виртуальных машинах. В качестве гипервизора используется свободно распространяемая платформа Xen Cloud Platform (XCP). Ранее применялся ее аналог — Citrix XenServer. XCP и Citrix вместе со средствами управления предлагаются бесплатно, просты в администрировании и поддерживают FreeBSD/ Linux, что и определило выбор.
Гипервизоры установлены на серверы, не обладающие большой вычислительной мощностью. Один из них — старый сервер с процессором Dual Xeon LGA771 3,2 GHz Quad Core и памятью FB-DIMM емкостью 12 Гбайт, другой — более новый, с процессором Xeon X3440 LGA1156 2,4 GHz Quad Core и памятью DDR3 той же емкости. Встроенные дисковые накопители серверов служат исключительно для загрузки гипервизора.
Использование виртуализации позволило реализовать следующие возможности:
- Отсутствие привязки к оборудованию. Гипервизор абстрагирует аппаратные ресурсы, что позволяет запускать виртуальные машины на разных аппаратных платформах. Замена платформы происходит незаметно для виртуальных машин. Это особенно важно для таких сложно восстанавливаемых программ, как системы «клиент-банк»: чтобы запустить их в работу, нужны одновременные действия ИТ-специалистов, лица с правом электронной подписи и банка.
- Мгновенные снимки виртуальных машин (Snapshot), позволяющие «в два клика» сделать резервные копии перед какими-либо изменениями в конфигурации ВМ с возможностью отката на любой «снимок». XCP и платные версии Citrix XenServer дают возможность делать снимок не только диска, но и оперативной памяти.
- Встроенные средства архивирования и простота обращения с виртуальными машинами. По сути, ВМ — это обычный файл размером несколько гигабайтов, его можно перенести в другое место на флэш-накопителе, записать на DVD, передать через Интернет.
- Простое удаленное администрирование серверов. Управлять любой машиной можно через удаленную консоль.
Серверы объединены в кластер (в понятиях Xen — ферму). Это значит, что можно управлять серверами как единым целым, а также использовать все преимущества кластера:
- автоматический запуск ВМ на том сервере, где для нее достаточно ресурсов;
- миграцию работающей виртуальной машины с сервера на сервер;
- запуск всех ВМ на другом сервере при отказе одного из серверов.
Ряд других возможностей пока не задействованы, поскольку требования к доступности не столь высоки: балансировка нагрузки, отказоустойчивые конфигурации (High Availability) и т. п. Ферма все это поддерживает, и приступить к использованию этих средств можно в любой момент.
ВИРТУАЛИЗАЦИЯ ДИСКОВЫХ ХРАНИЛИЩ ДАННЫХ
Вся информация находится на хранилищах данных, подключенных по iSCSI к серверам. В качестве хранилищ используются два старых сервера с процессорами Xeon 2,4 GHz Socket604. В каждом из них установлены контроллеры Adaptec 6805, по семь 2,5-дюймовых дисковых накопителей SAS 2.0 емкостью 1 Тбайт каждый (для повышения надежности собранных в массивы RAID6). Хранилища соединены в кластер таким образом, что при выходе из строя любого из них работа не прерывается ни на секунду. Они работают как зеркало, и пользователь воспринимает их как один виртуальный сервер iSCSI. Хранилища данных функционируют под управлением программного обеспечения Open-E DSS v7.
В хранилищах организовано несколько больших томов, где находятся каталоги пользователей и документация, бухгалтерские базы данных, архив и сами виртуальные машины. Использование iSCSI дает возможность раскрыть весь потенциал кластера. Так как образы виртуальных машин хранятся не на серверах, последние обращаются за ними к хранилищу, причем ферма сама выбирает, на каком сервере запустить ту или иную ВМ (если это не задано явным образом). В результате, если один из серверов окажется недоступен, гипервизор запустит на втором столько ВМ, на сколько у того хватит ресурсов.
Без внешних хранилищ такая схема не могла бы работать. Если образ ВМ хранится на жестком диске сервера, то другой сервер (и гипервизор на нем) не будет иметь доступа к ней. Как результат, при выходе из строя первого сервера все ВМ, хранящиеся на нем, становятся недоступны. В то же время в конфигурации с внешней СХД любой из серверов может быть «потерян» без ущерба для данных (с некоторой деградацией в скорости обработки информации).
ВИРТУАЛЬНЫЕ МАШИНЫ
Компания обслуживает более 20 расчетных счетов для своих клиентов. Чтобы избежать конфликтов и повысить надежность, для каждого банка было решено выделить отдельную виртуальную машину. Практика показала правильность данного подхода.
С учетом сервера приложений, множества ВМ для отдела разработки, двух виртуальных машин для серверов аутентификации, внутреннего портала и т. п., одновременно работают более 30 ВМ. В них используются разные версии Windows, Linux и FreeBSD. Если необходимо провести какое-либо тестирование, за две минуты может быть создан готовый клон работающей ВМ. По окончании тестов он уничтожается.
ОБЕСПЕЧЕНИЕ БЕЗОПАСНОСТИ
Поскольку конфигурация включает в себя два сервера и два хранилища, объединенных в кластер, работа может продолжаться даже при отказе половины оборудования. Для страховки второй сервер и хранилище вынесены за пределы офиса на стороннюю площадку. Таким образом, в случае изъятия серверов на восстановление полной работоспособности потребуется ровно столько времени, сколько нужно, чтобы подключить компьютеры к резервным устройствам.
Все документы хранятся только на сервере. Достигалось выполнение этого требования как административными, так и управленческими мерами, включая организацию бизнес-процессов. Сейчас с уверенностью можно сказать, что на компьютерах сотрудников нет никакой важной информации, только операционная система.
«Проверяется это просто. Мы можем продать без предупреждения любой компьютер и заменить его новым, и все будет работать, как прежде, — рассказывает Александр Коваленко. — Наши приоритеты в работе — безопасность клиента, повышение квалификации сотрудников, достойная норма рентабельности. Именно в такой последовательности. Самое главное — защитить клиента от ошибок и от посягательств извне. Для этого все важные данные шифруются с помощью ключа, хранящегося где-то в сети. Ключ спрятан таким образом, что если без нашего ведома вывезти все компьютеры и собрать их точно так же в другом месте, работать они не будут. Поэтому изымать их совершенно бесполезно — как с целью остановки нашей деятельности, так и для получения информации, которую мы не хотим отдавать».
РЕЗЕРВНОЕ КОПИРОВАНИЕ
Для резервного копирования к одному из серверов подключен по USB внешний жесткий диск. На нем размещен криптоконтейнер, куда производится резервное копирование документов, баз «1C» и виртуальных машин. Этот диск подключен к размещенной на локальном хранилище этого сервера ВМ, на которой установлена операционная система Debian. Доступ к криптоконтейнеру осуществляется по протоколу Samba.
Данные из Windows (документы и базы «1C») копируются с помощью ПО bacula — кросс-платформенного клиентсерверного программного обеспечения, позволяющего управлять резервным копированием, восстановлением и проверкой данных по сети для компьютеров и операционных систем различных типов. Оказалось, что это единственное бесплатное решение, способное создавать резервные копии ACL, копировать со сжатием и с гибкой ротацией пулов.
Основная проблема bacula — медленное восстановление, которое к тому же требует особых технических навыков или подробной инструкции.
Виртуальные машины копируются при помощи штатного механизма XenServer/XCP — VM Protection Policy. Он позволяет делать снимки по расписанию, а также экспортировать их в общие папки CIFS/NFS.
ПРОИЗВОДИТЕЛЬНОСТЬ
По словам Александра Коваленко, скорость работы систем пользователей вполне устраивает, но резервы есть всегда:
- Для увеличения скорости доступа к СХД можно построить RAID10 на высокоскоростных HDD SAS 2.0 15K.
- Добавить по одному накопителю SSD на каждый контроллер и включить кеширование чтения (технология Adaptec MaxCache).
- Увеличить емкость оперативной памяти серверов — недорогое и эффективное решение.
- Создать отдельную сеть хранения данных (SAN).
- Заменить сеть на 10GbE.
- Включить в системе Open-E режим Active-Active. В этом случае нагрузка распределяется между хранилищами.
- Заменить старый сервер на основе Dual Xeon на более современный, что даст прирост производительности на всем кластере. По умолчанию в кластер можно объединить машины только с одинаковыми процессорами. Это сделано для обеспечения миграции работающих ВМ. Ведь если виртуальная машина активирована на сервере с одним набором инструкций, а потом «переехала» на сервер, где применяется другой набор инструкций, возникнет ошибка «kernel panic», или BSoD. Стандартный прием, позволяющий обойти эту проблему, — маскирование. Каждый процессор сообщает о своих возможностях, и они урезаются до минимальной совместимости. В описанной выше конфигурации используются два сервера с процессорами двух разных ветвей развития, их минимальная совместимость намного ниже максимальных возможностей каждого по отдельности. В итоге ни один из серверов не работает на полную мощность.
- Эта же замена даст возможность использовать аппаратное ускорение шифрования, которое есть в современных процессорах. Сейчас эти инструкции маскированы.
НАКОПЛЕННЫЕ ЗНАНИЯ
В процессе создания инфраструктуры было опробовано множество методов, пакетов и технологий. Полученный опыт специалисты сохраняли во внутренней базе знаний. В качестве движка была выбрана DokuWiki — простой, но достаточно мощный вики-движок, который может быть использован для создания любой документации. На ней хранятся базы знаний отдела разработки и бухгалтерии.
ДАЛЬНЕЙШЕЕ РАЗВИТИЕ
В дальнейшем компания планирует перейти на управляемые UPS и создать сервер USB-ключей для их проброса в ВМ (для банков-клиентов). В клиентской части в качестве перспективы рассматриваются виртуализация рабочих станций (как минимум — бездисковая загрузка) и виртуализация приложений, а в дальнейшем — виртуализация офисной телефонии (сейчас используется обычная УАТС Panasonic). Специалисты думают также над усовершенствованием средств мониторинга. В настоящее время он ограничивается отправкой почтовых сообщений по событиям из XCP и Open-E.
Сергей Орлов — ведущий редактор «Журнала сетевых решений/LAN». С ним можно связаться по адресу: sorlov@lanmag.ru.