Скорочення ризиків downtime завдяки архітектурі Shared Nothing

Тема відмовостійкості в системах зберігання даних завжди є актуальною, оскільки в наш час повсюдної віртуалізації та консолідації ресурсів СГД є тією ланкою, відмова якої призведе не просто до пересічної аварії, а до тривалих простоїв сервісів. Тому сучасні СГД мають у своєму складі безліч дубльованих компонентів (аж до контролерів). Але чи достатній такий захист?

Скорочення ризиків downtime завдяки архітектурі Shared Nothing

Абсолютно всі вендори, перераховуючи характеристики СГД, обов'язково згадують про високу стійкість до відмови своїх рішень, неодмінно додаючи термін «без єдиної точки відмови». Подивимося уважніше на типову систему зберігання даних. Для виключення простою в обслуговуванні в СГД дублюються блоки живлення, модулі охолодження, порти вводу/виводу, накопичувачі (маємо на увазі RAID) і звичайно контролери. Якщо уважно придивитися до даної архітектури, можна помітити як мінімум дві потенційні точки відмови, про які скромно замовчують:

  1. Наявність єдиного бекплейну (backplane)
  2. Наявність однієї копії даних

Бекплейн - технічно складний пристрій, який обов'язково піддається серйозному тестуванню під час виробництва. І тому дуже рідко трапляються випадки, коли він цілком виходить з ладу. Однак навіть у разі часткових неполадок на кшталт непрацюючого слота накопичувача знадобиться його заміна з повним відключенням СГД.

Створення кількох копій даних також не є проблемою. Так, наприклад, функціонал Clone у СХД, що дозволяє актуалізувати з деякою періодичністю повну копію даних, поширений досить широко. Однак у разі проблем із тим самим бекплейном копія буде так само недоступна, як і оригінал.

Цілком очевидний вихід для подолання цих недоліків – це реплікація на іншу СГД. Якщо заплющити очі на цілком очікуване подвоєння вартості «заліза» (все ж таки ми припускаємо, що люди, які обирають подібне рішення адекватно мислять і заздалегідь приймають цей факт), залишаться ще можливі витрати на організацію реплікації у вигляді ліцензій, додаткового програмного та апаратного забезпечення. І головне – потрібно якимось чином забезпечити консистентність даних, що реплікуються. Тобто. будувати віртуалізатор СГД/vSAN/пр., що також потребує грошових та тимчасових ресурсів.

AccelStor при створенні своїх High Availability систем поставили за мету позбутися згаданих вище недоліків. Так з'явилася інтерпретація технології Shared Nothing, що у вільному перекладі означає без використання спільних пристроїв.

Концепція Нічим не поділився архітектурою є використання двох незалежних нод (контролерів), кожна з яких має свій набір даних. Між нодами проводиться синхронна реплікація через інтерфейс InfiniBand 56G абсолютно прозоро для програмного забезпечення, що працює поверх системи зберігання. В результаті не потрібно застосування віртуалізаторів СГД, програмних агентів та ін.

Фізично двонодове рішення від AccelStor може бути виконане у двох моделях:

  • H510 - на базі Twin серверів у корпусі 2U, якщо потрібна помірна продуктивність та ємність до 22ТБ;
  • H710 — на базі окремих 2U серверів, якщо потрібна висока продуктивність та велика ємність (до 57ТБ).

Скорочення ризиків downtime завдяки архітектурі Shared Nothing

Модель H510 на базі сервера Twin

Скорочення ризиків downtime завдяки архітектурі Shared Nothing

Модель H710 на базі окремих серверів

Використання різних форм-факторів обумовлено необхідністю в різній кількості SSD для досягнення заданого обсягу та продуктивності. Плюс, Twin платформа дешевша і дозволяє пропонувати доступніші за ціною рішення, хоч і з деяким умовним «недоліком» у вигляді єдиного бекплейну. Решта, включаючи принципи роботи, в обох моделей повністю ідентична.

