JBOD і масштабування зберігання
Майбутнє зберігання даних - у відділенні облаштувань постійної пам'яті від серверів-обчислювачів, у складі компонованої інфраструктури. Вже сьогодні так влаштовані програмно-визначувані модульні системи зберігання : контролери (хости) окремо, дискові контейнери (JBOD) - окремо. Контролери управляють даними і обмінюються ними з оточенням. JBOD забезпечують максимальний комфорт накопичувачам і надійний доступ до них по широкосмугових з'єднаннях з низькими затримками.
JBOD як пристрої не мають відношення до управління трафіком даних і обчислювальної потужності серверів-контролерів. Це автономний клас серверного устаткування, інваріанти систем зберігання.
Їх пропонують виробники апаратних систем зберігання в якості опцій розширення. Вони є в асортименті постачальників серверних корпусів і платформ (Supermicro, Tyan, AIC, Chenbro). Багато для просування JBOD як концепту зробила HGST (що увійшла з командою розробників та продуктами в Western Digital). Все логічно: робиш HDD і SSD під корпоративні застосування - запропонуй ринку їх агрегати, універсальні спільності.
За три роки WD представила три покоління JBOD. Безперервний пошук оптимального дизайну підпорядкований основній меті: дати власникам об'ємних даних типові будівельні блоки. Надійні, такі, що підходять під будь-яку програмну модель, не залежні від змінюваного ландшафту.
Хоча інженерні рішення і компонування мінялися, суть залишилася колишньою. Збільшився розмах можливостей, в першу чергу, масштабування. Як управляти місткістю системи зберігання і перерозподіляти її, покажемо на прикладі WD Ultrastar Data60. Це 60-дисковий JBOD, який виробник називає гібридною платформою під програмно-визначуване зберігання. Гібридною - тому що всередину можна ставити не лише HDD, але і SSD.
Апологія SAS Протокол SAS
дозволяє створювати різноманіття поєднань ініціаторів, таргетів і експандерів (розширювачів). Контролери хостів (ініціатори), що управляють, звертаються до таргетів і їх сукупностей (доменам SAS) через підсистему доставлення даних, побудовану на експандерах, - завдяки ним, контролери можуть обслуговувати до 1000 дисків в полицях.
JBOD усіх виробників підключаються до хост або основних масивів по SAS. Один широкий порт стандарту 12gbit/s SAS (4 лінії) пропускає потік 4800 MB/s. Таких портів в JBOD декілька. У WD Ultrastar Data60 їх 12, по 6 на кожен модуль введення-виведення IOM. Два модулі IOMA - IOMB дублюють топологію доменів SAS (шляхи до дисків) :
Усередині JBOD шляху SAS до дисків прокладені через ланцюжки експандерів :
Зонування.
SAS підтримує зонування - логічне розбиття топології домена на групи, для безпеки та розподілу трафіку. За умовчанням усі диски JBOD видно усім ініціаторам, підключеним до будь-якого із зовнішніх портів. Використовуючи унікальні ідентифікатори, можна згрупувати диски у зони, а зони приписати певним портам. Кожен диск зони буде видний тільки цей порт, і тільки хосту, підключеному до нього. Таблиця дозволів правиться через інтерфейс командного рядка CLI.
Приклад розбиття на шість зон:
Підключення JBOD до одного хосту і часткове заповнення дисками (scale - in)
Підключаючи JBOD c дисками SAS до двох зовнішніх портів SAS HBA або контролера SAS RAID хосту, отримаємо топологію двох доменного SAS:
Два незалежні шляхи до дисків страхують від втрати фізичного з'єднання порт HBA - кабель - експандер модуля IOM введення-виведення JBOD.
Порожній JBOD - нульова точка відліку місткості зберігання. WD Ultrastar Data60 поставляються як в повній комплектності, так і частково заповненими, з 24 дисками з 60. У дисковому кошику 5 рядів по 12 місць посадок. Диски додаються в неї дюжинами, цілими рядами - щоб не порушити схему обдування.
Каскад JBOD (scale - up)
Двох доменна топологія дозволяє безпечно робити каскад JBOD - підключати їх ланцюжки до одного і тому ж хосту. Використовуючи два IOM кожного з JBOD, можна добитися дублювання шляхів до усіх дисків, побудувавши схему без єдиної точки відмови.
Підключення JBOD до декількох хост
JBOD можна підключити до декількох хост - портів у нього досить. Залежно від моделі роботи з даними можна дозволити усім хостам одночасний доступ до усіх дисків. А можна настроїти таблицю зонування і приписати групи дисків певним зовнішнім портам. Різні хости бачитимуть різні диски. Щось подібне до комунальної квартири, де різні мешканці ділять одну житлоплощу, з набором загальних сервісів.
Кластер двох хостів із загальними дисками в JBOD (чи в ланцюжку з декількох таких), він же кластер високої доступності (HA), відповідає класичній схемі компонування двохконтролерних апаратних СЗД. Тут роль контролерів грають сервери, диски винесені в підключені по SAS автономні контейнери, а управляє усім ПЗ зберігання, розгорнуте на вузлах. Конфігурація active/active дає одночасний доступ до дисків через обидва контролери, в конфігурації active/passive один з контролерів знаходиться в стані очікування (standby).
Горизонтальне масштабування (scale - out)
При горизонтальному масштабуванні в систему зберігання додаються хости, ПЗ, що управляє, розподіляє між ними запити та забезпечує збереження даних методом кратного дублювання або з допомогою кодів надмірності (erasure code) : дані розбиваються на фрагменти, кодуються і розподіляються по носіях. Притягується складний математичний апарат, обчислювально витратний. Зате метод erasure coding дає стійкість до множинних відмов накопичувачів, допомагає економно витрачати дисковий простір і швидко відновлювати втрачені дані. Системи зберігання з ним добре масштабуються, не прив'язані до окремих пристроїв і навіть майданчиків розміщення.
При великих об'ємах зберігання дані неминуче виносяться в JBOD - серверами з внутрішніми дисками не обійтися. JBOD підключаються до хосту по SAS і при необхідності каскадують. Хмарні провайдери, що накопичують петабайты активних архівів, рано чи пізно приходять до об'єктного зберігання c кодом надмірності та розвиненими засобами швидкого пошуку по метаданих.
Приклад такої системи - промислові рішення Western Digital ActiveScale, масштабовані цілими "стойками" (сукупностями серверів і JBOD)