ActiveScaleинженерная практика

Частые вопросы по ActiveScale

Справочники faqreferences3installcold-storage

Коротко. Десять вопросов, которые задают чаще всего: что это за система, чем отличаются классы, что значит «19 девяток», почему установка «зелёная», но кластер пустой, почему S3 отдаёт 403 и куда смотреть, когда лента «пропала». В каждом ответе — ссылка на статью с полным разбором.

Ответы короткие намеренно: это вход в тему, а не замена статье. Если вопрос про аварию — сначала прочитайте чек-лист «первые 15 минут», он задаёт порядок действий; если про установку — раздел о флагах и маркерах. Формулировки в ответах — про механизм продукта, а не про конкретную площадку: конфигурация и версия всегда уточняются отдельно.


1. Платформа и классы

Что такое ActiveScale и зачем он нужен?

Объектное хранилище для больших объёмов неструктурированных данных: S3-совместимый API, два класса (активный и холодный на ленте) в одном namespace, erasure coding и масштабирование добавлением нод. Приложение кладёт объекты по HTTP, система сама раскладывает фрагменты по дискам и нодам. Это не NAS: доступ по объектному API, а не по файловым шарам. Классы и политики выбираются под нагрузку и число блоксторов, а не «по умолчанию». Подробнее.

Чем Active отличается от Cold?

Active — данные на NVMe или HDD, доступ за миллисекунды, обычный S3. Cold — лента, класс S3 Glacier: дешевле по стоимости хранения, но восстановление занимает время и идёт через дисковый тир. Холодный класс использует 2D erasure coding, заявленный overhead — от 15%. Оба класса живут в одном namespace, переход задаётся lifecycle-политикой. Выбор класса — это выбор между скоростью доступа и стоимостью хранения; ошибка в оценке приводит к долгим restore. Подробнее.

«19 девяток» — это гарантия?

Нет. Это расчётная durability, заявленная Quantum для активного и холодного классов (по данным вендора). Она описывает вероятность потери объекта при отказах, а не обещание сохранности любых данных в любом сценарии. На практике важнее политика DSS: w + s ≤ N и достаточное число блоксторов и запас политики: w + s ≤ N, а не только заявленная цифра. Подробнее.


2. Установка

install-ng закончился с кодом 0, а кластер пустой. Как так?

Код 0 означает «процесс закончился», а не «работа сделана». Пример: -AST без группы политики в dssconfig.yml завершается нулём и оставляет колонку пустой; без флага -x mongod живёт только на ведущей, и страница «Ресурсы» пуста. Судить нужно по гейтам: 200 на /federated/_status/, число mongod, NOTCONFIGURED = 0. Маркер завершения и гейты важнее кода возврата; код говорит лишь о том, что процесс закончился. Подробнее.

Узел в статусе NOTCONFIGURED — что делать в первую очередь?

Это значит, что узел или приложение не сконфигурировано, а не «умерло». Смотреть install.log и taskmgr/playbooks.log (failed=), проверять details событий и остатки ручных правок. Догон — теми же флагами без уже пройденных фаз; полный прогон запускать только Переустановка до разбора стирает улики и почти всегда удлиняет простой. Подробнее.


3. Доступ к S3 и GUI

Клиент S3 получает 403, хотя GUI зелёный. Почему?

Почти всегда дело в часах: SigV4 принимает расхождение не больше 15 минут. Проверить ntpq -c rv и наличие * в ntpq -p; если время уехало — править NTP, а не права доступа. Реже причина в подписи (не-ASCII в подписанных заголовках) или в неверном endpoint. Проверять время дешевле, чем разбирать права: начните с ntpq и только потом смотрите IAM. Подробнее.

Какой endpoint использовать для S3?

https://<bucket>.<DOMAIN> на порт 443 ноды. Не :11000 — это внутренний канал DSS, и не UI-обёртка вида s3.activescale.com. Нужны: разрешение имени бакета (wildcard DNS или path-style), TLS-сертификат с SAN и верное время на ноде. Path-style спасает, когда wildcard-DNS ещё не заведён, но он же ограничивает часть клиентов. Карта портов.

Страница «Ресурсы» пустая, хотя плитка узла зелёная. Что смотреть?

Две частые причины: в модели нет серийника стойки/локации, либо не выполнен флаг -x и mongod живёт только на ведущей ноде. Проверка: pgrep -c mongod на каждой ноде и наличие серийника в модели. Обе причины чинятся данными и флагами, а не переустановкой. Серийник стойки — это данные модели, а не железо: его отсутствие ломает отрисовку, но не работу S3. Подробнее.


4. Холодное хранение

Лента: событие TAPE_CONNECTOR_UNAVAILABLE, а коннектор жив. Как это?

Продукт строит URL проверок без порта, поэтому они всегда идут на 443. Если коннектор живёт на адресе ноды продукта, 443 занят фронтом S3 → проверки получают 501 → CRITICAL каждые ~4 часа. Штатно коннектор — отдельное устройство со своим адресом в приватной сети. Проверка с ноды продукта: curl -sk https://<CONNECTOR>:443/sws/v2/media/fsmedlist/state?format=JSON должна вернуть классы кассет, а не 501. Подробнее.

Кассеты «пропали» и safety равен нулю. Что не так?

Продукт отбрасывает у штрихкода последние два знака (LTO-суффикс) и сравнивает результат с реестром. Запись 000281L8 не совпадает с 000281, кассеты считаются пропавшими, safety падает в ноль, включается предохранитель де-коммишна. Реестр ведут без суффикса; библиотека при этом отдаёт полную форму. Форма без суффикса — требование продукта, а не прихоть оператора. Подробнее.


Если ответа нет

Если симптом не сводится ни к одному из этих вопросов, порядок такой: чек-лист «первые 15 минут» → карта портов → словарь событий. Только после этого — переустановка, правка модели или обращение к вендору. Для работ на промышленной инсталляции — режим только чтения до отмашки оператора.


Источники

Нужен инженер? Разберу вашу ситуацию и скажу, что делать — по шагам, с проверками.

Обсудить задачу