Как стать автором
Обновить

Комментарии 53

Метафора в заголовке отчасти наркоманская, но по сути рассказаны офигительные вещи, я едва не прослезился от восторга.

Автор, пиши ещё.
Однозначно, но, главное, чтобы Роском был того же мнения. Спросоня могут ведь и не понять…
А что тут непонятного? Вы что, не любите маслят? Под корюшку-то?
— Это вы там упоролись по хардкору и приспособили SSE-инструкции для реализации кода Рида-Соломона?
— Да, только мы не…
— Да мне пофиг. Хотите заказ?

Вот это было очень, очень хорошо, сделало мое утро фактически. И разработка классная, удваиваю Мицгола.
Очень увлекательно :) Стопицот плюсов!
Замечательно, что у нас еще не перевелись "mad Russians", которые взяли и переписали половину дискового стека просто потому, что это круто.

Два вопроса:
  1. Какова основа ОС RAIDIX — Linux, FreeBSD или что-то еще?
  2. Ни в коей мере не покушаюсь на вашу интеллектуальную собственность, но если вы выбрали Linux — как там дела с GPL?
Судя по руководству — в основе Linux (Руководство в PDF)
Второй вопрос остается разработчикам.
Передал вопрос Сергею Платонову — разработчику, вот ответ: «Операционная система GNU/Linux. За основу взят клон RHEL6.
Часть кода также под GPL, но основные вычислительные модули выделены в отдельные, таким образом чтобы не нарушать GPL. Стандартная практика для компаний, которые делают коммерческие продукты на Linux».
Спасибо. Раз часть кода под GPL, не подскажете, где она опубликована: в репозитории RHEL, ядра (git.kernel.org) или где-то еще?
GPL означает, что исходники обязаны предоставляться приобретателю программы.
GPL не требует, чтобы исходники выкладывались в публичный доступ.

Насколько известно, RAIDIX никаких наработок в коммьюнити не возвращал и не собирался.
Год назад это говорилось прямым текстом.
Сейчас Гугл по запросам «raidix git», «raidix svn» и «raidix patch» не находит ничего.

Будем надеяться, что со временем это изменится.
Как-то не тянет на
Серьёзно, первая русская ОС, доведённая до ума и выпущенная.
Это все-таки решения для другого класса задач — хранение большого количества неструктурированных редкоизменяемых данных.
RAIDIX изначально разрабатывался как Active Storage.
Но на холодные данные тоже смотрим. Реализуем ScaleOut NAS и будем планировать объектный доступ.
Как владелец полки от Рэйдикса могу заявить что там Scientific Linux.
Конкретно у меня версия 3.3.0 на Scientific Linux release 6.1 (Carbon)
InfiniBand (FDR, QDR, DDR)

Это физика. А протокол какой? iSER, FCoIB или SRP?
Разработчик говорит, что в качестве протокола используются SRP (SCSIoverRDMA). SRP был разработан как основной интерфейс для рынка HPC и, как ни странно, для SMB (Supermicro выпускает недорогие блейд-шасси с IB onboard). Но для HPC сейчас Raidix переходит на модель Custer-In-the-Box, интегрируя кластер PFS и кластер блочного СХД в одной коробке.
НЛО прилетело и опубликовало эту надпись здесь
Тесты проводились на неиницилизированном RAID, и по сути производительность уперлась в 1 диск.
На инициализированном RAID с правильными настройками мы получаем несколько тысяч IOPS.
Но следует всегда учитывать следующее:
1. Чудес не бывает, RAIDIX использует классическую схему RAID. Поэтому для RAID 7.3, 6 используется механизм read-modify-write. У NetApp нивелирует этот недостаток WAFL, но он несет и свои проблемы.
2. В жизни не бывает 100% random. При правильном подборе размера кешей и настройках, можно добиться более высокой производительности.
Поэтому разработчик рекомендует взять демо-систему или договорится с группой внедрения о тестах под ваши параметры.
НЛО прилетело и опубликовало эту надпись здесь
Причина классического подхода — первоначальная задача, для которой cow и row в лоб не подходят. Вы, наверняка, знаете, что NetApp не позиционирует свои FAS-based продукты для HPC и M&E. Для этого они используют E-Series, бывший LSI. Мы здесь не для того, чтобы поливать грязью технологии конкурента, но и слепо копировать ничего не хотим. Мы думаем, что делать. Есть разные варианты. Например, применять подход, похожий на используемый в LSFS, cow, row и тд
Сейчас делаем man-to-many rebuild, уходя от классической схемы массивов. Затем будем больше оптимизироваться под flash. Тогда остро и встанет вопрос борьбы с write amplification, flash endurance.
Тк эта статья популярна, будет свой блог )
При неинициализированном массиве парити не соответствуют данным на информационных стрипах. Поэтому каждая запись в несколько килобайт требует чтение всего страйпа, изменения контрольных сумм и запись измененного стрипа и партии на диски.
В итоге не получаем никакого распараллеливания.

