Проблема хранения данных, и без того создающая массу головной боли архитекторам ЦОДов и системным администраторам, стала еще актуальнее в свете последних событий. В частности, к нам все чаще стали обращаться с запросами на различные форматы организации дополнительных хранилищ и расширения емкостей. Поэтому сегодня Юрий Алексеев, наш presale-эксперт по серверным решениям и системам хранения данных, расскажет о возможностях расширения уже существующего дискового пространства сервера с помощью подключения дисковых полок через DAS (то есть о прямом подключении). В посте мы поговорим о том, что для этого нужно, как это работает, и обсудим, может ли DAS заменить сетевые хранилища или системы высокой емкости.
Привет, меня зовут Юрий Алексеев, и я занимаюсь серверами и СХД в Группе компаний X-Com (а именно работаю с клиентами Системного Интегратора). И поэтому я прекрасно знаю, что иногда (и с завидной периодичностью) у любой компании настаёт момент, когда на дисках заканчивается пространство. При этом, если в самом сервере уже нет свободных отсеков для дисков, остается только добавить их извне. Тут можно использовать сетевое хранилище данных, но в последнее время их стало сложно (и дорого) купить, а в некоторых случаях, производители отказываются продлевать лицензии. Поэтому очевидным выбором становится самый простой с технической точки зрения способ расширения дискового пространства сервера – и это система хранения с прямым подключением (DAS = Direct-Attached Storage). Часто такие устройства также называют JBOD (англ. Just a Bunch Of Disks, просто пачка дисков).
Немного теории
Можно сказать, что система DAS – это внешняя дисковая корзина, которая подключена к серверу. Как правило, подключение производится через интерфейс SAS, с помощью соответствующих кабелей. Для этого требуется установить в сервер контроллер SAS (SAS HBA = SAS Host Bus Adapter) с внешними портами SAS или RAID-контроллер (также с внешними портами SAS).
В первом случае (при подключении дисковой корзины через SAS HBA) каждый установленный в корзину диск будет доступен пользователям сервера как отдельный диск. Во втором случае (при использовании RAID-контроллера) установленные в корзину физические диски можно будет объединить в один или несколько RAID-массивов.
А как же отказоустойчивость?
Конечно, к корпоративной системе хранения предъявляются высокие требования с точки зрения доступности информации и сохранности данных. И здесь, безусловно, RAID является большим плюсом. Разница с сетевой системой будет лишь в том, что массив будет организовывать сам сервер. Поэтому, если речь идет о хранении важных данных, лучше все-таки выбирать RAID-контроллеры, а не SAS HBA. Объединение дисков в RAID-массивы позволяет избежать потери данных при выходе дисков из строя, гарантируя как сохранность данных, так и постоянный доступ к ним.
Cуществует множество вариантов организации RAID-массивов (почитать об этом можно, например, тут). Но поскольку подобные критерии являются одними из самых критических показателей для любой системы хранения данных, необходимо исключить и другие точки отказа. Поэтому для обеспечения отказоустойчивости устройства DAS корпоративного уровня используют по два контроллера – такой подход позволяет также разобраться с проблемой возможного сбоя или отказа контроллера.
Благодаря этому доступ к данным сохраняется в случае выхода из строя одного из контроллеров. В таких системах можно устанавливать только диски SAS, так как они имеют два порта (в отличие от дисков SATA, которые имеют только один порт), каждый из которых подключен к одному из контроллеров дисковой корзины. В случае поломки одного из контроллеров хост (т.е. сервер) сохранит доступ к диску через второй контроллер.
DAS – но не для одного сервера
Большинство моделей DAS поддерживает подключение только к одному серверу (хосту). Для подключения используются двухпортовые SAS HBA (или RAID-контроллеры) -- чтобы каждый контроллер имел соединение с хостом.
Однако модели некоторых производителей могут работать одновременно с двумя и даже более серверами. Например, к системе Lenovo D1224 может быть подключено одновременно до 6 серверов. В результате мы получаем некоторое подобие сетевого хранилища, но гораздо более простого (и доступного).
Но тут есть нюанс – лишних «мозгов» у хранилища нет, и поэтому каждому серверу нужно выделить свою группу дисков. Например, одному серверу – диски в отсеках с четвёртого по седьмой, другому серверу – с восьмого по одиннадцатый, и т.д. Это называется «зонированием» (zoning). Работать с «чужими» дисками сервер не должен.
Это требование вытекает из того, что организация данных на диске определяется хостом (то есть RAID-контроллером и файловой системой сервера-хоста), в случае использования одного диска двумя серверами одновременно любой из серверов может:
Неправильно интерпретировать данные диска при чтении, записанные на диск другим сервером;
Записать свои данные «поверх» данных другого сервера.
Именно поэтому при подключении нескольких хостов к DAS требуется с при помощи зонирования разделять диски между серверами.
Например, ниже в таблице показана возможная схема разделения дисков между хостами (зонирования) при подключении до 6 хостов к DAS Lenovo D1224 (хранилище вмещает 24 диска, нумерация отсеков начинается с 0).
|
Максимальное количество серверов (хостов) |
Номер зоны |
Номера дисковых отеков |
Режим 1 |
2 |
1 |
0-11 |
2 |
12-23 |
||
Режим 2 |
3 |
1 |
0-7 |
2 |
8-15 |
||
3 |
16-23 |
||
Режим 3 |
3 |
1 |
0-7 |
2 |
8-15 |
||
3 |
16-23 |
||
Режим 4 |
4 |
1 |
0-5 |
2 |
6-11 |
||
3 |
12-17 |
||
4 |
18-23 |
||
Режим 5 |
6 |
1 |
0-3 |
2 |
4-7 |
||
3 |
8-11 |
||
4 |
12-15 |
||
5 |
16-19 |
||
6 |
20-23 |
Примечание: режимы 1, 2 используются при подключении обычными кабелями. Режимы 3,4,5 – только при подключении хостов Y-кабелями (так называемая "гидра").
На рисунке ниже приводится схема подключения нескольких серверов к одной СХД на примере всё того же хранилища Lenovo D1224. Для подключения используются Y-кабели SAS 12Gb, раздвоенные с одного конца («гидра»).
Впрочем, стоит учитывать, что возможность подключения нескольких хостов не является стандартной функцией систем DAS. И если вам действительно требуется такая возможность, нужно проверить, сможет ли новая «дисковая полка» обслужить ваши запросы, прежде чем ее покупать.
Больше дисков, больше DASов
Чаще всего можно встретить системы DAS в форм-факторе 2U в двух вариантах: с возможностью установки 12 дисков 3.5” или 24 дисков 2.5”. Иногда встречаются варианты в других форм-факторах, например, на 60 и более дисков 3.5”.
На фото: Lenovo D3284
2 контроллера SAS 12Gb
установка 84 дисков 3.5"
поддержка подключения до 6 хостов
высота в стойке 4U
На фото: DAS Supermicro SuperChassis 946ED-R2KJBOD
2 контроллера SAS 12Gb
установка 90 дисков SAS 3.5"
поддержка подключения до 4 хостов
высота в стойке 4U
При необходимости увеличения объёма дискового пространства можно подключить нескольких систем DAS к одному серверу.
Для каждой DAS в таком случае потребуется свой SAS HBA или RAID-контроллер. Кроме того, каждая DAS потребует собственного управления и администрирования. А это значит, что сложность системы кратно повышается и потребует более пристального внимания со стороны администратора.
Поэтому, если скорость передачи данных не является абсолютным приоритетом, более предпочтительным является подключение нескольких полок расширения последовательно – одна за одной. Количество устройств DAS, подключенных таким образом, определяется максимальным количеством дисков, которое поддерживает конкретная модель DAS. На рисунке ниже показано последовательное подключение к серверу нескольких полок Lenovo D1224.
Тут тоже есть нюансы. Для каждой модели максимальное количество полок расширения может быть разным; это количество указывается в документации на систему.
При последовательном подключении все системы должны быть одинаковыми или одного семейства. Например, для DAS Lenovo D3284 могут быть такие конфигурации:
четыре D3284;
две D3284 + две DAS Lenovo D1212 (по 12 дисков 3.5”);
две D3284 + одна DAS Lenovo D1224 (24 диска 2.5”).
Последовательное подключение разных систем DAS не допускается. Разные системы могут быть подключены только параллельно: каждая система DAS должна быть подключена к серверу (хосту) через свой собственный SAS HBA или RAID-контроллер.
DAS – одна из очень привлекательных альтернатив
Учитывая текущую ситуацию на рынке, мы все чаще рекомендуем клиентам дисковые полки с прямым подключением DAS. Для их установки достаточно установить в сервер RAID-контроллер с внешними портами SAS (а иногда он уже есть внутри). И если вам потребуется большой объем дискового пространства, например, для систем видеонаблюдения, создания хранилищ данных, работы с BigData и так далее, несколько полок можно подключить последовательно или параллельно. Отличная замена емким и дорогим хранилищам. А благодаря тому, что к некоторым системам DAS можно подключать нескольких серверов одновременно, возникает альтернатива для сетевого хранения. Благо, контроллеры и системы DAS достать сегодня намного проще.
Комментарии (9)
chersun
13.07.2022 10:54+2система хранения с прямым подключением (DAS = Direct-Attached Storage).
Часто такие устройства также называют JBOD (англ. Just a Bunch Of Disks,
просто пачка дисков).Автор, DAS !=JBOD. DAS - это способ подключения. JBOD - тип "головы", точнее скорее её отсутствие. Не стоит смешивать эти понятия. Есть вполне себе настоящие блочные СХД - DAS. С тиерингом и много чем ещё.
AlekseevXcom Автор
13.07.2022 16:03Спасибо за это уточнение, совершенно согласен:
1) JBOD – тип устройства, DAS – способ подключения;
2) в качестве DAS-устройств могут выступать «полноценные» СХД
С моей стороны правильнее было бы написать, что «в качестве DAS-устройств часто используют дисковые полки JBOD». Моя неточность связана с тем, что многие производители для случаев прямого подключения (DAS) указывают в своих продуктовых линейках в первую очередь JBOD-устройства.
sergei0
13.07.2022 16:00Извините за офтопик, подскажите фильм, кадр из которого используется как картинка для привлечения внимания.
artemlight
Вообще есть решения, которые позволяют использовать DAS одновременно несколькими серверами - например, cluster shared volume в Windows. Но будем честны - такая технология накладывает множество ограничений и в итоге обходится дороже.
Навскидку могу такие аргументы привести
1) что там с writeback кешированием? Для БД это очень актуально.
2) Оно не умеет снапшоты - ну ок, мы этого и не ждем допустим.
3) А вот отсутствие тайринга нам точно влетит в копеечку, особенно для бд опять же.
Ну и по сути важно понимать, что это тупо внешний SAS энкложур, т.е. функционала у него ровно столько же, сколько у всунутой в сервер SAS HBA\RC\смешная третья опция. Так что это не столько замена взрослым полкам, сколько вариант дешево вопхнуть ещё дисков в узкие 1U\2U сервера.
Персонально я такие штуки использую для видеонаблюдения. 2U на 12 дисков 3.5 стоила 3 копейки, а вмещала в себя 100+тб сырого хранилища с крайне неспешным рандомным доступом. Но вот попытки построить кластер на такой штуке обречены на провал, т.к. таких хранилок нужно столько же, сколько нод у вас в кластере (ну или зоны настраивать).
Sergey-S-Kovalev
Такие штуки предназначены только для последовательной записи и чтения, как следствие это кейсы хранения видео / бэкапов / снимков / сырых даных / архивов. Везде где требуется много места, а читаемые данные почти наверняка лежат последовательно и к ним не слишком часто обращаются.
Говорить о кейсах использования характерных для СХД тут бессмысленно, это разные системы заточенные совершенно под разные вещи.
mvv-rus
Вы просто не рассмотрели все варианты решения совместного использования хранилища несколькимим серверами, а ограничились кластерной файловой системой.
Однако, есть и ещё один вариант: построение общего пула дисков на основе DASD, подключенных к одному из нескольких серверов и создание на базе этого пула логических томов разной степени отказоустойчивости, с многоярусным (multi-tier) харением и пр. В Windows Server для этого существует технология Storage Spaces Direct Эта технология — часть того, что называется маркетинговым словом HyperConvergence, которое AFAIK до сих пор в моде.
Там упомянутых вами ограничений нет, но это весьма недешево — только самая дорогая редакция Windows Server, нехилые требования к сетевому оборудованию. И к серверам — тоже.
Функционала особого у JBOD-полок нет, но это не их проблемы: функционал, аналогичный СХД, обеспечивает ОС сервера. А вот начет цены — откровенно не в курсе.
artemlight
S2D требует подключения дисков индивидуально к каждому серверу. Подключить энкложур к кластеру S2D не выйдет.
https://docs.microsoft.com/en-us/azure-stack/hci/concepts/system-requirements
NOT SUPPORTED: RAID controller cards or SAN (Fibre Channel, iSCSI, FCoE) storage, shared SAS enclosures connected to multiple servers, or any form of multi-path IO (MPIO) where drives are accessible by multiple paths. Host-bus adapter (HBA) cards must implement simple pass-through mode for any storage devices used for Storage Spaces Direct.
artemlight
и не может ОС сервера повторить функционал СХД. Причин много, но одна из самых базовых - невозможность реализации надежного writeback cache софтовым путём (при сбое питания любой writeback модуль должен сохранять состояние и дописывать его на диски в момент повторной инициализации), а ОС тупо не располагает такими ресурсами. Использование SSD в режиме writeback-контроллера возможно, но ресурс выжирает нещадно.