- PVSM.RU - https://www.pvsm.ru -

Хранилища и высокая доступность в Windows Server 2012 R2

Всем привет, уважаемы коллеги и фанаты ИТ-технологий!

Сегодня мне хотелось бы рассказать вам про новинки которые у нас появятся в области управление дисковыми подсистемами и хранилищами данных в Windows Sever 2012 R2 [1]. Несмотря на то, что с выходом Windows Server 2012 улучшений, касающихся хранилищ данных и работы с дисковыми массивами и сетями SAN, было огромное множество, версия R2 также обладает внушительным списком нововведений, с одной стороны -так и эволюционными улучшениями функций, которые появились в выходом его предшественника.
Хранилища и высокая доступность в Windows Server 2012 R2

И так, давайте попробуем разобраться, что же у нас появилось принципиально нового в Windows Server 2012 R2, а что же продолжает стремительно развиваться в новой инкарнации нашего замечательного серверного продукта.

Хочу хранилку — большую, быструю, крутую… И совсем недорогую!

Как правило, такие вещи как высокопроизводительные дисковые хранилища и возможность плавного масштабирования системы на лету, ассоциируются, в первую очередь, с большими, дорогими «железками», которые имеют стоимость соизмеримую со стоимостью чугунного моста.
Но с другой стороны, далеко не каждая компания в состоянии позволить себе приобрести такую систему СХД, да и сеть SAN [2] построить — дело непростое и ресурсоемкое и дорогое, если быть откровенным.

Если же коротко сформулировать те, требования которые все хотят удовлетворить за минимум денег, то у нас с вами получится следующая картина:

Хранилища и высокая доступность в Windows Server 2012 R2
Рисунок 1. Особенности платформы хранилища данных на базе Windows Server 2012 R2

В левой части рисунка мы видим список челленджей, с которыми, как правило, сталкиваются компании когда речь заходит о внедрении систем хранения данных и дисковых хранилищ. На правой же части представлен список функций встроенных Windows Server 2012 R2, которые призваны разрешить эти моменты. Если быть детальным, то давайте разберем некоторые моменты, а точнее разберемся что же обычно требуется от современной высокопроизводительной «умной» системы хранения данных:

1) СХД должна быть устойчива к отказам компонентов, коими, как правило являются контроллеры дисковых массиов, дисковые полки, которые подключают непостредственно к контроллерам СХД, а также сами диски, точнее массивы и агрегаты которые образуют из дисков. Интерфейсы подключения, коими обычно выступают FC [3]-адаптеры или iSCSI [4]-адаптеры, также должны быть резервируемыми и сточки зрения доступа к дискам используют мультипоточность или же механизмы MPIO [5] (Multi-Path Input/Output). Также на практике используют CNA-адаптеры [6] (Converged Network Adapter — конвергентный сетевой адаптер) — новое веяние в области построения ЦОДов и сетей передачи данных, где адаптер используют среду Ethernet для передачи трафика как LAN, так и SAN-типа, и может быть динамически изменен тип, режим работы такого адаптера — с LAN [7] на SAN — и наоборот. Также для поддержки CNA-подхода был разработан стандарт DCB [8] (Data Center Bridging) для более удобного управления сетями передачи и данных и их конвергентсности — протокол DCB, кстати, поддерживается в Windows Server начиная с 2012 версии.

2) Современная СХД должна быть «умной», что в частности проявляется в наличии таких функций, как дедубликация данных [9], Thin Provisioning или т.н. «тонкое предоставление», «тонкая нарезка» [10] и виртуализация дисковой подсистемы [11]. Не лишним за частую оказывается и интеллектуальный тиринг (intellectual tiering) для распределения нагрузок по типам дисков.

3) Современной СХД неполохо было бы управлять каким-нибудь удобным инструментом, желательно встроенным в ОС. В реальной же жизни ИТ-среды состоят из гетерогенного окружения, что фактически говорит о том, что инфраструктурщики управляют различными моделями СХД от разных производителей, и исходя из этого факта, задача управления ими усложняется. Было бы неплохо использовать какие-либо нейтральные стандарты для управления. Примерами таких стандартов являются SMI-S [12] (Storage Management Initiative-Specification) или SMP.

Теперь давайте взглянем на эту картину с точки зрения возможностей Windows Server 2012 R2. Что касается поддержки мультипоточности для организации, по сути, кластеров хранилищ данных — то эта функция присутствует в Windows Server с незапамятных времен и реализуется она на уровне драйвера сетевого адаптера и функции ОС — с этим проблем нет. По конвергентность, поддержку CNA и DCB я уже сказал чуть ранее.
А вот если перейти ко второй части, то тут есть чем поживиться (то есть о чем рассказать — самйл).