Набір даних у кожної ноди має дві групи FlexiRemapплюс 2 hot spare. Кожна група здатна витримати відмову одного SSD. Всі запити, що надходять, запис нода відповідно до ідеологією FlexiRemap перебудовує у послідовні ланцюжки з блоками 4КБ, які потім записуються на SSD у максимально комфортному для них режимі (послідовний запис). Причому хосту підтвердження запису видається після фізичного розміщення даних на SSD, тобто. без кешування в RAM. В результаті досягається дуже вражаюча продуктивність до 600K IOPS на запис та 1M+ IOPS на читання (модель H710).

Як уже згадувалося раніше, синхронізація наборів даних відбувається в режимі реального часу через інтерфейс InfiniBand 56G, що має високу пропускну здатність і низькі затримки. Для того, щоб максимально ефективно використовувати канал зв'язку під час передачі малих пакетів. Т.к. канал зв'язку один, додаткової перевірки пульсу використовується виділений 1GbE лінк. Через нього передається лише heartbeat, тому вимог до швидкісних характеристик не пред'являються.

У разі збільшення ємності системи (до 400+ТБ) за рахунок полиць розширення вони також підключаються парами дотримання концепції «без єдиної точки відмови».

Для додаткового захисту даних (крім того, що AccelStor і так дві копії) використовується особливий алгоритм поведінки у разі відмови будь-якого SSD. Якщо SSD вийде з ладу, нода почне ребілд даних на один із накопичувачів hot spare. Група FlexiRemap, що знаходиться в стані degraded, перейде в режим read only. Робиться це виключення інтерференцій операцій записи і ребілда на резервний диск, що у результаті прискорює процес відновлення і скорочує час, коли система потенційно вразлива. Після завершення ребілда нода знову перетворюється на нормальний режим роботи read-write.

Скорочення ризиків downtime завдяки архітектурі Shared Nothing

Звичайно, як і в інших систем, під час ребілду знижується загальна продуктивність (адже запис не працює одна з груп FlexiRemap). Але процес відновлення відбувається максимально швидко, що вигідно відрізняє системи AccelStor від рішень інших вендорів.

Ще однією корисною властивістю технології Nothing Shared архітектурі є робота нод у так званому режимі true active-active. На відміну від «класичної» архітектури, де конкретним томом/пулом володіє лише один контролер, а другий просто виконує операції введення/виводу, в системах AccelStor кожна нода працює зі своїм набором даних та не передає запити «сусідці». В результаті підвищується загальна продуктивність системи за рахунок паралельної обробки запитів введення/виведення нодами та доступу до накопичувачів. Також фактично немає такого поняття, як failover, оскільки передавати управління томами іншій ноді у разі збою просто не потрібно.

Якщо порівнювати технологію Nothing Shared архітектури з повноцінним дублюванням СГД, то вона, на перший погляд, трохи поступиться повноцінною реалізацією disaster recovery у гнучкості. Особливо це стосується організації зв'язку між системами зберігання. Так, у моделі H710 можна рознести ноди на відстань до 100м за рахунок використання не зовсім недорогих активних оптичних кабелів InfiniBand. Але навіть якщо порівнювати зі звичайною реалізацією синхронної реплікації в інших вендорів через доступний FibreChannel навіть на великі відстані, рішення від AccelStor виявиться дешевшим і простішим в інсталяції/експлуатації, т.к. немає необхідності встановлювати віртуалізатори СГД та/або проводити інтеграцію з програмним забезпеченням (що далеко не завжди можливо в принципі). Плюс, не забуваємо, що рішення AccelStor – це All Flash масиви з продуктивністю вище, ніж у «класичних» СГД із SSD only.

Скорочення ризиків downtime завдяки архітектурі Shared Nothing

При використанні технології Nothing Shared архітектурі AccelStor реально отримати доступність системи зберігання на рівні 99.9999% за цілком розумну вартість. Разом з високою надійністю рішення, у тому числі за рахунок використання двох копій даних, та вражаючої продуктивності завдяки фірмовим алгоритмам FlexiRemap, рішення від AccelStor є відмінними кандидатами на ключові позиції під час побудови сучасного датацентру.

Джерело: habr.com

Додати коментар або відгук