При инициализированном массиве, мы имеем парити, соответствующую данным на стрипах с информационными полосами.
Поэтому, при random write читаем стрип с изменяемыми данными и парити, парити пересчитываем и все записываем обратно. Получаем распараллеливание.

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

Всех тестов с идеальными настройками не показали, но, думаю будет цикл статей по бэнчмаркингу СХД.

Есть ли снэпшоты, репликация, тиринг, и вообще какие либо сервисы кроме хранения?
В течении этого года Raidix разработал свой volume manager. Линуксовый LVM просто не тянет производительность.
Как утверждает разработчик, у них есть все, чтобы заработали snapshots, tiering, thinprovisioning, репликация и т.д.
В 2015 все постепенно добавят. В планах также блочный таргет SAS 12G, SSD кэширование, ScaleOut NAS.

Хорошая статья. Я долго откладывал, но в январе всё же займусь вплотную бенчмарками RAIDX vs что-нибудь, да хотя бы Adaptec 7805 + FC таргет (lio target ск. всего или Open-E). Недавно намерял на Infortrend ESDS 3000 серии (1 контроллер, 2 порта SAS2, 48 дисков SAS2 10k) 3200/2500 МиБ/с на чтение и запись соответственно при средней задержке < 10мс — просто упёрся в контроллер. На выяснение поведения при ребилде не хватило времени.
Вопрос. Насколько своя ос? Для описанного тут вполне достаточно взять linux и написать еще одну реализацию Software RAID массива. Кстати говоря RAID6 в linux вполне использует SSE и прочее.
взять linux и написать еще одну реализацию Software RAID массива

Это не так просто. Насколько я помню историю развития Avroraid (который теперь RAIDX), то цель изначально была простой — быстрая реализация RAID-стека для видеомонтажников плюс собственный FC таргет для HBA производства ATTO. Им важен QoS — никаких провалов при потере дисков и ребилде, так и просто высокая производительность. В те годы (2010-2011) производительность готовых СХД начального уровня и отдельный PCI RAID на запись в RAID-6 упиралась примерно в 1-1.3ГБ/с (контроллеры на чипе LSI 2108 до сих пор выпускаются, например).
Вначале всё это выглядело не очень: куча костылей к RHEL5, много действий в консоли, какая-то кривая надстройка к webmin, но производительность действительно была достойной.
В плане администрирования давно всё поправили. Последний раз, когда я видел RAIDX, это был Scientific Linux 6-й ветки, современная и удобная веб-морда. Дело осталось за функционалом: таргеты под другие интерфейсы, репликация и т.д.
Это не так просто. Насколько я помню историю развития Avroraid (который теперь RAIDX), то цель изначально была простой — быстрая реализация RAID-стека для видеомонтажников плюс собственный FC таргет для HBA производства ATTO.

