Апгрейд aurora — план и чек-лист

Следующее действие (≈ через 2 недели): остановить сервер, вскрыть крышку, сфотографировать слоты RAM и M.2, проверить BIOS на NVMe → затем зафиксировать финальный список покупки и команды миграции. Всё ниже — чтобы не забыть.

Контекст и стратегия

aurora (192.168.10.3) — ноутбук ASUS VivoBook X570UD (i5-8250U). Сейчас держит прод dicechess-analytics (PG18 + API + UI) + Immich + ~13 контейнеров. Узкие места: RAM 7.6 ГБ (свопит) и маленький 128 ГБ SSD под все БД.

Дискретная GPU (GTX 1050) + батарея-UPS делают aurora идеальным узлом для Immich/медиа/always-on, а не для тяжёлой аналитики (жёсткий потолок 32 ГБ RAM). Поэтому план — фазовый:

  • Фаза 1 (сейчас, ~€155–210): апгрейд aurora под текущий масштаб (до ~1–3 млн партий).
  • Фаза 2 (только под 10 млн партий): выделенный mini-PC (≥32–64 ГБ), Postgres переезжает туда; aurora остаётся Immich-узлом. Raw-архив при любом раскладе живёт на dexus (см. Raw-архив — bronze-слой).

Реальные цифры прода (2026-06-19): 200k партий = 3.47 ГБ PG (positions 6.18M/2.4 ГБ — крупнейшая); ~17 КБ/партия; 10M ≈ 100–150 ГБ + RAM-bound.

Подтверждено аудитом (2026-06-19, по SSH)

  • RAM: потолок 32 ГБ (i5-8250U ограничен спецификацией Intel). DMI рапортует 64 ГБ/4 устройства — это теоретический максимум чипсета, не физический. Сейчас 1×8 ГБ Samsung DDR4-2400 в ChannelA-DIMM0, ChannelB-DIMM0 пуст. (Число физических слотов — подтвердить на фото; ожидаю 2.)
  • 128 ГБ M.2 SATA SSD (SK Hynix HFS128G39TND) — изношен: Wear_Leveling normalized 21 (~79% ресурса), 842 цикла, 11 reallocations, 15 830 ч. Не умирает, но во второй половине жизни → заменить.
  • 1 ТБ HDD (Seagate ST1000LM035) — здоров (PASSED, 0 reallocated): остаётся под фото Immich.
  • M.2-слот NVMe? — НЕ подтверждено. Текущий диск SATA; ревью-юниты X570UD ехали с NVMe (PCIe x2 Gen3), так что слот вероятно комбинированный. Проверить ключ разъёма + BIOS + тестовый NVMe.
  • Батарея: здоровье 75.6% (36.35/48.09 Вт·ч). По возможности — charge-limit ~80% в BIOS.
  • Детальная карта железа: репо homelab, docs/content/servers/asus-aurora/asus-x570ud.md (закоммичено).

Что купить (LV, цены 2026-06)

ЧтоМодель
RAM → 32 ГБ2×16 ГБ DDR4-2400/2666 SO-DIMM, 1.2 В, non-ECC (Crucial CT16G4SFRA266)86–100
Диск (если M.2 = NVMe)1 ТБ NVMe Gen3 (Crucial P3 / WD SN580)55–90
Диск (если M.2 = SATA-only)1 ТБ M.2 SATA (WD Blue SA510)~160
USB-M.2 бокс (для клона)любой12–20

Брать DRAM/высокий TBW (870 EVO, MX500, P3, SN580). НЕ брать BX500/A400 (QLC без DRAM) под БД с WAL.

Чек-лист разведки ПЕРЕД покупкой

  1. Софт (sudo, уже выполнено — результаты выше): dmidecode -t 16/17 (RAM-слоты), smartctl /dev/sdb /dev/sda (износ).
  2. BIOS: искать пункт M.2/NVMe storage mode; запомнить boot order; charge-limit батареи.
  3. Фото при вскрытии (отключить шлейф батареи перед работой!):
    • оба слота RAM (подтвердить число слотов + наклейка модуля);
    • M.2-разъём с диском и без → ключ (M-key ⇒ PCIe/NVMe; B+M ⇒ обычно SATA) + шёлкография рядом;
    • этикетка 128 ГБ модуля; 2.5”-отсек; радиатор/вентилятор.
  4. Тест NVMe (надёжнее всего): возвратный NVMe → lsblk/sudo nvme list. Опознался → берём NVMe.

Миграция (после покупки)

Сначала страховка: pg_dump -Fc аналитики на USB-бэкап; остановить стеки (docker compose down).

  • План N (предпочтительный — ретайрит изношенный диск): заменить 128 ГБ M.2 на свежий 1 ТБ (NVMe/M.2 SATA), клон root через USB-бокс (dd/Clonezilla) → growpart + pvresize + lvextend -l +100%FREE + resize2fs. OS+БД на быстром диске, Immich на HDD.
  • План S (запасной, без клона root): 2 ТБ 2.5” SATA вместо HDD; перенести /var/lib/docker + /mnt/immich_data (rsync, Docker data-root); 128 ГБ остаётся OS (но мониторить износ).

После апгрейда — тюнинг

  • vm.swappiness=10; fstrim.timer для SSD.
  • PG analytics (делит 32 ГБ с Immich/paperless-pg + ML): старт shared_buffers=6GB, effective_cache_size=14GB, work_mem=64MB, maintenance_work_mem=1GB + memory-лимиты контейнерам.

Связано: Raw-архив — bronze-слой, Переход на Raspberry Pi 4, глубокий анализ дискового пространства.