Лето в Москве в этом году выдалось, скажем честно, не очень. Началось оно слишком рано и быстро, не все успели на него среагировать, да и закончилось оно уже в конце июня. Поэтому, когда компания Huawei предложила мне отправиться в Китай, в город Чэнду, где находится их RnD центр, посмотрев на прогноз погоды в +34 градусов в тени — я немедленно согласился. Всё-таки возраст у меня уже не тот и кости свои немного погреть уже требуется. Но хочется отметить, что погреть удалось не только кости, но и внутренности, ведь провинция Сычуань, в которой, собственно, и находится Чэнду славится своей любовью к острой еде. Но всё-таки это блог не о путешествиях, поэтому вернёмся к главной цели нашей поездки — новая линейка систем хранения данных — Huawei Dorado V6. Эта статья будет немного помахивать вам из прошлого, т.к. написана она до официального анонса, но опубликована только после релиза. И так, сегодня мы приглядимся ко всему интересному и вкусному, что приготовила нам компания Huawei.
В новой линейке будет 5 моделей. Все модели, кроме 3000V6 могут быть в двух вариантах — SAS и NVMe. От выбора зависит интерфейс дисков, которые вы сможете использовать в данной системе, Back-End порты и количество дисковых накопителей, которые вы сможете установить в систему. Для NVMe используются Palm-sized SSD, которые имеют меньшую толщину, по сравнению с классическими 2.5» SAS SSD и их можно установить до 36 штук. Новая линейка является All Flash и конфигураций с дисками нет.
Palm NVMe SSD
На мой взгляд — наиболее интересными моделями выглядят Dorado 8000 и 18000. Компания Huawei позиционирует их как High-end системы, при этом, благодаря ценовой политике Huawei, она противопоставляет эти модели Mid-range сегменту конкурентов. Именно на этих моделях я сегодня и сконцентрируюсь в своём обзоре. Сразу замечу, что из-за своих конструктивных особенностей, младшие двухконтроллерные системы обладают несколько иной архитектурой, отличной от Dorado 8000 и 18000, так что не всё, о чём я сегодня расскажу, применимо к младшим моделям.
Одной из основных особенной новых систем, стало использование нескольких чипов, собственной разработки, каждый из которых, позволяет разнести логическую нагрузку с центрального процессора контроллера и добавить функциональности разным компонентам.
Сердцем новых систем стали процессоры Kunpeng 920, разработанные на технологиях ARM и производимые компанией Huawei самостоятельно. В зависимости от модели, варьируется количество ядер, их частота и количество установленных процессоров в каждом контроллере:
Huawei Dorado V6 8000 — 2CPU, 64 core
Huawei Dorado V6 18000 — 4CPU, 48 core
Компания Huawei разработала данный процессор на архитектуре ARM, и насколько мне известно, изначально планировала ставить его только в старшие модели Dorado 8000 и 18000, как это уже было с некоторыми моделями V5, но санкции внесли свои корректировки в эту задумку. Конечно, компания ARM так же говорила об отказе сотрудничества с Huawei во время введения санкций, но тут ситуация иная, нежели с Intel. Компания Huawei самостоятельно производит эти чипы, и никакие санкции не смогут остановить этот процесс. Разрыв отношений с ARM грозит только потерей доступа к новым разработкам. Что же касается производительности — тут можно будет судить только после проведения самостоятельных тестов. Хоть я и видел, как с системы Dorado 18000 без проблем сняли 1M IOPS, пока собственными руками у себя в стойке я это не повторю — не поверю. Но мощностей в контроллерах там действительно не мало. Старшие модели оснащены 4 контроллерами, в каждом из которых установлено по 4 процессора, что даёт в сумме 768 ядер.
Но про ядра я расскажу ещё позже, когда мы рассмотрим архитектуру новых систем, а пока вернёмся к ещё одному чипу, установленному в системе. Крайне интересным решением смотрится чип
Перейдём к архитектуре. Компания Huawei продолжила развитие собственной технологии Smart Matrix, которая реализует full mesh подход к соединению компонентов. Но если в V5 это было только для доступа с контроллеров к дискам, то теперь все контроллеры имеют доступ ко всем портам как на Back-End, так и на Front-End.
Благодаря новой микросервисной архитектуре, это позволяет так же балансировать нагрузку между всеми контроллерами, даже при наличии только одного lun’а. ОС для данной линейки массивов была разработана с нуля, а не просто оптимизирована для использования Flash-накопителей. Благодаря тому, что у нас все контроллеры имеют доступ к одним и тем же портам, в случае выхода из строя контроллера или его перезагрузки, хост не теряет ни одного пути до СХД, а переключение путей осуществляется на уровне системы хранения данных. При этом, использование UltraPath на хосте не является строгой необходимостью. Ещё одной «экономией» при монтаже системы является меньшее количество необходимых линков. И если при «классическом» подходе для 4 контроллеров нам необходимо будет 8 линков от 2 фабрик, то в случае с Huawei будет достаточно даже 2 (я не говорю сейчас о достаточности пропускной способности одного линка).
Как и в предыдущей версии — используется глобальный кэш с зеркалированием. Это позволяет без влияния на доступность потерять до двух контроллеров одновременно или трёх контроллеров последовательно. Но стоит отметить, что полной балансировки нагрузки, между оставшимися 3 контроллерами в случае выхода из строя одного, мы на демо стенде не увидели. Нагрузку вышедшего из строя контроллера, целиком забрал на себя один из оставшихся. Возможно, что для этого необходимо дать системе поработать что дольше в такой конфигурации. В любом случае, на собственных тестах я проверю это уже более детально.
Компания Huawei позиционирует новые системы, как End-to-End NVMe системы, но на сегодняшний день на фронтэнде NVMeOF пока не поддерживается, только FC, iSCSI или NFS. В конце этого или начале следующего, как и другие фишки, нам обещают и поддержку RoCE.
Полки к контроллерам подключаются так же по средствам RoCE и с этим связан один недостаток — отсутствие “петлевого” подключения полок, как это было при SAS. На мой взгляд, пока это является довольно большим недостатком, если у вас планируется довольно большая система. Дело в том, что все полки подключаются последовательно, и выход из строя одной из полок влечёт и полную недоступность всех остальных, следующих за ней. В данном случае, для обеспечения отказоустойчивости нам придётся подключать все полки к контроллерам, что влечёт за собой увеличение необходимого количества бэкэнд портов в системе.
И ещё одна вещь, о которой стоит сказать — non-disruptive update (NDU). Как я уже говорил выше, компания Huawei реализовала контейнерный подход в работе ОС для новой линейки Dorado, это позволяет производить обновление и перезапуск сервисов, без необходимости полной перезагрузки контроллера. Здесь стоит сразу оговориться, что некоторые обновления, будут содержать обновления ядра и в этом случае классический ребут контроллеров иногда всё-таки будет требоваться при обновлении, но не всегда. Это позволит уменьшить уровень влияния этой операции на продуктивную систему.
В нашем арсенале, подавляющее большинство массивов от компании NetApp. Поэтому, я думаю будет вполне логично, если я проведу небольшое сравнение с системами, с которыми мне приходится работать довольно много. Это не попытка определить — кто лучше, а кто хуже или чья архитектура более выигрышна. Попытаюсь трезво и без фанатизма сравнить два разных подхода к решению одной и той же задачи от разных вендоров. Да, конечно, системы Huawei в данном случае мы будем рассматривать в «теории» и те моменты, которые только планируется реализоваться в будущих версиях прошивок я буду так же отдельно отмечать. Какие плюсы мне видятся на текущий момент:
- Количество поддерживаемых NVMe накопителей. У NetApp на сегодняшний день их количество составляет 288, у Huawei в зависимости от модели — 1600-6400. При этом, Max usable capacity у Huawei равен 32PBe, как и у систем NetApp (если быть точнее, у них 31.64PBe). И это при том, что поддерживаются накопители того же объёма (до 15Tb). Компания Huawei этот факт объясняет следующим образом — у них не было возможности собрать стенд большего объёма. В теории у них нет ограничения по объёму, но протестировать данный факт они пока просто не смогли. Но тут стоит отметить, что возможности flash-накопителей на сегодняшний день очень высоки, и в случае с NVMe системами мы сталкиваемся с тем, что 24 накопителей достаточно для того, что бы утилизировать топовую 2-х контроллерную систему. Соответственно дальнейшее увеличение количества дисков в системе не только не даст прироста производительности, но и плохо скажется на соотношении IOPS/Tb. Конечно стоит посмотреть, какое количество накопителей смогут вытянуть 4-х контроллерные системе 8000 и 16000, т.к. пока всё-таки не до конца ясны возможности и потенциал Kunpeng 920.
- Наличие у Lun’а владельца у систем NetApp. Т.е. операции с луном может выполнять только один контроллер, второй же лишь пропускает через себя IO. У систем Huawei наоборот нет никаких владельцев и операции с блоками данных (компрессия, дедупликация) могут выполняться любым из контроллеров, также как и записываться на диски.
- Отсутствие падения портов при отказе одного из контроллеров. Для кого-то этот момент выглядит крайне критичным. Суть в том, что переключение внутри СХД должно происходить быстрее, чем со стороны хоста. И если в случае с тем же NetApp нами на практике выявлен фриз порядка 5 сек при выдёргивании контроллера и переключении путей, то с переключением на Huawei ещё предстоит попрактиковаться.
- Отсутствие необходимости перезапуска контроллера при обновлении. Особенно меня это стало волновать при довольно частом выходе новых версий и веток прошивки для NetApp’ов. Да, некоторые обновления для Huawei будут всё же требовать перезапуска, но не все.
- 4 контроллера Huawei по цене двух контроллеров NetApp. Как я уже говорил выше, благодаря ценовой политике Huawei, она может своими Hight-end моделями конкурировать с Mid-range.
- Наличие дополнительных чипов в контроллерах полок и порт-картах, которые потенциально предназначаются для повышения эффективности системы.
Минусы и опасения в целом:
- Прямое подключение полок к контроллерам или необходимость большого количества back-end портов для подключения всех полок к контроллерам.
- ARM-архитектура и наличие большого количества чипов — на сколько эффективно это будет работать, и хватит ли производительности.
Большинство опасений и страхов сможет развеять собственноручное тестирование новой линейки. Надеюсь, в скором времени после релиза они уже появятся в Москве и их будет достаточное количество, чтобы оперативно получить одну для собственных испытаний. Пока можно сказать, что в целом подход компании выглядит интересно, а новая линейка смотрится очень хорошо на фоне конкурентов. очень много вопросов вызывает конечная реализация, т.к. многие вещи мы увидим только в конце года, а может быть и только в 2020.
Источник: habr.com