Это скажем проще чем писать свою ОС с нуля для x86. Ну а так как я думал, не совсем своя ОС, а модифицированный Linux. Ну а морда то видно что люди изучали этот вопрос. Обычно как раз таки у таких продуктов управлятор ужасен :)
А потом вам LSI'ка кладёт весь бэкплейн (или бэкплейн всю LSI'ку), и, здравствуй, highload.
Я в курсе насчёт Вашего знаменитого lsi-sata-fuckup.sh, но вот как-то не срабатывает он. Пробовал год назад на каких-то SATA SSD + LSI 2308 HBA + LSISAS2X36. ЧЯДНТ? Наверное, такой серьёзный баг, всплывший 2 года назад не мог оставаться неисправленным. При такой доле на рынке SAS HBA и экспандеров ситуация «да он же просто не работает этот ваш LSI» долго актуальной быть не может.
Используете SSD. У SSD secure erase делается дропом всего и вся и очень быстро, а у HDD длится часами.

У меня сейчас нет места, где можно проверить, просто вопрос в другом — 'SCSI bus hangs' я видел и на других контроллерах. Более того, в дорогих СХД используется отдельный ethernet для управления бэкплейнами (как будто обычного SCSI не хватает), что заставляет меня думать, что проблема с «подвисанием» шины является общеиндустриальной, а не локальной для конкретных драйверов.

Если сумеете проверить поведение на новых HBA (обязательно с SATA-дисками, причём магнитными, подключенными к enclosure), скажите, мне будет очень интересно.
Свежие новости с фронта.

Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2308 PCI-Express Fusion-MPT SAS-2 (rev 05)

Всё ещё ровно так же вешается целиком кусок шины (host в терминах SCSI) при запуске скрипта.

Так что не надо мне рассказывать про " Наверное, такой серьёзный баг, всплывший 2 года назад не мог оставаться неисправленным. При такой доле на рынке SAS HBA и экспандеров ситуация «да он же просто не работает этот ваш LSI» долго актуальной быть не может. "
Вопрос ко всем сразу: есть ли какой-то реестр отечественных IT компаний с перечнем их компетенций, навыков и продуктов?
У Федеральной службы безопасности должен быть.
Вот, например каталог продуктов
www.arppsoft.ru/
Наслышан о вас. Молодцы.
Года 4 назад построил своё хранилище на пол петабайта на infiniband и supermicro. В качестве файловой системы Lustre.
Как раз для видеомонтажа. И монтажки по 40 Gb/s IB подключил. Суммарная скорость 17 гигабайт в секунду на чтение и 15 на запись.
Собирал всё что можно из исходников и тестил, тестил, тестил.
Вы в Москве? RAIDIX в СПб. Но мы можем как нибудь встретится и попить кофе. Очень интересно послушать про реальный опыт использования Lustre для Media and Entertainment.
Обязательно встретимся, у меня командировка в начале года будет.
Если по заголовку и первым строкам ничего не понятно я сделал себе привычку читать радостные комментарии, если они есть, а потом статью.
p.s. ну очень люблю новую информацию
я видел эту систему когда она еще называлась Avroraid и это уже тогда было неплохо.
На недавнем НАБе открылась тайна — оказывается аврорейд — теперь райдикс)
У меня вопрос по эксплуатации,
Как оно переживает отказы БП (включая обоих), как идет процесс обновления FW (ОС) и обработка сбоев этого дела?
Кэш в RAM, поэтому одноконтроллерная система, при неправильном проектировании, может потерять грязные сегменты кэша.
Сейчас все больше компаний производит NVDIMM, но нормальных SDK и безбажной поддержки в BIOS нет
Как только, появятся — будет поддержка в RAIDIX
Поэтому для защиты от сбоев:
-использовать внешние или внутренние SPS-модули, по одному на контроллер. При разрядке SPS, ПО получит сигнал и сбросит грязный кэш.
-использовать двухконтроллерную конфигурацию (например, на базе Supermicro SBB)
В DC режиме грязные сегменты кэша зеркалируются друг между контролерами и без проблем переживает любой вид отказа. Фэйловер менее секунды.