И так, начнем с дедубликации данных. Впервые это функционал был представлен в Windows Server 2012 и работает дедубликация данных в WS2012/2012R2 на блочном уровне. Напомню, коллеги, что дедубликация может работать на 3-х уровнях, что определяет, с одной стороны, ее эффективность, а с другой — ресурсоемкость. Самая «лайтовая» версия — файловая дедубликация. Примерами файловой дедубликации можно назвать технологиюSIS [13] (Single Instance Storage, которая уже канула в лету). Как нетрудно догадатья — работает она на уровне файлов и заменяет полностью повторяющиеся файлы ссылками на расположение оригинального файла. Замена реальных данных на ссылки — это общий принцип работы дедубликации. Но вот, если мы внесем изменения в дедублицированный файл, то он уже станет уникальным — и в результате, «сожрет» реальное место — так что сценарий не самый привлекательный. Поэтому дедубликация на блочном уровне выглядит более привлекательным решением и даже в случае изменения оригинального файла, место съедят только изменившиеся блоки, а не блоки всего файла целиком. Именно таким образом работает дедубликация данных в WS2012/2012R2. ну и для полноты картину остается упомянуть, что существует также битовая дедубликация оперирует, как нетрудно догадаться из ее название, на уровне битов, имеет самый большой коэффициент дедубликации, НО при этом имеет просто адскую ресурсоемкость… Как правило, битовая дедубликация применяется в системах оптимизации трафика, которые используют в случае сценариев с участием территориально-распределенных организаций, где каналы связи между офисами организации либо очень дороги в эксплуатации, либо имеют очень низкую пропускную способность. По сути функция таких устройств заключается в кэшировании предаваемого трафика в устройстве и передачи только уникальных битов данных. Решения подобного класса могут быть как аппаратными, так и на базе виртуальных апплаинсов (виртуальных машин с программным комплексом, реализующих соответствующий функционал).

Все было бы просто замечательно с дедубликацией, но во одно маленькое но… Дедубликация в WS2012 не могла применяться к online-данным, т.е. тем которые, заняты каким либо процессом, находятся в использование, а значит использование дедубликации поверх ВМ становится невозможным, что убивало всю привлекательность данного подхода. Однако улучшения в WS2012R2 позволяет нам использовать дедубликацию поверх активных VHD/VHDX-файлов, а также является эффективной для VHD/VHDX-библиотек, общих ресурсов с дистрибутивами продуктов да и для файловых шар в общем. Ниже приведен рисунок показателями эффективности применения дедубликации для моего хоум-сервера с пачкой виртуалок и VHD/VHDX-дисков.

Хранилища и высокая доступность в Windows Server 2012 R2
Рисунок 2. Эффективность дедубликации в Windows Server 2012 R2

Если же мы говорим с вами про тонкое предоставление, тут тоже можно реализовать такой подход для ВМ. Сделать один прообраз, родительский диск — а от него уже делать разностные диски — тем самым мы сохраняем консистентность и единообразие виртуальной ОС внутри, а с другой — сокращаем место, занимаемое дисками ВМ. Единственный тонкий момент в таком сценарии — это размещение родительского виртуального жесткого диска на быстром накопителе — так как параллельный доступ к одному и тому же жесткому диску со множества различных ВМ приведет к повышенной нагрузки на данные сектора и блоки данных. Т.е. либо SSD — наш выбор, либо виртуализованное хранилище. Ну и интеллектуальный тиринг тут тоже пригодится.

Виртуализация… А какая она бывает?..

Однако обо всем пор порядку.
Давайте вернемся к вопросу виртуализации дисковой подсистемы.
Исторически сложилось так, что виртуализация дисковой подсистемы — это очень старая тема и история. Если мы вспомним, что виртализация — это абстракция от физического уровня, т.е. скрытие нижележащего уровня — то RAID [14]-контроллер на материнской плате таже выполняет фнкцию виртуализации храналища, а именно самих дисков.
Однако, в WS2012 появился механизм Storage Spaces — фактически аналог RAID-контроллера, но на уровне специального драйвера ввода-вывода данных ОС WS2012. Собственно, типы создаваемых логических агрегатов очень напоминают типы томов RAID: Simple (RAID 0), Mirror (RAID 1) и Parity (RAID 5). В ОС WS 2012 R2 к этому механизму добавился интеллектуальный тиринг хранилища. Иными словами теперь можно создавать агрегаты поверх различных типов дисков, SATA [15], SAS [16] и SSD [17], которые включены в один агрегат — а WS2012 R2 уже будет интеллектуально распределять нагрузки на сами диски, в зависимости от типов и интенсивности нагрузок.

Хранилища и высокая доступность в Windows Server 2012 R2
Рисунок 3. Включение функции интеллектуального тиринга при создании логического агрегата дисков с использованием Storage Spaces.

Надежность, надежность и еще раз надежность

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

