Коротко. Четыре коротких списка для поля: подготовка, установка, приёмка, авария. Каждый пункт — это гейт с ожидаемым значением, а не «галочка о намерении». Если значение не совпало — дальше не идти. Полные разборы — по ссылкам в каждом разделе.
1. Как пользоваться
- Пункт считается закрытым только по живому выводу: код ответа, статус, число процессов.
- «Сделали» без числа не считается. «Должно работать» — не гейт.
- Порядок пунктов не менять: следующий слой опирается на предыдущий.
- Чек-лист не заменяет статьи: он говорит что проверить, статья — почему и как чинить.
2. Подготовка (до выезда и до первого запуска)
Полный разбор: Чек-лист подготовки к установке.
- Профиль железа известен для каждого узла и лежит в
/opt/ampli/cfg/product/hardware/types/. - Имена интерфейсов сняты с каждой машины отдельно (
ip -br link) — они различаются между узлами. - Адреса по MAC, а не по именам портов; в модели нет дублей MAC.
- VLAN и шлюзы: management, storage, BMC — по одному шлюзу на сегмент.
- PXE-инфра:
curl -sI http://<ADMIN_NODE>:8080/<IMAGE>.iso→200;/pxe/отдаёт реальный файл, а неLOCALBOOT; в сегменте один DHCP и один TFTP. - BootOrder/BootMode: сетевой порт первым на установку,
UEFIвключён; после установки —Hdd+UEFI. - NTP настроен до установки; время на узлах совпадает.
- Серийник стойки известен — без него страница «Ресурсы» может быть пустой.
- Очередь взята с рабочего узла и поправлена, а не написана с нуля;
model_data_path— абсолютный путь,nr_of_nodesзадан осознанно. - Политика DSS под реальное число блоксторов:
w + s ≤ N(см. Формула политики DSS).
3. Установка (stage 0 → 3)
Подробно: install-ng: фазы, флаги и маркер, Флаги install-ng, PXE не грузится, Федерация: путь A и путь B.
- Вайп дисков (если железо не чистое):
swapoff -a→mdadm --stop --scan→zero-superblock→wipefs→partprobe. Гейт:/proc/mdstat=unused devices: <none>,blkidпуст,/proc/swapsпуст. - Stage 1 (ОС): узел грузится в live,
iso_installerставит ОС на диск. Гейт:findmnt -o SOURCE /≠overlay; узел пингуется по management-адресу. - Stage 2 (initialize):
marvin_installдоходит до конца. Гейты:/usr/bin/marvin_installисчез,/tmp/marvin_initialize.rcесть,initial_environment.jsonсоздан, вdeploy.log—Done. install-ng -e: импорт очереди и профиля железа. Гейт:rc=0и в environment появилисьadditional_packages.install-ng -i -m: ведущая ONLINE, свой DHCP/PXE поднят.install-ng -I -n <N>: ноды получают ОС по PXE. Гейт:pgrep -c mongodи статусы нод меняются сNOTCONFIGUREDнаONLINE.install-ng -m -a -AST -C -ASC: блоксторы, arakoon, аккаунты, колонка. Гейт: колонкаCONFIGURED+ACTIVE,connections= 3.install-ng -x: mongod раскатан на все management-ноды. Гейт:pgrep -c mongodна каждой ноде равен числу кластеров.- Маркер финала:
/tmp/.unattended_install_finishedудалён перед прогоном и появился после;pgrep -f "[i]nstall-ng.py"пуст.
4. Приёмка (11 проверок)
Подробно: install-ng: фазы, флаги и маркер §6 и Коды возврата и маркеры.
| # | Проверка | Норма |
|---|---|---|
| 1 | Федерация | curl -sk https://127.0.0.1:8443/federated/_status/ → 200 быстрее 50 мс |
| 2 | Барометр DSS | ok |
| 3 | Неймспейсы | у всех status: ok |
| 4 | Durability в GUI | selectedstoragepolicy не null |
| 5 | Политика | w + s ≤ N |
| 6 | S3 запись | PUT/GET round-trip |
| 7 | S3 права | PUT от пользователя → 200 |
| 8 | Почта | verify → 200, задача SUCCESS |
| 9 | Вентиляторы в модели | NOTFOUND пусто, число доков совпадает с железом |
| 10 | NIC в модели | число портов = реальным, без дублей eth*/enp* |
| 11 | GUI | https://<MGMT_IP>:10443 — дашборд без пустот |
Дополнительные гейты, без которых приёмка не закрыта: машины ONLINE и bootmode=DISK;
приложения — NOTCONFIGURED = 0; каждый mongod-кластер по 3 приложения; блоксторы — число
партиций равно числу маунтов по плану раскладки.
5. Обслуживание
Полные разборы: Словарь событий, Карта портов. Периодичность задаёт регламент эксплуатации; ниже — обязательный минимум при каждом визите.
- Полевой health-check (около 30 секунд на узел, только чтение): время и NTP, S3-фронт,
haproxy, blockstore-маунты и заполнение, failed units. Код
0— нетFAIL;1— есть. - События: просмотреть
LIVEза период; отдельно — ростoccуMACHINE_DOWN,DISK_NOT_FOUND,PSU/FAN_NOT_FOUND, ленточных. - Диски:
smartctl -Hпо проблемным,mdstat— все массивы[UU]. - Лента: сверить каталог библиотеки с реестром продукта, проверить форму штрихкодов
(продукт отбрасывает LTO-суффикс) и
tape safetyв метриках. - Сертификаты: срок действия SSL; продукт предупреждает об истечении за 6 месяцев.
- Резервные копии конфигурации — до любых изменений, вне каталогов продукта.
- После любого изменения — повторить п. 1 и убедиться, что новых
CRITICALнет.
6. Авария: первые 15 минут
Порядок — только чтение, ничего не менять до объяснения причины.
- Зафиксировать симптом: что именно не работает — GUI, S3, узел, лента. Один симптом — одна гипотеза, а не «всё сломалось».
- Проверить узел по management-сети:
ping <MGMT_IP>, вход по SSH,uptime. - Проверить storage-кольцо:
ping <STORAGE_IP>со всех нод. ПриMACHINE_DOWNпри живой ноде это первое, что смотрят. - Проверить часы:
ntpq -c rv, наличие*вntpq -p. Уехавшие часы дают S3403всем клиентам при зелёном GUI. - Проверить S3-фронт:
curl -sI http://127.0.0.1/→307иServer: Quantum-ActiveScale. - Проверить процессы:
pgrep -c mongod,pgrep -af haproxy,ss -ltnpпо ключевым портам. - Прочитать события: какие
LIVE, какиеdetails, что говоритmona.log. - Только теперь — штатное действие: догон фазы, правка модели, замена диска, правка VLAN.
Если на шаге 2–3 узел и сеть живы, а симптом остаётся — не переустанавливать. Переустановка стирает улики и почти всегда удлиняет простой.
7. Анти-чеклист (чего не делать)
- Не переустанавливать узел до разбора: часть «поломок» — сеть, часы и модель.
- Не менять статусы в модели «на глаз»:
NOTMANAGED— штатный инструмент, но только для портов/дисков, которые действительно не используются. - Не править рендер конфигов руками: следующий
-mвернёт битое или затрёт правку. - Не гонять полный прогон
install-ng, пока причина падения не понятна. - Не закрывать события
ignoreдо проверки: событие — единственная улика. - Не менять VLAN на свиче без
write memoryи проверкиstartup-config. - Не выдавать лабораторный обход за штатный путь: обход — временная мера с планом замены.
8. Источники
- X200 Getting Started Guide (дата доступа 2026-11-07)
- Software Documentation Center (7.3) (дата доступа 2026-11-07)
- Наша практика (обезличено): приёмка 3-нодных кластеров по 11 проверкам, полевой health-check.