Обновление, опять же будет только на отказоустойчивый конфигурации не требовать простоя.
Чаще всего, это скрипт, делающий бэкап текущей конфигурации и выполняющий установку rpm.
Спасибо за ответы, еще интересует — сертифицируетесь ли вы с производителями железа, если да, то с какими?
Особенно интересна официальная поддержка ваших массивов при использовании их с серверами IBM, HP, Hitachi, Fujitsu…
Проходите ли вы какие-либо тесты на совместимость с производителями FC HBA: Emulex, Qlogic, производителями FC SAN оборудования Brocade, Cisco?
Есть два типа сертификации:
односторонняя, когда нашими силами или нашими партнерами проводится тестирование аппаратного обеспечения.
Это оборудование попадает в HCL и поддерживается нами и партнерами.
HCL можно попросить, написав на info@raidixstorage.com

двухсторонняя, когда вендор выполняет тестирование нашего ПО и распространяет его без нашего участи через свой канал

Второй вариант с компаниями из первого эшелона возможен только под крупные проекты, из второго эшелона подобные отношения сложены, например, с AIC.
Коллеги, очень занимательное чтиво. Очень приятно что есть русские разработчики, которые что-то хорошее делают.

Но опять-же живо напомнило про «To reinvent the wheel».

RAID, как технология, активно умирает.

Описанные проблемы в статье решаются RAIN архитектурами, плюс Erasue Code

Кстати основная из традиционных RAIN ( Isilon ) — как раз и заточена в первую очередь под Медиа (насколько я знаю ВГТРК и прочие используют в РФ).

Другой вопрос — ценообразование от Крок-а и EMC :)

Проблемы RAIDX такие-же как и у большинства традиционных решений: два контроллера (это очень мало на сегодняшний день, вероятность одновременного отказа, учитывая сложность оборудования, далеко не нулевая), упор в интерфейсы ввода-вывода, и т.д.

Что-то в вашем комментарии не хватает слов «допилили», «Ынтерпрайз», «переделали», «лучшие решение», «как до луны», «тендеры», «отжимаем». Срочно исправить!
Допустим у вас малое количество файлов очень большого объема (сотни Tb), которые не влезают даже поодиночке на один узел RAIN, плюс специфика работы с данными такова, что SSD-кэш не помогает, потому запросы идут рандомно ко всем участкам файлов. К тому же хочется иметь производительность (в т.ч. по IOPS), близкую к теоретически возможной на нашем количестве дисков. RADIX как раз рассчитан на такой сценарий — не конкурент существующим распределенным системам, а хранилище, например, для необработанного видео.
Гхм, коллега. Но причем тут «один нод» и файлы?

Посмотрите например stevenpoitras.com/the-nutanix-bible/ — там очень хорошо расписано про RAIN.

Суть RAIN в том что в работе кластера участвуют одновременно _все_ шпиндели, и нет понятия spare disk как такового — опять-же, в «ребилде» все диски всего кластера участвуют.

Как результат — скорость ребилда — в десятки раз быстрее традиционных RAID. И нет никаких заметных просадок производительности — фактически, оно просто в размере IOPS одного диска.

Никоим образом RAIN архитектура не ограничивает размер файла размером нода — файл совершенно спокойно размазывается по всем дискам всего кластера.

SSD тут совершенно ни причем. Isilon работает прекрасно без флеша вообще.
НЛО прилетело и опубликовало эту надпись здесь
«как вы знаете, умножение любых полиномов в конечных полях можно свести к умножению на примитивный элемент за счет факторизации умножения» — вспомнил универ, когда препод говорил — «тут я пропустил немного несложных вычислений...», открываешь учебник, а там две страницы мелким шрифтом.

вопрос — есть возможность работы с энергонезависимым кэшем на запись?
Добрый день!
Если есть желание, напишем статью про реализацию полиномиальный арифметики.

Как я писал выше, с NVDIMM пока не работаем, тк полноценная поддержка со всех сторон (модули, BIOS MB, нормальный SDK, OS) пока не была нами обнаружена
Пока что требуется использовать дополнительные модули бесперебойного питания. Внешние или внутренние.
Но ничего безумно сложного в реализации я не вижу При благоприятном стечение обстоятельств будет поддержка модулей, использующих суперконденсаторы.
есть. желание читать, вникать
Казалось бы причем тут грибы… ;)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий