Sas defense max что это
В чём понт SAS?
В чём смысл параллельного существования и развития отдельного стандарта SAS когда SATA развивается и черпает вдохновение из того же SCSI и почему SAS/SCSI-винчи имеют другие ёмкости (причём загадочной кратности) и, обычно, более высокие обороты (в то время как на ограничение пропускной способности при существовании SATA 3 это вроде как не свалить)? В каких случаях кроме брутального high-load, хостинга множества виртуалок и многопотокового видеовещания действительно имеет смысл ставить SAS и почему?
Извините если глупый вопрос. Заранее спасибо. Интересно.
Ох, сигейта нет на вас ;). Я видел отличную презентацию про отличия SAS и SATA у Игоря Макарова из Seagate. По стараюсь кратко и по существу.
Ответов несколько и с разных сторон.
1. С точки зрения протоколов, SAS — это протокол, направленный на максимальную гибкость, надежность, функциональность. Я бы сравнил SAS с технологией ECC для памяти. SAS — это с ECC, SATA — без. Примером могут служить следующие уникальные фичи (по сравнению с SATA).
— 2 полнодуплексных порта на устройствах SAS в отличие от одного полудуплексного у SATA. Это дает возможность строить отказоустойчивые много дисковые топологии в системах хранения данных.
— end-to-end data protection T.10. — набор алгоритмов SAS, позволяющий с помощью чексумм быть уверенным в том, что данные, подготовленные на запись без искажений записаны на устройство. И прочитаны и переданы на хост без ошибок. Эта уникальная функция позволяет избавиться от так называемых silent errors, то есть когда на диск пишутся ошибочные данные, но никто об этом не знает. Ошибки могут появиться на любом уровне. Чаще всего в буферах в оперативной памяти при приеме-передаче. Silent errors — бич SATA. Некоторые компании утверждают что на диске SATA объемом боле 500 ГБ вероятность повреждения данных хотя бы в одном секторе близка к единице.
— про мультипасинг говорили в предыдущих ответах.
— зонинг T.10 — позволяет разбить домен SAS на зоны (типа VLAN, если такая аналогия ближе).
— и многое-многое другое. Я привел только самые общеизвестные фичи. Кому интересно — читайте спецификации SAS/SATA
2. Не все SAS диски одинаковы. Есть несколько категорий SAS и SATA.
— т.н. Enterprise SAS — обычно 10K или 15K оборотов в минуту. Объемы до 1 ТБ. Используются для СУБД и критичных к скорости приложений.
— Nearline SAS — обычно 7.2K, объемы от 1 ТБ. Механика таких устройств похожа на Enterprise SATA. Но все равно два порта и другие прелести SAS. Используются в enterprise, где нужны большие объемы.
— Enterprise SATA, иногда RAID edition SATA — почти то же самое что и NL SAS, только однопортовый SATA. Чуть дешевле NL SAS. Объемы от 1 TB
— Desktop SATA — то что ставится в PC. Самые дешевые и самые низкокачественные диски.
Первые три категории можно ставить в массивы на контроллерах от LSI и Adaptec. Последний — нельзя категорически. Проблем не оберетесь потом. И не потому, что у нас картельный сговор, а потому, что диски проектируются под разные задачи. То есть 8×5 или 24×7, например. Есть также такое понятие как максимальная допустимая задержка, после которой контроллер считает диск умершим. Для десктопных дисков она в разы больше. Это значит, что под нагрузкой рабочие Desktop SATA будут «вываливаться» из массива.
Короче, ориентируйтесь на конкретные линейки под конкретные задачи. Лучше всего смотреть на сайтах производителей. Есть например специальные мало шумящие и мало греющиеся винты для домашней электроники.
Те же подходы и к SSD, но область еще на сформировавшаяся, поэтому много тонкостей. Здесь мы ориентируемся по параметрам. Хотя все, что сказано в п., справедливо и для SSD.
Лучший SSD для сервера
Во времена господства жёстких дисков при выборе нового накопителя достаточно было определиться с ёмкостью, скоростью вращения шпинделя и производителем. С SSD всё намного сложнее, тем более если он будет использоваться в сервере для обработки важных данных. Неправильно подобранный интерфейс может стать узким местом всей системы, ограничивая производительность ваших приложений. А у модели со скромным ресурсом записи есть риск выхода из строя буквально за пару месяцев активной эксплуатации. Чтобы сэкономить вам время, мы изучили предложения на рынке и собрали лучшие серверные SSD. Вы также узнаете, на какие характеристики накопителей стоит обращать внимание в первую очередь.
Лучшие SSD для сервера:
Samsung 983 DCT
Быстрый SSD по разумной цене
Корпоративный NVMe-накопитель начального уровня стоит не намного дороже SATA-моделей и при этом обеспечивает существенный прирост производительности. Samsung 983 DCT оптимизирован для чтения и смешанных нагрузок. В последнее время в продаже чаще встречается OEM-версия Samsung PM983.
Micron 9300 Max
Максимум производительности и большой объём
Intel D3-S4610
Экономичный SSD с большим ресурсом записи
Intel D3-S4610 имеет типичную для SATA SSD скорость, зато пользователи могут рассчитывать на долгий срок службы. Даже младшая модель на 240 ГБ способна записать более полутора петабайтов информации за весь свой жизненный цикл. Накопители серии также отличаются низким энергопотреблением.
Kingston DC500R
Доступный серверный SSD с SATA-интерфейсом
Kingston DC500R подойдёт для сценариев, где преобладают операции чтения. Накопитель имеет защиту по питанию и поддерживает аппаратное шифрование. SSD не перегревается при длительных рабочих нагрузках, показывая стабильные скоростные характеристики.
Intel Optane SSD 905P
Производительный и долговечный накопитель с памятью 3D XPoint
Накопители Optane сильны в операциях случайного чтения и записи. Они существенно дороже «классических» SSD, но имеют ещё один козырь — огромнейший ресурс работы. Использование Intel Optane 905P оправдано там, где важны низкие задержки.
Seagate Nytro 3731
Надёжный SSD для масштабируемых сред
Накопители с SAS-интерфейсом продолжают использовать в многодисковых системах, где нужна высокая производительность и надежность хранения. Seagate Nytro 3731 соответствуют обоим требованиям: накопители развивают скорость до 2.2 ГБ/с и способны выдержать 10 циклов перезаписи в день.
Samsung 983 DCT
Благодаря высоким показателям производительности NVMe SSD-накопители постепенно вытесняют другие носители в серверном сегменте, к тому же Samsung 983 DCT обойдётся не намного дороже SATA-аналогов. Производителем заявлена скорость последовательного чтения до 3 ГБ/с и 1.9 ГБ/с для записи, стоит также отметить низкие задержки записи. Для SSD допускается ежедневная перезапись 0.8 объёма. Твердотельный накопитель выпускается в версиях на 960 ГБ и 1.9 ТБ, но в продаже также встречается OEM-версия Samsung PM983 ёмкостью до 7.68 ТБ. Она имеет такие же скоростные характеристики, но поставляется с трёхлетней гарантией против 5 лет у 983 DCT (соответственно, при одинаковом ресурсе показатель DWPD равен 1.3). Фирменная утилита Samsung SSD DC Toolkit позволяет управлять работой SSD из командной строки.
2 причины купить:
1 причина не покупать:
Micron 9300 Max
Семейство Micron 9300 представлено двумя моделями Pro и Max, основанными на одном и том же аппаратном обеспечении. Отличие заключается в расширенной резервной области памяти в Max-версии, что позволило добиться более высокой скорости случайной записи. На низкой глубине очереди накопитель немного уступает решениям с памятью 3D XPoint, но, по начиная с QD4, обеспечивает уже сопоставимую производительность, а затем и обходит своих конкурентов. При последовательном чтении и записи скорость может достигать 3500 МБ/с, что близко к пределу интерфейса PCIe 3.0 x4. В наличии полный набор корпоративных функций. Помимо аппаратного шифрования и защиты от потери питания поддерживается пространство имён (NVMe Namespaces). SSD можно разделить на несколько логических блоков, которые будут видны как отдельные устройства. Накопители большой ёмкости рассчитаны на запись от 18.6 до 74.7 петабайт данных.
4 причины купить:
1 причина не покупать:
Intel D3-S4610
В силу используемого интерфейса серия Intel D3-S4610 не ставит рекордов быстродействия. Зато накопители можно полностью перезаписывать по три раза в день на протяжении всего гарантийного срока (5 лет). Ресурс заявлен даже с запасом: модель на 480 ГБ способна записать 3 петабайта данных за время использования, что эквивалентно 3.42 DWPD. Такие SSD подойдут для установки в сервер баз данных. Устройства в металлическом корпусе не сильно нагреваются под нагрузкой и экономичны в плане энергопотребления. Чтобы работа S4610 была максимально беспроблемной, рекомендуется обновить прошивку накопителя до актуальной версии. Это можно сделать в том числе при помощи фирменной утилиты Intel Memory and Storage Tool.
3 причины купить:
1 причина не покупать:
Kingston DC500R
Как подсказывает «R» в названии, Kingston DC500R создан для приложений с ориентацией на чтение. Это самая доступная модель в линейке, которую оснастили конденсаторами для защиты от непредвиденного отключения питания. Это снижает риски потери данных в непредвиденных ситуациях. Использование SATA-интерфейса ограничивает максимальную скорость чтения и записи, но по крайней мере DC500R поддерживает постоянную скорость записи на всём объёме памяти. Металлический корпус обеспечивает хороший теплоотвод. Утилита Kingston SSD Manager позволяет не только следить за «здоровьем» накопителя, но и настраивать размер резервной области. Немного уменьшив доступное пространство, в результате можно повысить производительность и увеличить ресурс. Тем не менее, для серверов с большей активностью записи лучше выбрать старшую модель серии Kingston DC500M с более высоким ресурсом перезаписи 1.3 DWPD.
3 причины купить:
1 причина не покупать:
Intel Optane SSD 905P
Intel Optane SSD с технологией 3D XPoint обладают исключительной выносливостью. В течение всего срока службы накопители способны записать десятки петабайт данных. Для сравнения, у «обычных» SSD сопоставимой ёмкости ресурс измеряется в терабайтах. Устройства Optane отлично показывают себя в сценариях произвольного доступа, выдавая до 575000/550000 IOPS при случайном чтении/записи. Intel Optane SSD 905P обеспечивают высокие показатели качества обслуживания и остаются отзывчивыми на длинных очередях. Серия состоит из накопителей трёх форм-факторов: Add-in Card, U.2 и M.2 (последний редко встречается в продаже). У компании также есть отдельная линейка накопителей Optane для центров обработки данных. Они предлагают ещё более высокие показатели DWPD и улучшенную защиту по питанию, но обойдутся существенно дороже.
3 причины купить:
1 причина не покупать:
Seagate Nytro 3731
Несмотря на растущую популярность NVMe SSD, накопители с SAS-интерфейсом пока рано списывать со счетов. Seagate Nytro 3531 разработаны для требовательных корпоративных приложений. SSD высокой ёмкости поддерживают двухпортовое подключение, что позволяет считывать данные при 2200 МБ/с и записывать при 1550 МБ/с («всего» 1000 МБ/с в случае базовой версии на 400 ГБ). Топовая модель серии способна выдержать ежедневную десятикратную перезапись полной ёмкости. Накопитель подойдёт для сложных рабочих нагрузок с высокой интенсивностью записи, таких как системы оперативной обработки транзакций (OLTP), почтовые сервисы и виртуальные серверы для разработки.
2 причины купить:
1 причина не покупать:
Как выбрать SSD для сервера
Выше мы уже упоминали интерфейсы, показателях выносливости и производительности в разных сценариях. Теперь поговорим обо всём об этом подробнее. При выборе SSD для сервера стоит учитывать следующие факторы:
Форм фактор
Сами чипы флеш-памяти занимают не так много места, что позволяет выпускать SSD разных форм и размеров в зависимости от потребностей пользователя. Форм-фактор определяет форму и размеры накопителя, а наиболее распространёнными являются:
2.5″. Также известен как Small Form Factor (SFF) и U.2 (хотя на самом деле это название разъёма). Все 2.5-дюймовые накопители имеют стандартную длину и ширину. Высота колеблется в пределах от 7 до 15 мм.
Add-in card (AIC). SSD в виде платы расширения устанавливаются непосредственно в слот PCI Express на материнской плате. Чаще выпускаются в типоразмере HHHL (half height, half length) половинной высоты и ширины. Данный тип подключения позволяет задействовать больше PCIe-линий, а сами размеры AIC позволяют реализовать эффективное охлаждение. Всё это увеличивает максимально возможную производительность, но возможность горячей замены накопителя не предусмотрена.
M.2 — популярный форм-фактор SSD для ноутбуков также используется и в серверном оборудовании. Ограничением может стать количество разъёмов, обычно на плате доступны один-два слота. Стандартные размеры M.2-накопители — это 22 мм в ширину и до 110 мм в длину.
Интерфейс
Интерфейс определяет, каким образом SSD взаимодействует с систему. Накопители разных форм-факторов могут использовать один и тот же интерфейс. Если мы говорим о серверах, обычно речь идёт о:
SATA. Используется в качестве интерфейса недорогих SSD. Скорость передачи данных у SATA-накопителей не превышает 600 МБ/с при последовательных операциях, и именно интерфейс выступает главным ограничителем производительности. Такие устройства не подходят для приложений, требовательных к скорости отклика.
SAS — устоявшийся стандарт корпоративных систем хранения. Интерфейс получил популярность благодаря масштабируемости и более высокой пропускной способности за счёт одновременной передачи сигнала в двух направлениях. SAS 12 Гбит/с обеспечивает свыше 1 ГБ/с на каждом из двух портов. Возможно одновременное подключение дискового массива к двум серверам (если какой-то из них выйдет из строя, доступ к информации сохранится). Но для SAS-дисков нужен контроллер RAID или HBA (Host Bus Adapter).
В случае с NVMe-интерфейсом твердотельные накопители подключаются в шину PCIe, которая соединена с процессором напрямую или через чипсет. В результате существенно уменьшаются задержки, а скорость передачи данных упирается в быстродействие самой памяти.
При выборе NVMe SSD необходимо учитывать поддерживаемую версию стандарта PCI Express. PCIe 3.0 обеспечивает до 1 ГБ/с на линию (4 ГБ/с для «x4 Gen 3» слота). Новое поколение PCIe 4.0 удваивает эту скорость.
Типы флеш-памяти
SSD записывают информацию на чипы флеш-памяти, также известной как NAND. Когда только появились твердотельные накопители, в каждой ячейке мог храниться только один бит (0 или 1). Память SLC (Single-Level Cell) обеспечивала высокую скорость передачи данных, но низкая плотность информации и дорогое производство дали толчок развитию других технологий. Сегодня специальные алгоритмы позволяют различать разные уровни заряда ячейки, которые будут соответствовать определённой последовательности битов. Обратной стороной такого подхода является снижение долговечности. У каждой ячейки есть свой ресурс работы, но чем больше бит информации в ней хранится, тем чаще её будут перезаписывать.
В современных SSD можно встретить следующие типы памяти:
MLC (Multi-Layer Cell). Каждая ячейка хранит два бита информации. Преимуществами MLC памяти стала высокая скорость и надёжность, но применяется она всё реже из-за высокой стоимости.
TLC (Triple-Level Cell) — самый широко используемый тип. По сравнению с MLC скорость записи будет ниже, ресурс работы также уменьшился. TLC-память дешевле в производстве, что позволило сделать SSD более доступными.
QLC (Quad-Level Cell) появилась относительно недавно. Из-за сравнительно невысокой износостойкости QLC-память применяется в основном в потребительских SSD, хотя уже появляются недорогие серверные модели.
В накопителях на базе TLC и QLC применяется технология SLC-кэширования, когда часть ячеек переводится в однобитный режим работы на высокой скорости. После заполнения кэша скорость записи может уменьшиться в несколько раз. Впрочем, в серверных моделях часто обходится без «псевдо-SLC».
Отдельно стоят накопители Intel Optane с памятью 3D XPoint. Она использует перекрёстную структуру с возможностью адресации отдельных ячеек, в которых в свою очередь хранится только один бит данных. Главные преимущества технологии — отличная выносливость и высокая скорость как в последовательных, так и в случайных операциях. Правда, цена тоже немаленькая. Выпуск 3D XPoint обходится в несколько раз дороже производства NAND.
Производительность
При выборе SSD для сервера необходимо учитывать следующие параметры:
IOPS – число операций ввода-вывода (I/O), которые SSD способен обработать за одну секунду. Значение указывается в привязке к размеру блока данных (например, 4 КБ) и измеряется отдельно для операций чтения и записи. Производители накопителей корпоративного класса иногда приводят IOPS при смешанной нагрузке чтение/запись в соотношении 70/30 процентов.
Пропускная способность. Показывает объём данных, передаваемых за единицу времени при последовательном чтении и записи информации на SSD. Указывается в мегабайтах в секунду (МБ/с) или гигабайтах в секунду (ГБ/с).
Задержка — отрезок времени от отправки запроса приложением и до получения ответа. Она измеряется в микросекундах. При увеличении глубины очереди (количества одновременных запросов на чтение или запись) задержка также растёт.
Качество обслуживания (QoS) отражает постоянство задержки. Для серверных моделей SSD приводятся значения задержки в соотвествии с заданным уровнем обслуживания (99.9%, 99.99% или 99,999% — по количеству операций ввода/вывода, выполняемых за указанное время). Таким образом производительность SSD становится более предсказуемой.
Выносливость и защита по питанию
Срок службы накопителя можно оценить по стойкости к суточной перезаписи Drive Writes per Day (DWPD). Вторая полезная метрика — Total Bytes Written (TBW). Это прогнозируемый объём записанных данных до выхода накопителя из строя. Первый показатель можно рассчитать из второго. Или наоборот:
TBW = DWPD * Количество лет гарантии * 365 * Ёмкость в ТБ
Вполне может оказаться, что накопитель большой ёмкости с более низким DWPD способен записать больше данных. Продлить жизнь накопителю можно за счёт увеличения резервной области памяти — так у него будет больше запасных ячеек на замену изношенным. В любом случае, у обычного потребительского SSD и рейтинг выносливости относительно небольшой. В серверах стоит использовать накопители корпоративного класса.
Ещё одно преимущество специализированных SSD — защита от сбоев питания. Для этого на плате устанавливаются дополнительные конденсаторы, заряда в которых достаточно для проведения всех незаконченных операций записи.
Примечательно, что у потребительской серии Intel Optane 905P нет конденсаторов. Мы добавили их в топ, потому как накопители нового поколения не используют DRAM-кеширование. Подтверждение записи отправляется тогда, когда информация уже в памяти, и риск потери данных в любом случае невысок. Хотя если бюджет позволяет, для большей надёжности стоит выбирать модели Optane для дата-центров — они поддерживают технологию Enhanced Power Loss Data Protection с проверками целостности данных.
Ответы на популярные вопросы
SSD или HDD для сервера — что выбрать?
SSD лучше всего подходят для сценариев, где требуется высокая скорость обмена данными. При последовательной записи на Samsung 983 DCT скорость может достигать 1900 МБ/с. У Micron 9300 Max этот показатель почти в два раза выше, а у HDD — всего несколько сотен мегабайт в секунду. Твердотельные накопители более устойчивы к ударам и вибрациям, а также имеют более широкий рабочий диапазон температур. В свою очередь, жёсткие диски дешевле и могут успешно использоваться в качестве носителей архивных данных. При объединении нескольких HDD в RAID-массив также можно добиться неплохой производительности.
От чего будет зависеть скорость SSD?
Прежде всего от используемого интерфейса. У SATA-накопителя Kingston DC500R она ограничена 550 МБ/с, модели с SAS-интерфейсом могут работать в несколько раз быстрее. Лидерами по быстродействию остаются NVMe-диски, такие как Micron 9300 Max, но чтобы раскрыть их потенциал, нужны нагрузки с высокой глубиной очереди.
В операциях случайного доступа скорость будет всегда ниже, чем при последовательном чтении и записи. Кроме того, производительность снижается при заполнении SSD.
Сколько прослужит серверный SSD?
От сбоев и поломок никто не застрахован, но примерно оценить срок жизни накопителя можно по показателям выносливости. Производители обычно указывают общий объём данных, которые можно записать на SSD до его выхода из строя, и количество циклов полной перезаписи накопителя в день на протяжении гарантийного срока. Одни из самых выносливых носителей выпускает Intel в линейке Optane.
Интерфейс SAS: история, примеры организации хранения
В прошлый раз мы с вами рассмотрели все, что касается технологии SCSI в историческом контексте: кем она была изобретена, как развивалась, какие у нее есть разновидности и так далее. Закончили мы на том, что наиболее современным и актуальным стандартом является Serial Attached SCSI, он появился относительно недавно, но получил быстрое развитие. Первую реализацию «в кремнии» показала компания LSI в январе 2004 года, а в ноябре того же года SAS вошел в топ самых популярных запросов сайта storagesearch.com.
Начнем с основ. Как же работают устройства на технологи SCSI? В стандарте SCSI все построено на концепции клиент/сервер.
Клиент, называемый инициатором (англ. initiator), отправляет разные команды и дожидается их результатов. Чаще всего, разумеется, в роли клиента выступает SAS контроллер. Сегодня SAS контроллеры — это HBA и RAID-контроллеры, а также контроллеры СХД, стоящие внутри внешних систем хранения данных.
Сервер называется целевым устройством (англ. target), его задача — принять запрос инициатора, обработать его и вернуть данные или подтверждение выполнения команды обратно. В роли целевого устройства может выступать и отдельный диск, и целый дисковый массив. В этом случае SAS HBA внутри дискового массива (так называемая внешняя система хранения данных), предназначенный для подключения к нему серверов, работает в режиме Target. Каждому целевому устройству (“таргету”) присваивается отдельный идентификатор SCSI Target ID.
Для связи клиентов с сервером используется подсистема доставки данных (англ. Service Delivery Subsystem), в большинстве случаев, это хитрое название скрывает за собой просто кабели. Кабели бывают как для внешних подключений, так и для подключений внутри серверов. Кабели меняются от поколения к поколению SAS. На сегодня имеется три поколения SAS:
— SAS-1 или 3Gbit SAS
— SAS-2 или 6Gbit SAS
— SAS-3 или 12 Gbit SAS – готовится к выходу в середине 2013 года
Внутренние и внешние кабели SAS
Иногда в состав этой подсистемы могут входить расширители или экспандеры SAS. Под экспандерами (англ. Expanders, расширители, но в русском языке прижилось слово «экспандер») понимают устройства, помогающие доставке информации от инициаторов к целям и обратно, но прозрачные для целевых устройств. Одним из самых типичных примеров является экспандер, позволяющий подключить несколько целевых устройств к одному порту инициатора, например, микросхема экспандера в дисковой полке или на бэкплейне сервера. Благодаря такой организации, серверы могут иметь более 8 дисков (контроллеры, которые сегодня используются ведущими производителями серверов, обычно 8-портовые), а дисковые полки – любое необходимое количество.
Инициатор, соединенный с целевым устройством системой доставки данных, называют доменом. Любое SCSI устройство содержит как минимум один порт, который может быть портом инициатора, целевого устройства или совмещать обе функции. Портам могут присваиваться идентификаторы (PID).
Целевые устройства состоят из как минимум одного логического номера устройства (Logical Unit Number или LUN). Именно LUN и идентифицирует с каким из дисков или разделов данного целевого устройства будет работать инициатор. Иногда говорят, что target предоставляет инициатору LUN. Таким образом, для полной адресации к нужному хранилищу используется пара SCSI Target ID + LUN.
Как в известном анекдоте («Я не даю в долг, а Первый Национальный Банк не торгует семечками») — целевое устройство обычно не выступает в роли «посылающего команды», а инициатор — не предоставляет LUN. Хотя стоит отметить, что стандарт допускает тот факт, что одно устройство может быть одновременно и инициатором и целью, но на практике это используют мало.
Для «общения» устройств в SAS существует протокол, по «доброй традиции» и по рекомендации OSI, разделенный на несколько слоев (сверху вниз): Application, Transport, Link, PHY, Architecture и Physical.
SAS включает в себя три транспортных протокола. Serial SCSI Protocol (SSP) — используется для работы со SCSI устройствами. Serial ATA Tunneling Protocol (STP) — для взаимодействия с дисками SATA. Serial Management Protocol (SMP) — для управления SAS-фабрикой. Благодаря STP мы можем подключать диски SATA к контроллерам SAS. Благодаря SMP мы можем строить большие (до 1000 дисковых/SSD-устройств в одном домене) системы, а также использовать зонирование SAS (подробнее об этом в статье про SAS-коммутатор).
Уровень связей служит для управления соединениями и передачи фреймов. Уровень PHY — используется для таких вещей как установка скорости соединения и кодировки. На архитектурном уровне находятся вопросы расширителей и топологии. Физический уровень определяет напряжение, форму сигналов соединения и т.д.
Все взаимодействие в SCSI строится на основании команд, которые инициатор посылает целевому устройству и ожидает их результата. Команды эти посылаются в виде блоков описания команды (Command Description Block или CDB). Блок состоит из одного байта кода команды и ее параметров. Первым параметром почти всегда выступает LUN. CDB может иметь длину от 6 до 32 байт, хотя последние версии SCSI допускают CDB переменной длины.
После получения команды целевое устройство возвращает код подтверждения. 00h означает что команда принята успешно, 02h обозначает ошибку, 08h — занятое устройство.
Команды делятся на 4 большие категории. N, от английского «non-data», предназначены для операций, не относящихся к непосредственно обмену данными. W, от «write» — запись данных, полученных целевым устройством от инициатора. R, как не сложно догадаться от слова «read» используется для чтения. Наконец В — для двустороннего обмена данными.
Команд SCSI существует достаточно много, поэтому перечислим только наиболее часто используемые.
Test unit ready (00h) — проверить, готово ли устройство, есть ли в нем диск (если это ленточный накопитель), раскрутился ли диск и так далее. Стоит отметить, что в данном случае устройство не производит полной самодиагностики, для этого существуют другие команды.
Inquiry (12h) — получить основные характеристики устройства и его параметры
Send diagnostic (1Dh) — произвести самодиагностику устройства — результаты этой команды возвращаются после диагностики командой Receive Diagnostic Results (1Ch)
Request sense (03h) — команда позволяет получить статус выполнения предыдущей команды — результатом этой команды может стать как сообщение типа «нет ошибки», так и разные сбои, начиная с отсутствия диска в накопителе и заканчивая серьезными проблемами.
Read capacity (25h) — позволяет узнать объем целевого устройства
Format Unit (04h) — служит для деструктивного форматирования целевого устройства и подготовки его к хранению данных.
Read (4 варианта) — чтение данных; существует в виде 4 разных команд, отличающихся длиной CDB
Write (4 варианта) — запись. Так же как и для чтения в 4 вариантах
Write and verify (3 варианта) — запись данных и проверка
Mode select (2 варианта) — установка различных параметров устройства
Mode sense (2 варианта) — возвращает текущие параметры устройства
А теперь рассмотрим несколько типичных примеров организации хранения данных на SAS.
Пример первый, сервер хранения данных.
Что это такое и с чем его едят? Большие компании типа Amazon, Youtube, Facebook, Mail.ru и Yandex используют сервера этого типа для того, чтобы хранить контент. Под контентом понимается видео, аудио информация, картинки, результаты индексирования и обработки информации (например, так популярный в последнее время в США, Hadoop), почта, и.т.д. Для понимания задачи и грамотного выбора оборудования под нее нужно дополнительно знать несколько вводных, без которых никак нельзя. Первое и самое главное – чем больше дисков – тем лучше.
Дата-центр одной из российских Web 2.0-компаний
Процессоры и память в таких серверах задействуются не сильно. Второе – в мире Web 2.0, информация хранится географически распределено, несколько копий на различных серверах. Хранится 2-3 копии информации. Иногда, если она запрашивается часто, хранят больше копий для балансировки нагрузки. Ну и третье, исходя из первого и второго, чем дешевле – тем лучше. В большинстве случаев все вышесказанное приводит к тому, что используются Nearline SAS или SATA диски высокой емкости. Как правило, Enterprise-уровня. Это значит, что такие диски предназначены для работы 24×7 и стоят значительно дороже своих собратьев, использующихся в настольных PC. Корпус обычно выбирают такой, куда можно вставить побольше дисков. Если это 3.5’’, то 12 дисков в 2U.
Типичный 2U-сервер хранения данных
Или 24 x 2.5’’ в 2U. Или другие варианты в 3U, 4U и.т.д. Теперь, имея корпус, количество дисков и их тип, мы должны выбрать тип подключения. Вообще-то выбор не очень большой. А сводится он к использованию экспандерного или безэкспандерного бэкплейна. Если мы используем экспандерный бекплейн, то контроллер SAS может быть 8-портовым. Если безэкспандерный – то количество портов контроллера SAS должно равняться или превышать количество дисков. Ну и последнее, выбор контроллера. Мы знаем количество портов, 8, 16, 24, например и выбираем контроллер исходя из этих условий. Контроллеры бывают 2х типов, RAID- и HBA. Отличаются они тем, что RAID-контроллеры поддерживают уровни RAID 5,6,50,60 и имеют достаточно большой объем памяти (512MB-2ГБ сегодня) для кэширования. У HBA памяти или cовсем нет, или ее очень мало. Кроме этого, HBA либо не умеют делать RAID вообще, либо умеют олько простые, не требующие большого объема вычислений уровни. RAID 0/1/1E/10 – типичный набор для HBA. Здесь нам нужен HBA, они стоят значительно дешевле, так защита данных нам не нужна совсем и мы стремимся к минимизации стоимости сервера.
16-портовый SAS HBA
Пример второй, почтовый сервер Exchange. А также MDaemon, Notes и другие подобные сервера.
SSD- кэширующий RAID-контроллер Nytro MegaRAID
Пример третий, внешняя система хранения данных своими руками.
Итак, самое серьезное знание SAS, конечно же, требуется тем, кто производит системы хранения данных или хочет их сделать своими руками. Мы остановимся на достаточно простой СХД, программное обеспечение для которой производится компанией Open-E. Конечно же, можно делать СХД и на Windows Storage Server, и на Nexenta, и на AVRORAID, и на Open NAS, и на любом другом подходящем для этих целей софте. Я просто обозначил основные направления, а дальше вам помогут сайты производителей. Итак, если это внешняя система, то мы почти никогда не знаем, сколько же дисков потребуется конечному пользователю. Мы должны быть гибкими. Для этого есть так называемые JBOD – внешние полки для дисков. В их состав входит один или два экспандера, каждый из которых имеет вход (4-х портовый разъем SAS), выход на следующий экспандер, остальные порты разведены на разъемы, предназначенные для подключения дисков. Причем, в двухэкспандерных системах первый порт диска разведен на первый экспандер, второй порт – на второй экспандер. Это позволяет строить отказоустойчивые цепочки JBOD-ов. Головной сервер может иметь внутренние диски в своем составе, либо не иметь их совсем. В этом случае используются «внешние» контроллеры SAS. То есть контроллеры с портами «наружу». Выбор между SAS RAID-контроллером или SAS HBA зависит от управляющего ПО, которое вы выбираете. В случае Open-E, это RAID-контроллер. Можно позаботиться и об опции кэширования на SSD. Если ваша СХД будет иметь очень много дисков, то решение Daisy Chain (когда каждый последующий JBOD подключается к предыдущему, либо к головному серверу) в силу многих причин не подходит. В этом случае головной сервер либо оснащается несколькими контроллерами, либо используется устройство, которое называется SAS-коммутатор. Он позволяет подключать один или несколько серверов к одному или нескольким JBOD. Подробнее SAS-коммутаторы мы разберем в следующих статьях. Для внешних систем хранения данных настоятельно рекомендуется использовать диски только SAS (в том числе NearLine) в силу повышенных требований к отказоустойчивости. Дело в том, что протокол SAS имеет в своем составе гораздо больше функций, чем SATA. Например, контроль записываемых-считываемых данных на всем пути с помощью проверочных сумм (T.10 End-to-End protection). А путь, как мы уже знаем, бывает очень длинным.
Напоследок, хочется поделиться некоторыми сведениями о текущей адаптации SAS мировыми производителями оборудования. SAS сегодня – это стандарт де-факто для серверных систем и профессиональных рабочих станций. Серверные системы подавляющего большинства как A- так и B- брендов имеют в составе контроллеры SAS, как HBA, так и RAID. В области внешних систем хранения данных, основные производители оборудования (HP, EMC, NetApp, IBM) уже несколько лет как перевели внутренние архитектуры своих систем на SAS. Таким образом, диски Fibre Channel стали за последние пару лет настоящей экзотикой. Fibre Channel продолжает жить и развиваться, в основном, как способ подключения серверов к системам хранения данных, хотя в области Low-End, Mid-Range и профессиональных систем, SAS отвоевывает все большую долю.
На этом наш экскурс в мир истории и теории SCSI вообще и SAS в частности подошел к концу, и в следующий раз я расскажу вам более подробно о применении SAS в реальной жизни.