Серверная площадка

Общая информация
Была проведена существенная реорганизация и модернизация сетевой серверной площадки (ССП), обеспечивающей функционирование портала МГТУ, самостоятельных сайтов факультетов, кафедр и подразделений МГТУ, а также виртуальных серверов, на которых также функционируют сайты кафедр и подразделений МГТУ. В данном разделе приведено описание ССП проведенных работ по ее усовершенствованию. Указанные работы были проведены с целью повышения производительности, функциональности и отказоустойчивости системы. Сетевая серверная площадка (ССП) представляет собой совокупность аппаратного и системного программного обеспечения.

В ходе реализации ряда технических перевооружений и приоритетного национального проекта «Образование», университет получил современные вычислительные системы. Также силами университета было осуществлён переход на более стабильный источник питания, создана система резервного питания и современная система охлаждения. Иными словами на данный момент серверная площадка МГТУ им. Баумана представляет из себя полноценный Центр Обработки Данных (ЦОД или Дата-центр) с двумя разделенными гермозонами. Внешние коммуникации (Интернет) обеспечиваются двумя провайдерами интернет услуг — Runnet и Retn
Используемые серверы
В ходе модернизации ССП было задействовано шесть серверов. 3 сервера архитектуры IBM PowerPC (IBM p550), и три сервера архитектуры Intel x86_64. Краткие технические характеристики:

Наименование ЭВМ Центральный процессор Оперативная память Дисковая система
IBM p550 4 х Power5 12 Гб 2 х 72 Гб
Intel 1 2 x Intel Xeon 8 Гб 300 Гб
Intel 2 2 x Intel Xeon 2 Гб 600 Гб
Intel 3 (2-x платная система) 2 x Intel Xeon 24 Гб 1,2 Тб

Сервера IBM вооружены не классическими CISC-процессорами, а RISC процессорами разработанными в компании IBM. Являясь мощными вычислителями, они сочетают в себе гибкость и широкий набор вычислительных инструкций. Также данные сервера обладают внушительным объемом памяти — 12 Гигабайт, что позволяет более эффективно использовать ресурсы ввода-вывода и хранить большой объем данных в оперативном доступе.

Сервера Intel — построены на классических процессорах разработанных в компании Intel. Данный сервер сочетает в себе гибкость и удобство настройки. Сервер сочетает большие возможности по модернизации и обновлению — позволяя устанавливать комплектующие разнообразных производителей. Таким образом, цена владения данного сервера гораздо меньше чем сервера других моделей.

Также в ходе проработки проекта использовались ресурсы по резервному копированию площадки МГТУ на базе Системы Хранения Данных DS8400 — 3 Терабайта. Система хранения обеспечивает высокую плотность и скорость доступа к дискам посредством протокола Fiber Channel.
 
Двухуровневая виртуализация для системы хостинга сайтов кафедр и подразделений МГТУ
Для обеспечения функционирования площадки на всех этапах разработки, апробации и интеграции — необходимо было выбрать Операционную Систему(ОС). Так как в структуре проекта используются системы с разными типами процессоров(IBM и Intel) выбор был ограничен лишь несколькими версиями:
  • OS Linux
  • OS AIX
В ходе проработки была выбрана OC Linux — так как она наиболее более современна и обеспечивает доступ к современным средствам разработки. ОС AIX — являясь закрытой системой, разработанной корпорацией IBM, не обеспечивает доступа к современным средствам разработки.

Для выбора конкретного коробочного решения (дистрибутива) — был произведен анализ существующих продуктов на рынке и их возможностей. Выбор был лишь между дистрибутивами следующих фирм:
  • Red Hat
  • Novell SUSE
Выбор был сделан на Red Hat. Фирма Red Hat поставляет на рынок продукт Red Hat Enterprise Linux Server. Она является лидером в создании коробочных решений и поставляет их уже более 15 Лет. Система имеет мощную поддержку средств разработчиков, а также имеет публичную интерпретацию дистрибутива — CentOS. Novell SUSE — является более слабым с точки зрения разработчика и менее распространённым. Также система Red Hat была сертифицирована в первую очередь для работы в государственном секторе и является стандартом де-факто среди Linux.

В ССП портала МГТУ впервые была использована двухуровневая система на базе VMware ESXi и OpenVZ. Данные системы позволяют строить облачные среды, а также позволяют разделять ресурсы одной реальной машины между несколькими виртуальными. Иными словами данная система, позволила держать не 30 серверов, а всего лишь 6. Консолидация ресурсов в рамках одного сервера позволила снизить энергопотребление и повысить использование сервера.

VMware ESXi — гипервизор разработанный компанией VMware. Построен на базе ОС Linux и обладает набором специальных средств позволяющих управлять большими пулами виртуальных машин. Данная разработка позволяет использовать в качестве сред виртуализации любую среду — Linux, BSD, Windows и DOS. Позволяет гибко осуществлять разделение и выделение ресурсов — Центрального Процессора и Дисковой подсистемы, а также позволяет осуществлять гибкое выделение памяти из свободного пула (Memory Overcommit).

OpenVZ — контейнер виртуальных сред разработанный компанией Parallels. Система является модификацией системного ядра Linux и доступна для свободного скачивания. Являясь контейнером, система позволяет достичь небывалой плотности размещения виртуальных сред до 400-500 виртуальных сред на одном немощном сервере (1 процессор 2 Гигабайта памяти). В ходе апробации был подтвержден высокий класс данной системы как на отдельном сервере так и внутри виртуальной среды VMware. Где на данный момент она продолжает работать.

Данный принцип был впервые апробирован в ходе выполнения данных работ и позволил сэкономить существенные средства за счет использования меньших аппаратных ресурсов, а также повысил энергоэффективность проекта. Данный способ организации виртуализации является инновационным и в будущих системах будет использоваться с большей силой, так как позволяет экономить ресурсы администратора и на порядок упрощает взаимодействие с пользователями.

Виртуализация и кластеризация основная платформа построения хостинг-площадки. На хостинг-площадке функционируют две кластерных системы:
  • Кластер Баз Данных (КБД)
  • Кластер Виртуальных машин (КВМ)

Из схемы видно что все сервера подключены к Сети МГТУ. Между серверами кластеров установлены внутренние связи (Interconnect). Для построения КБД были использованы два сервера IBM p550 — выбор был связан с большим количеством памяти и мощными процессорами.
 
Кластер баз данных (КБД)
Для организации КБД необходимо выбрать типы баз данных. Исходя из реальных условий, выбранной операционной системы и условий кластеризации выбор осуществлялся между следующими базами данных:
  • Oracle — является наиболее распестрённой системой управления баз данных (СУБД). Для построения кластерной структуры используется система собственной разработки Oracle Cluster Ware. На сегодняшний момент Oracle является наиболее совершенной Базой данных. К сожалению она является коммерческой СУБД и стоимость владения зависит прямо пропорционально кол-ву пользователей этой СУБД. Проведя калькуляцию расходов на владения СУБД и использования её в нарастающей среде было принято решение отказаться от данной СУБД
  • DB2 — является менее распространённой СУБД. На сегодняшний день она сильно отстает по своим возможностям от других СУБД. Слабые механизмы кластеризации и повышения производительности предопределили что данная база данных не будет использоваться в проекте.
  • PostgreSQL — открытая СУБД. Данная СУБД позволяет создавать системы очень большого объема и по своим возможностям приближается к СУБД Oracle. Кластеризация может осуществляется несколькими путями. Данная база данных полностью поддерживает язык SQL и позволяет осуществить миграцию в будущем на любые другие СУБД поддерживающие стандарт ANSI SQL. PostgreSQL — была выбрана как центральная База данных.
  • MySQL — открытая СУБД. Наиболее распространенная СУБД. Чаще всего используется в web-проектах. Для организации порталов и систем консультационного сопровождения наиболее подходит данная СУБД. Так как данная база данных поддерживается наиболее большим количеством языков программирования и является наиболее простой и гибкой с точки зрения программистов и пользователей. MySQL — была выбрана как база web-портала.
Кластер PostgreSQL — строится на основе двух однотипных СУБД и репликации данных на основе pgpool. Репликация происходит через внутреннею сеть и позволяет добиться высоких скоростей. Данный вид кластеризации позволяет добиться высокой доступности СУБД и позволяет осуществить увеличение узлов кластера практически до бесконечности. Что в будущем — при возрастании нагрузки позволит осуществить увеличение мощности системы без простоя и потери данных. Кластер является кластером высокой доступности и кластером защиты от сбоев.

Кластер MySQL — строится на основе общего дискового массива средствами drbd (Distributed Replicated Block Device — Распределенное Реплицируемое Блочное устройство). Иными словами данное средство позволяет осуществить репликацию данных между двумя устройства на котором расположены файловые ресурсы СУБД. Для организации доступа к общим ресурсам была выбрана кластерная файловая система GFS(Global File System) — данная файловая система позволяет осуществить доступ одновременно с двух устройств и является наиболее современной файловой системой.

Для организации перемещения активных ресурсов используется открытая разработка на базе Операционной Системы — Linux Heartbeat.

Так как потребителями Баз Данных в основном является портал МГТУ, а также самостоятельные сайты подразделений МГТУ, было принято решение ограничить доступ лишь серверами разработки и системами доступа пользователей. На данный момент разграничения прав доступа используется внутри СУБД и позволяет осуществить весь комплекс мер необходимых для ограничения доступа.


Также следует отметить, что данная схема является инновационной и ранее нигде не применялась. Такие системы можно назвать также как Мульти Кластер Баз Данных. Иными словами данная система Мульти Кластера позволяет консолидировать ресурсы и обеспечить надежность сравнимую с коммерческими СУБД и системами управления кластерной инфраструктуры. На сегодняшний день данные типы СУБД практически нигде не применяются, большинство производителей коммерческих СУБД искусственно ограничивает возможность развертывания других баз данных на своих серверах. Сейчас такой подход кажется странным — использование нескольких серверов для нескольких баз данных и кластеризация его, но в будущем для построения серьезных распределенных СУБД необходимо будет использовать совокупности баз данных. Данные системы Мульти Кластера позволят обеспечить весь комплекс мер по взаимодействию и разграничению множеств баз данных.
 
Кластер Виртуальных машин (КВМ)
Для организации системы находящейся в активном доступе было решено организовать Кластер Виртуальных Машин (КВМ). Кластеризация Виртуальных машин позволяет добиться высокого уровня доступа к машинам обслуживающим пользователей. Также кластеризация позволяет с минимальными задержками осуществлять расширение системы — увеличение количества активных серверов, увеличение оперативной памяти замена процессоров. На данный момент существует несколько видов кластеризации Виртуальных Машин:
  • VMware vSphere — является закрытой разработкой компании Vmware. На данный момент в данной системе есть ограничение на количество узлов — 256. Также данная система строиться на базе ОС Windows — что не допустимо в связи с выбором базовой ОС — Linux. Также для управляющей ноды используется СУБД - Microsoft MSSQL, что также является не допустимым. В ходе проработки системы Кластеризации данная система не отвечает необходимым требованиям.
  • Microsoft Hyper-VM — является закрытой разработкой компании Microsoft. Не получила широкое распространение так как использует внутренние API ОС Windows — которые очень медленно работают по сравнению с остальными. Также есть ряд ограничений на подключение жестких дисков по протоколу Fiber Channel. Кластеризация системы Hyper-VM строится на основе NLB-кластера, который не позволяет строить системы высокой плотности и слабо взаимодействует с открытыми протоколами. В ходе дополнительных проработок и в будущих релизах систему Hyper-VM разработчики корпорации Microsoft обещают довести до приемлемого уровня использования в корпоративной среде. На данный момент система является не доработанной и поставляется с ОС Windows 2008 — что является недопустимым. Система Hyper-VM не отвечает необходимым требованиям.
  • Linux XEN — открытая система построения виртуальных машин. На данный момент является наиболее стабильным и проработанным решением сочетающим в себе гибкость и множество возможностей. Для организации системы Кластеризации используется система drbd с общим хранилищем и с репликацией данных между двумя серверами. Система XEN — является модификацией системного ядра ОС Linux, входит в множество систем и дистрибутивов. Поддержкой данной системы занимается множество крупных компаний Oracle, Novell, IBM — которые выпускают множество собственных дистрибутивов и программных оболочек для управления системами виртуальных машин.
  • Linux KVM — открытая система управления и создания виртуальных машин. Сейчас данная система находится в стадии активной разработки и широко поддерживается сообществом. Для организации системы виртуализации используется подсистема Quemu — является современной и передовой системой виртуализации. Также данную систему виртуализации активно поддерживает компания Red Hat, которая является крупным игроком на рынке свободного ПО и коммерческого Linux.
Так как в ОС Linux на данный момент существует две приемлемых системы кластеризации — Xen и Kvm. Было принято решение использовать дистрибутив CentOS (открытый Red Hat Linux Enterprise), который позволит использовать обе системы и в случае необходимости переходить на более востребованный продукт. Кроме того, данный дистрибутив сочетает в себе стабильность коммерческого дистрибутива и возможность использовать современные средства разработки и апробировать множество современных решений которые еще не включены в другие дистрибутивы.

Также плюсами открытых решений является то, что они не используют какие-либо СУБД для управления виртуальными машинами или для хранения какой-либо статистической информации, что является несомненным плюсом для открытых систем и минусом для коммерческих КВМ. Использование отдельных серверов СУБД вносит существенные ограничения для кластерных систем и создает дополнительную точку отказа.

Для организации системы КВМ использовались двуплатные сервера (Intel 3). Данные сервера консолидируют мощность двух серверов в одном системном юните. По мощности на юнит данные системы превосходят Блэйд-Центры и Блэйд-Фермы. Используя такие современные системы в ходе выполнения работ по модернизации хостинг-площадки, удалось достичь наиболее высоких результатов по энергосбережению и уменьшению использования системных помещений. Современные системы виртуализации превосходно работают только с системами процессоров Intel x86_64 и расширенными инструкциями Intel VT (набор инструкций для поддержки виртуальных сред). В рамках системы КВМ данная серверная система оказалась наиболее подходящей и отвечающей всем требованиям.

Для организации общей системы хранения файловых ресурсов виртуальных машин была использована система drbd (Distributed Replicated Block Device — Распределенное Реплицируемое Блочное устройство). Данная система репликации также использована для создания КБД (MySQL-кластера), и хорошо зарекомендовала себя. Используя данные системы и пытаясь достичь наибольшей унификации — упростили администрирование обоих систем КБД и КВМ. Так как используются одинаковые системы управления общими ресурсами — данный момент позволил сильно упростить администрирование и снизить расходы на первоначальную проработку и разворачивание проекта.

Хостинг-площадка
Для предоставления услуг по размещению сайтов кафедр, факультетов и подразделений МГТУ была создана хостинг-площадка. Хостинг-площадка является не менее инновационным аспектом данной системы и призвана обеспечить растущие потребности пользователей в следующих аспектах:
  • Размещение личных страниц
  • Размещение сайтов
  • Размещение личных файлов на сетевых ресурсах
  • Предоставление Персональных Виртуальных Машин (ПВМ)
  • Создание среды разработки для развития портала МГТУ
Для обеспечения всех этих потребностей при предварительной проработке было необходимо множество серверов и систем хранения. Как минимум было необходимо использовать по одному серверу для сайтов и для личных страниц. Также необходим был определенный объем дискового пространства для Виртуальных машин и необходимо было создать инфраструктуру для всего этого.

При предварительной проработке было найдено решение в виде среды виртуализации Vmware ESXi — данная среда обеспечивает весь комплекс паравиртуализации и поддерживает наиболее широкий спектр современных Операционных Систем. Для организации первого уровня виртуализации была выбрана система Vmware. Данный подход позволил создать несколько виртуальных машин и обеспечить поддержку всего спектра современных ОС.

Для организации Персональных Виртуальных машин была использована система виртуальных контейнеров OpenVZ — данная среда обеспечивает полную изоляцию систем на базе ОС Linux. Для организации второго уровня виртуализации была выбрана система контейнеров OpenVZ. Иными словами ОС Linux и система OpenVZ — была проинсталлирована внутри виртуальной машины Vmware.

Также несколько виртуальных контейнеров было использовано для разработки хостинг-площадки МГТУ. Для разработки каких-либо проектов данная система наиболее подходит и может быть используема в широком спектре своих задач. Так как основной ОС была выбрана Linux, то основным контейнером был выбран дистрибутив CentOS. Для организации управления системой OpenVZ была выбрана открытая система Vtonf — она обеспечивает наиболее широкое и качественное управление через web-интерфейс контейнерами виртуальных машин.

Для пользователей создан набор документов регламентирующий их поведение в рамках сервера Виртуальных Машин. На сегодняшний день персональными виртуальными машинами(ПВМ) пользуется более 48 подразделений и кафедр МГТУ. Данное количество неуклонно растет.

Для организации системы размещения сайтов и персональных страниц была создана собственная система по предоставлению места и разграничению прав пользователей данной системы. Входе проработки была выбрана система на базе ОС Linux и разделяемая структура с одним web-сервисом Apache и СУБД-сервисом MySQL. Для организации системы управления и разделения пользователей была создана собственная система. На данный момент она имеет упрощённое управление, но позволяет осуществлять весь спектр по разграничению прав и управлению пользователями. Также создана документация и регламентация пользователей в рамках сервера.
 
Защита данных
В ходе выполнения комплекса работ немаловажным аспектом была проработка защиты данных и невозможности несанкционированного доступа к ним. На каждом уровне модели OSI были организованны несколько уровней защиты. Сейчас данная структура является гетерогенной, что позволяет управлять ею из разных мест и отслеживать изменение в каждом блоке.

На уровне HTTP-запросов было осуществлено разделение фронтендов (КВМ), баз данных(КБД), и системных API-интерфейсов.

Для организации кэширующего прокси-сервера был использован web-сервер nginx. Данный сервер является открытой российской разработкой, которая была выполнена написан Игорем Сысоевым и отвечает современным представлениям в реализации распределенных систем. Также данный сервер обеспечивает быструю обработку коротких запросов. В основном данный web-сервер используют для следующих задач:
  • обслуживание статических запросов, индексных файлов
  • акселерированное проксирование без кэширования, простое распределение нагрузки и отказоустойчивость
  • поддержка кеширования при акселерированном проксировании
  • простое распределение нагрузки и отказоустойчивость
  • модульность, фильтры, в том числе сжатие
  • поддержка SSL
На уровне IP-соединений и портов на серверах был настроен сетевой брандмауэр — iptables. Гибкость и современность данного брандмауэра подтверждает использование его наработок в современных сетевых устройствах и отвечает современным требованиям по защите от сетевых атак различного рода. Данный модуль работает на уровне ядра ОС Linux и позволяет достичь очень высоких результатов в скорости срабатывания и по возможностям обработчика правил. Данный инструмент сертифицирован в ФСТЭК в составе дистрибутива RedHat Linux.

Для организации защиты серверов баз данных был проведен комплексное обновление всех версий СУБД до последних стабильных. Внутри системной таблицы СУБД были созданы пользователи лишь для работы приложений портала. При этом еженедельно проводится оценка на соответствие. Также система мониторинга позволяет отследить изменение системных таблиц и вовремя оповестить системного администратора о непреднамеренном доступе к СУБД.
 

Ваш браузер — Internet Explorer

К сожалению, этот браузер уже устарел: он уже не поддерживает новые веб-технологии и не соответствует современным веб-стандартам, поэтому некоторые элементы на странице могут отображаться некорректно. В этой связи, рекомендуется обновить Ваш браузер до последней версии или использовать альтернативные браузеры бесплатно, такие как Google Chrome, Mozilla Firefox, Yandex, Opera