С появлением WS 2012 у нас появилась возможность размещать нагрузки поверх файловых шар и файловой системы SMB 3.0 [18]. Ну и тут, конечно же, мы вспоминаем про дублирование компонентов нашего хранилища: сетевые адаптеры мы можем резервировать с использованием встроенного функционала NIC Teaming [19] или же агрегации интерфейсов передачи данных, а механизмы SMB Multichannel выполняют функцию MPIO, но на уровне обмена сообщениями SMB. От падения канала мы с вами защитились — не забудьте и коммутаторы задублировать только. Ну а сточки зрения непрерывности размещения ВМ и не только, но и файлов в целом — мы можем развернуть масштабируемый файл-сервер (Scale-Out File Server — SOFS) и разместить на нем критические данные, таким образом гарантируя не то, чтобы высокую доступность, но именно непрерывность доступа к данным. Добавьте к этому возможность WS 2012 R2 использовать файловую систему ReFS [20] для CSV-томов при создании кластера — и вот она, высокая надежность и исправление ошибок файловый системы практически на лету, без остановки работы! Остается добавить, что у ReFS были некоторые болячки в первой своей версии для WS2012, но теперь, она, естественно, поправилась и теперь является по-настоящему resilient-системой!

Возможность шифрование данных поверх SMB тоже является интересной фичей для тех, кто заботится о безопасном размещении данных и контроля доступа к ним.
Еще одной интересной фичей является возможность использования механизмов контроля пропускной способности и производительности дисковой подсистемы — Storage QoS [21]. Механизм интересный и важный — позволяет в дальнейшем использовать политики размещения нагрузок поверх хранилищ с использованием этого механизма, а также передавать эти данные в System Center Virtual Machine Manager 2012/2012 R2.

Ну и на последок, остается напомнить, что с точки зрения задачи управления, что Windows Server 2012 R2, что System Center 2012 R2 поддерживают различные нейтральные механизмы управления — SMI-S, SMP, WMI [22].

Хранилища и высокая доступность в Windows Server 2012 R2
Рисунок 5. Возможности по управлению хранилищами и их предоставления в System Center 2012 R2 — Virtual Machine Manager [23].

Is This the end?.. No — it is just the beginning!

Ну что же, мне остается только добавить, что пока что продукты категории R2 у нас доступны в предварительной версии для ознакомления и скачать их можно тут:

1) Windows Server 2012 R2 Preview — technet.microsoft.com/ru-RU/evalcenter/dn205286 [1]
2) System Center 2012 R2 Preview — technet.microsoft.com/ru-RU/evalcenter/dn205295 [23]

Надеюсь вам было полезно и интересно, до новых встреч и хороших всем выходных!

P.S> Забыл вам напомнить, что 10 сентября я и Александр Шаповал проведем для всех желающих бесплатный онлайн-семинар на тему новинок Windows Server 2012 R2 — присоединяйтесь — будет огненно! Регаемся тут: technet.microsoft.com/ru-ru/dn320171 [24]

С уважением и пламенным мотором в сердце,

Человек-огонь,
по совместительству,
Эксперт по информационной инфраструктуре
корпорации Microsoft

Георгий А. Гаджиев

Автор: GeorgyGadzhiev

Источник [25]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/windows/42189

Ссылки в тексте:

[1] Windows Sever 2012 R2: http://technet.microsoft.com/ru-RU/evalcenter/dn205286

[2] SAN: http://ru.wikipedia.org/wiki/SAN

[3] FC: http://ru.wikipedia.org/wiki/Fibre_Channel

[4] iSCSI: http://ru.wikipedia.org/wiki/ISCSI

[5] мультипоточность или же механизмы MPIO: http://ru.wikipedia.org/wiki/Multipath_I/O

[6] CNA-адаптеры: http://en.wikipedia.org/wiki/Converged_Network_Adapter

[7] LAN: http://ru.wikipedia.org/wiki/LAN

[8] DCB: http://en.wikipedia.org/wiki/Data_Center_Bridging

[9] дедубликация данных: http://en.wikipedia.org/wiki/Data_deduplication

[10] Thin Provisioning или т.н. «тонкое предоставление», «тонкая нарезка»: http://en.wikipedia.org/wiki/Thin_Provisioning

[11] виртуализация дисковой подсистемы: http://en.wikipedia.org/wiki/Storage_Virtualization

[12] SMI-S: http://en.wikipedia.org/wiki/SMI-S

[13] SIS: http://en.wikipedia.org/wiki/Single-instance_storage

[14] RAID: http://en.wikipedia.org/wiki/RAID

[15] SATA: http://en.wikipedia.org/wiki/SATA

[16] SAS: http://en.wikipedia.org/wiki/Serial_attached_SCSI

[17] SSD: http://en.wikipedia.org/wiki/SSD

[18] SMB 3.0: http://en.wikipedia.org/wiki/Server_Message_Block

[19] NIC Teaming: http://en.wikipedia.org/wiki/NIC_teaming

[20] файловую систему ReFS: http://en.wikipedia.org/wiki/ReFS

[21] Storage QoS: http://en.wikipedia.org/wiki/Storage_area_network#SAN_Storage_QoS_.28Quality_of_Service.29

[22] WMI: http://en.wikipedia.org/wiki/Windows_Management_Instrumentation

[23] System Center 2012 R2 — Virtual Machine Manager: http://technet.microsoft.com/ru-RU/evalcenter/dn205295

[24] technet.microsoft.com/ru-ru/dn320171: http://technet.microsoft.com/ru-ru/dn320171

[25] Источник: http://habrahabr.ru/post/191962/