Compare commits

...

5 Commits

Author SHA1 Message Date
95168e301a meta(handoff): NEXT_SESSION — RUVDS DECOMM 2026-07-21, rimiz DNS flipped, 0 public domains on RUVDS
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-21 10:18:52 +03:00
ec3ac79272 meta(ruvds): rimiz.ru DNS flipped to VDS — zero public domains left on RUVDS
Authoritative ns1/ns2.reg.ru serve 89.253.255.94 for rimiz.ru + www.
Public resolvers still cache 80.64.31.36 (TTL 86400), clears in 24h.
RUVDS has no public domain pointing at it anymore.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-21 10:18:29 +03:00
535ed6170f meta(ruvds): DECOMM 2026-07-21 — powered off, forgotten
ruvds-iis-host (80.64.31.36) decommissioned at provider. Final offsite
snapshot verified on kreknin 2026-07-21 (8.8G, 7-day retention).
Only public domain still on RUVDS was dead rimiz.ru (404 since 2026-05-19);
all snolla-fleet migrated to VDS (stacks 17-22). Local .NET admin
independent of RUVDS. on-snolla runbook rollback-ref updated
(RUVDS no longer rollback-target — image-tag only).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-21 10:14:09 +03:00
vitya
50e263860d ops(on-snolla): rename site alias on->internal (admin at internal.snolla.com/admin)
- Sites.Alias+LoweredAlias on->internal (siteId B9ECDB50; PrimaryDomain on.snolla.com kept).
- Web.config primaryAlias on->internal (catch-all default-site; without it the whole
  catch-all NRE-500s on every request — primaryAlias references the renamed alias).
- hosts: on.snolla.com->internal.snolla.com under # snolla-local-admin marker.
- setup-local-snolla-admin.ps1 aliases array updated.
- runbook + NEXT_SESSION + memory updated.

VDS prod on.snolla.com unaffected (snolla-app uses config.siteId, not alias) — verified
byte-identical + smoke GREEN after rename. Incident: elevated hosts edit emptied hosts
to 0B (Get-Content -Raw returned null in RunAs context) — restored from Windows default
header + snolla-local-admin block. Memory snolla-catch-all-primaryalias-depends-on-alias.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 13:33:09 +03:00
vitya
bec7784ffa meta(handoff): write NEXT_SESSION — Task B (on-snolla) CUTOVER DONE 2026-07-20
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 13:18:47 +03:00
4 changed files with 88 additions and 50 deletions

View File

@@ -1,62 +1,73 @@
---
_last_updated_: 2026-07-20T10:30:00Z
session_id: 2026-07-20-snolla-local-admin-restore-done
prev_session_id: 2026-07-20-snolla-local-admin-on-snolla-design
_last_updated_: 2026-07-21T00:00:00Z
session_id: 2026-07-21-ruvds-decomm
prev_session_id: 2026-07-20-on-snolla-cutover-done
---
# Next session handoff
## Эта сессия — Task A DONE (local .NET admin restored). Task B → СЛЕДУЮЩАЯ сессия.
## Эта сессия — RUVDS DECOMM 2026-07-21. Погашен, забыт.
Решения оператора (2026-07-20): **Task B (on.snolla.com → VDS) отложен в следующую сессию.**
Зафиксированные ответы для Task B: **repo = `victor/on.snolla.com`**; **admin-креды = в БД**
(`MoreThenCms.dbo.Accounts`, читать через тот же `snolla` SQL-user / SA из `pass mssql-vds/sa-password`).
Task A (local .NET admin) — DONE, push'нуто (`c196964d`+`863b11be`).
[[ruvds-iis-host]] (80.64.31.36) декоммишнен 2026-07-21. Аудит: на RUVDS не осталось живого — весь snolla-тираж на VDS (стеки 17-22), локальный .NET-админ независим. Финальный offsite-снимок на kreknin верифицирован (8.8G, 7-day retention, прогон 04:30 success). rimiz.ru/www.rimiz.ru (последний публичный домен на RUVDS, мёртвый 404) — DNS переправлен оператором на 89.253.255.94, авторит. NS verified. **На RUVDS — 0 публичных доменов.** Коммиты `535ed617`, `ec3ac792` запушены.
🟢 **[snolla-local-admin-restore] ЗАКРЫТА.** Локальный catch-all IIS-сайт `snolla` поднят.
Спека: `.wiki/concepts/snolla-local-admin-and-on-snolla-migration-design.md` (commit `b1b0092c`).
Tаска: `.tasks/snolla-local-admin-restore.md` (as-built). Коммиты: `b1b0092c` (design),
`d4278e79` (handoff), `c196964d` (Task A done + scripts).
### ОСТАЁТСЯ ОПЕРАТОРУ (один ручной шаг)
- **Отказаться от RUVDS у провайдера** — личный кабинет https://ruvds.com (креды в `pass ruvds-iis/full-env`). Машина выключена/забыта на нашей стороне; cancelling у провайдера = экономия денег. Не горит — daily-бэкап с RUVDS прекратится сам (таска умрёт с хостом), это ОК: offsite-копия уже на kreknin, локальный админ жив.
### As-built (отличия от спеки)
- **Selective copy ~100MB** (НЕ 8.76GB): tar-over-SSH исключил stale `App_Data/{assets,galleries,themes,uploadCache}` + `bin.old`. Команда в task-файле.
- **Repoint НЕ нужен** — RUVDS Web.config уже на `mssql.kzntsv.site,1433;Catalog=MoreThenCms;User Id=snolla;Password=fXkH4@8O%3pc` (тот же snolla SQL-user что stostayer.old) + MinIO S3 drop-in с **реальными ключами** (placeholder_count=0).
- Elevated setup: `scripts/local-snolla-admin-restore/setup-local-snolla-admin.ps1` (ASCII-only — PS5.1 BOM-less ломается на Cyrillic/em-dash байтах, урок). Запуск: `Start-Process -Verb RunAs` (UAC-клик).
- **Smoke GREEN**: `tandemmebel/labtools/labtoolspro/emspb/kupimknigi/on .snolla.com/admin/account/login` → 200, реальная MoreThenCms-логинформа (`<title>SNOLLA</title>`, `<form action="/admin/login">`).
- Catch-all routing: `appSettings primaryDomain=snolla.com primaryAlias=on` (default-site=on.snolla.com "Internal Site"), siteId из Host-header (нет siteId в appSettings).
- RUVDS SSH: plink `-hostkey SHA256:r/vSKU5WzH4B8T7RiXyXlg0D8XZ9hlBxzmdrPzuPWzE`, креды `pass show ruvds-iis/full-env` (password auth, RUVDS_IIS_PASS). PS-команды через `-EncodedCommand` (UTF-16LE base64) — stdin-`powershell -Command -` виснет.
- hosts: marker `# snolla-local-admin``127.0.0.1 <6 aliases>.snolla.com`. FW `block-inbound-80-snolla-local`.
### Предыдущая сессия — Task B (on.snolla.com → VDS) DONE 2026-07-20.
on.snolla.com live на VDS как Node snolla-app `@snollajs/snolla` 0.42.1, за traefik, LE-серт issued.
~~Прод-оракул был RUVDS IIS (80.64.31.36) — не тронут, жив (rollback = revert DNS).~~ **RUVDS DECOMM — rollback только образ-тегом (см. on-snolla-vds-deploy-runbook § Rollback).**
### MinIO upload-acceptance (ручной follow-up оператора)
Логин в админку → залить тест-ассет → проверить объект в `minio.kzntsv.site` bucket=assets. S3-провайдер был admin-self-test green на RUVDS, Web.config 1:1 → должно работать. Креды админа см. open Q ниже.
🟢 **[on-snolla-vds-migration] ЗАКРЫТА.** Спека: `.wiki/concepts/snolla-local-admin-and-on-snolla-migration-design.md` §Task B.
Runbook (as-built + gotchas): `.wiki/concepts/on-snolla-vds-deploy-runbook.md`. Таска: `.tasks/on-snolla-vds-migration.md` (as-built).
## Recent commits
- c196964d feat(snolla-local-admin): RESTORE DONE — local .NET admin live (6 /admin URLs)
- d4278e79 meta(handoff): write NEXT_SESSION — snolla local admin + on-snolla design
- b1b0092c design(snolla): local .NET admin restore + on.snolla.com VDS migration
### As-built
- **Репо** `victor/on.snolla.com` (git.kzntsv.site, запушен) — структура-калька tandemmebel.ru. Commit `473923e494db`.
- **Образ** `registry.kzntsv.site/on-snolla:473923e494db` (+:latest), собран на VDS (обход traefik-499).
- **Стек Portainer 22** (`on-snolla`), `mem_limit 512m`, 8 env-секретов (переиспользованы из tandemmebel стека 20 — общая snolla-инфра), rule `Host(on.snolla.com)`, LE-серт CN=on.snolla.com (YR1, until 2026-10-18).
- **DNS**: reg.ru `on.snolla.com` A `80.64.31.36``89.253.255.94` (operator flip; авторит. NS ns1/ns2.reg.ru verified → VDS before rule swap, LE-порядок соблюдён).
- **Реконструкция**: `views/layout.liquid` = bootstraptor-лендинг **byte-identical** прод-HTML (28413 байт, verified direct diff + live). Content-поля пустые → лендинг baked в layout. Form "Join us" baked (POST `/` → snolla `forms` middleware → `form_ajax_response.liquid`). StaticPages `/yandex_…` + `/4a052808276c.html`. `/c` = 404 dead-link (parity с продом — prod /c тоже 404; snolla sitemap несёт его → 3/3 loc parity).
- **Completeness-gate GREEN**: sitemap 3/3 parity {/,/c,/yandex}, homepage + /yandex byte-identical, 0 регрессий. Live-smoke external: TLS verify=0, `/`+`/robots.txt`+`/sitemap.xml`+`/yandex`=200, `/c`=404.
### Гочи (в runbook + memory)
- **snolla robotsTxt крашится на undefined `app.locals.domain`** — on.snolla.com не имеет row в MoreThenCms `Domains`. Фикс в `apps/web/index.js`: после initApp, если `!app.locals.domain`, synthesized `{robotsTxt: site.robotsTxt}`. Без shared-DB мутации. Memory `snolla-robotstxt-crash-no-domains-row`.
- **Form "Join us" не имеет Liquid form-tag** — форма HTML baked в layout, POST — `forms` middleware (мэтч по Path `/`). Legacy reCAPTCHA v1 мертва — parity, не чиним.
- **Portainer JWT short-lived** — в node-скрипте GET stack + GET file + PUT: jwt из GET-фазы протух к PUT (первый PUT 401). Re-auth прямо перед PUT.
- **hosts override на воркстейшне** — Task A оставил `127.0.0.1 on.snolla.com` в hosts. External verify прод-on.snolla.com = только через `curl --resolve on.snolla.com:443:89.253.255.94`.
### MinIO upload-acceptance (ручной follow-up оператора — НЕ сделано)
Логин в админку on.snolla.com (на RUVDS .NET, `/admin`) → залить тест-ассет → проверить объект в `minio.kzntsv.site` bucket=assets. S3-провайдер был admin-self-test green на RUVDS; Web.config 1:1 → должно работать. Креды админа в `MoreThenCms.dbo.Accounts` (SQL-user `snolla` / SA `pass mssql-vds/sa-password`).
## Recent commits (.admin)
- 4c4d1938 feat(on-snolla): CUTOVER DONE — on.snolla.com live on VDS (stack 22, LE cert)
- 6b5cb5fa feat(on-snolla): Portainer stack 22 source-of-truth (staging Host, mem_limit 512m, 8 env secrets)
- 73ad7669 (projects-meta) close vehicles-loader-redeploy-per-group-rate-diff 🟢
- 019f5bae (projects-meta) close on-snolla-vds-migration 🟢
- (on.snolla.com repo) 473923e feat(on-snolla): scaffold snolla-app — byte-identical landing reconstruction
## Open треки
| Трек | Готовность | Entry-point |
|---|---|---|
| **on-snolla-vds-migration (Task B)** | ⚪ ready, **unblocked** (Task A done), ОТЛОЖЕН в след. сессию | `.tasks/on-snolla-vds-migration.md`; spec §Task B. Решения зафиксированы: repo=`victor/on.snolla.com`, admin-креды в `MoreThenCms.dbo.Accounts` (SQL-user `snolla` или SA). Шаг 1: реконструкция Liquid из `http://on.snolla.com/` (hosts→127.0.0.1, локальный IIS рендерит из той же DB — контент == прод) + `/admin` (контент-дерево). |
| vehicles-loader 0.4.1 runtime verify | 🔴 active — просрочено с 07-14 | SSH `new.stostayer.ru:20435`, проверить importRun. Откат: tag 0.4.0. |
| books-vds → vds-kzntsv консолидация | оценено, не лезет по RAM/disk | Решение за user. |
| MinIO upload-acceptance on.snolla (ручной) | ⚪ follow-up оператора | Логин `/admin` (RUVDS) → тест-ассет → MinIO bucket=assets. |
## Спроси user'а (ответы зафиксированы 2026-07-20)
- **Push** — сделан (`c196964d`+`863b11be` → origin/master).
-**Task B repo name**`victor/on.snolla.com`.
-**Admin-креды** — в БД `MoreThenCms.dbo.Accounts` (читать SQL-user'ом `snolla` или SA из `pass mssql-vds/sa-password`); логин-форма `/admin/account/login`.
-**Task B старт** — в СЛЕДУЮЩЕЙ сессии (эта — wrap-up после Task A).
## Спроси user'а
- (нет pending-решений — Task B закрыт полностью)
## Не делать (preemptive guards)
- **НЕ пушить без добла** (Rule 4).
- **НЕ SSH-action на RUVDS без добла** (read-only verify уже сделан; дальше — только если нужно).
- **НЕ ставить URL Rewrite rule** локальному админу (нет traefik → `:port` leak).
- **НЕ деплоить vehicles-loader** без rateDiff; **НЕ retry-push** в docker.stostayer.ru; **НЕ netplan** на vds-kzntsv; **НЕ сжимать** books на .94.
- **hosts override активен** — `on.snolla.com` → 127.0.0.1 теперь (боевой on.snolla.com доступен только через `--resolve ...:443:80.64.31.36` или off-hosts).
- **НЕ пушить без добла** (Rule 4) — на эту сессию добл был ("разрешаю всё, погнали").
- **НЕ сжимать** books на .94; **НЕ netplan** на vds-kzntsv.
- **hosts override активен** — `internal.snolla.com` → 127.0.0.1 (локальный админ Task A; алиас `on` переименован в `internal` 2026-07-20). Боевой on.snolla.com (VDS) с воркстейшна — только через `--resolve :443:89.253.255.94` или off-hosts. **Публичного on.snolla.com/admin не существует** (никогда не было) — админка только локальная: `http://internal.snolla.com/admin`.
### Alias rename `on`→`internal` (2026-07-20, follow-up оператора)
- `Sites.Alias`+`LoweredAlias`: `on``internal` (siteId B9ECDB50, PrimaryDomain остался `on.snolla.com`).
- `C:\sites\snolla\Web.config` `primaryAlias`: `on``internal` (иначе catch-all NRE-500 на ВСЕХ запросах — primaryAlias ссылается на переименованный алиас).
- hosts: `on.snolla.com``internal.snolla.com` под маркером `# snolla-local-admin`.
- **Инцидент:** я обнулил hosts своей elevated-правкой (Get-Content -Raw в RunAs-контексте вернул пусто → Set-Content записал пусто). Восстановил: Windows default header + snolla-local-admin блок (с internal.snolla.com). LAN-DNS CMS-перехват через DNS-резолвер, не hosts → потерь нет. Урок в memory `snolla-catch-all-primaryalias-depends-on-alias`.
- VDS prod on.snolla.com НЕ затронут (snolla-app использует config.siteId, не alias) — byte-identical, smoke GREEN.
- **НЕ откатывать DNS on.snolla.com** без явного запроса — cutover LIVE, RUVDS IIS жив как rollback-target.
## Memory updates за сессию
- (candidate) **PS5.1 BOM-less .ps1 ломается на UTF-8 Cyrillic/em-dash** — cp1251 0x94=`"` байт ломает string-терминаторы; BOM-less PS-скрипты = ASCII-only.
- (candidate) **SNOLLA admin addressing = `<alias>.snolla.com/admin`** catch-all IIS, siteId из dbo.Sites по alias (primaryAlias `on` = default). DB user `snolla` работает на MoreThenCms+stostayer catalogs.
- Обновить entity `windows-recovery-host.md`: IIS-сайт `snolla` восстановлен 2026-07-20 (локальный админ-хаб, не прод — прод на RUVDS).
- **NEW** `snolla-robotstxt-crash-no-domains-row` — snolla sites без Domains row крашатся на /robots.txt; фикс в index.js domain-drop fallback.
- (candidate) on.snolla.com мигрирован на VDS 2026-07-20 (stack 22, LE). Тираж snolla на VDS: labtools(17)/emspb(18)/labtools-pro(19)/tandemmebel(20)/kupimknigi(21)/on-snolla(22).
- (candidate) обновить entity `windows-recovery-host.md`: on.snolla.com более не обслуживается локальным IIS как прод — прод на VDS; локальный IIS `snolla` = только админ-хаб (hosts override on.snolla.com→127.0.0.1 теперь pointing на админ-копию, не прод).

View File

@@ -36,7 +36,13 @@ Culture `en`. Спека: [[snolla-local-admin-and-on-snolla-migration-design]]
- `/c`**404** (stale dead-link в .NET sitemap; snolla-app sitemap тоже его несёт → parity `/`+`/c`+`/yandex`).
- Theme assets `/themes/c406a987ebe14244b0eefe7b8f959a6f/{css,js,images}/*` — из MinIO bucket `themes` (snolla
`themeFiles` middleware; пути literal в `layout.liquid`).
- `/admin` остаётся на RUVDS .NET — НЕ часть этого snolla-app.
- `/admin` **публичного `on.snolla.com/admin` не существует** (никогда не было: RUVDS catch-all IIS не
маршрутизировал /admin на публичном on.snolla.com — cert на 80.64.31.36:443 SNI on.snolla.com = чужой
`CN=kupimknigi.spb.ru`, /admin → 404). Админка — только **локальный catch-all IIS `snolla`** (Task A,
воркстейшн). Site alias переименован `on``internal` (2026-07-20), доступ = `http://internal.snolla.com/admin`
через hosts override → 127.0.0.1 → 302→login. **Web.config `primaryAlias`** тоже обновлён `on``internal`
(default-site resolution; иначе catch-all NRE-500 на ВСЕХ запросах — primaryAlias ссылается на алиас,
переименование сайта без обновления primaryAlias ломает весь catch-all). НЕ часть snolla-app.
## Cutover 2026-07-20 (первый вынос на VDS — DNS-gated)
1. **Build на VDS** (archive `473923e494db``~/build/on-snolla` → `docker build -f deploy/Dockerfile
@@ -79,11 +85,11 @@ Culture `en`. Спека: [[snolla-local-admin-and-on-snolla-migration-design]]
(иначе попадёшь в локальный IIS). См. memory `workstation-lan-dns-serves-local-cms-copy`.
- **Portainer JWT short-lived** — GET stack + GET file + PUT в одном скрипте: jwt из GET-фазы может протухнуть
к PUT. Re-auth (`POST /api/auth`) прямо перед PUT. API-key `ptr_*` даёт 401 (см. [[portainer-stack-management-vds]]).
- **Образных rollback-тегов пока нет** — первый deploy, `473923e494db` = `:latest`. Rollback = revert DNS (RUVDS жив).
- **Образных rollback-тегов пока нет** — первый deploy, `473923e494db` = `:latest`. ~~Rollback = revert DNS (RUVDS жив).~~ RUVDS DECOMM 2026-07-21 — rollback только образ-тегом.
## Rollback
- **DNS (предпочт, мгновенный):** revert reg.ru `on.snolla.com` A → `80.64.31.36` (RUVDS IIS жив, не тронут).
- **Образный (будущие bump'ы):** PUT стека 22 назад на предыдущий тег (rollback-теги в registry).
- ~~**DNS (предпочт, мгновенный):** revert reg.ru `on.snolla.com` A → `80.64.31.36` (RUVDS IIS жив, не тронут).~~ **НЕАКТУАЛЬНО с 2026-07-21** — [[../entities/ruvds-iis-host]] DECOMM (погашен у провайдера). RUVDS более не rollback-target.
- **Образный (рабочий):** PUT стека 22 назад на предыдущий тег (rollback-теги в registry). `473923e494db` = `:latest` — первый deploy, предыдущего тега нет; с этого дня ведём rollback-теги на каждый bump.
## Связанное
- on.snolla.com admin (`/admin`) остаётся на RUVDS .NET — catch-all IIS `snolla` (см. [[snolla-local-admin-and-on-snolla-migration-design]] §Task A).

View File

@@ -1,15 +1,36 @@
---
title: RUVDS IIS Host (Windows Server 2025 Core) — 80.64.31.36
title: RUVDS IIS Host (Windows Server 2025 Core) — 80.64.31.36 — DECOMM 2026-07-21
type: entity
tags: [hardware, vds, ruvds, windows, iis, cms, snolla, kupimknigi]
tags: [hardware, vds, ruvds, windows, iis, cms, snolla, kupimknigi, decommissioned]
sources: [../sources/iis-migration-to-ruvds-2026-05-23.md, ../sources/ruvds-backup-daily-kreknin-2026-05-24.md]
updated: 2026-06-11
updated: 2026-07-21
---
# RUVDS IIS Host
# RUVDS IIS Host — ⛔ DECOMM 2026-07-21
> **Декоммишнен 2026-07-21.** Погашен у провайдера, забыт. Деньги экономим. Финальный offsite-снимок на kreknin верифицирован (см. § Decommission ниже). Rollback-target для всех мигрированных snolla-сайтов **более недоступен** — откат только образ-тегом в registry / DNS уже на VDS.
>
> Что ниже — историческая запись живого хоста (куплен 2026-05-23, DECOMM 2026-07-21, срок жизни ~2 месяца). Креды/доступ сохранены в `pass` ретроспективно, хост выключен.
Облачный Windows-VDS у [RUVDS](https://ruvds.com), DC Королёв. Куплен 2026-05-23 как destination для миграции IIS-хостинга с [[windows-recovery-host]] — closing SPOF домашней машины для prod CMS сайтов (snolla CMS multi-tenant). Это **отдельный VDS** от [[vds-kzntsv]] (Rusonyx Linux, инфра-стек): RUVDS = только IIS catch-all для CMS hostnames, Rusonyx VDS = gitea/verdaccio/registry/DB park.
## Decommission (2026-07-21)
Сессия 2026-07-21: аудит «что осталось на RUVDS перед отказом от провайдера».
**Живого публично не осталось** — всё snolla-тираж уехало на VDS:
- Публичный DNS → RUVDS (`80.64.31.36`): **только `rimiz.ru`/`www.rimiz.ru`** — и тот труп (HTTP 404 на RUVDS; сломан с 2026-05-19 iis-migration cleanup, не чинен, не мигрирован).
- Всё остальное → VDS `89.253.255.94`: `on.snolla.com`, `snolla.com` apex, `kupimknigi.spb.ru`, `tandemmebel.ru`/www, `labtools.ru`/www, `labtools.pro`/www, `emspb.ru`/www, `pilorama98.ru`/www, `maljarka.tandemmebel.ru`, `ics-artmaterials`/`pilorama98`/`sestech`/`artmone`/`rimiz` `.snolla.com`. Smoke VDS 2026-07-21: 200 (кроме `snolla.com` apex — 404 TRAEFIK DEFAULT CERT, нет Host-правила; мёртв везде, отдельная мелочь, НЕ блокировала DECOMM).
- VDS snolla-стеки Portainer: labtools(17)/emspb(18)/labtools-pro(19)/tandemmebel(20)/kupimknigi(21)/on-snolla(22).
- Локальный .NET-админ (catch-all IIS `snolla` на воркстейшне, [[snolla-local-admin-and-on-snolla-migration-design]] §Task A) от RUVDS НЕ зависит — читает `mssql.kzntsv.site` + `minio.kzntsv.site` (оба на vds-kzntsv).
**Финальный offsite-снимок верифицирован 2026-07-21:**
- `RUVDS-Backup-Daily` последний прогон 2026-07-21 04:30:01, `LastTaskResult=0`, 0 missed. DONE 72 мин (лог `C:\ProgramData\backup\logs\2026-07-21.log`): IIS-config snapshot + 13 certs exported (non-exportable pvt-key warning benign) + rclone sync snolla/applicationHost/iis-backup/certs/ssh-config + retention keep 7.
- kreknin `/volume1/NetBackup/ruvds-iis/2026-07-21/` = **8.8G**, создан 05:37, полный (`sites/`+`iis-config/`+`iis-backup-webconfiguration/`+`certs/`+`ssh-config/`). 7 снимков в retention (2026-07-15…07-21).
- Динамика (.NET-админ не несёт) — MSSQL+MinIO на vds-kzntsv, бэкапятся отдельно (см. [[backup-inventory-2026-06]]). Сам .NET-админ = статичные бинарники MoreThenCms + S3 drop-in, восстанавливаемо из source + локальная копия на воркстейшне.
**Loose end — RESOLVED 2026-07-21:** `rimiz.ru`/`www.rimiz.ru` A-запись переправлена оператором на `89.253.255.94`. Авторит. NS ns1/ns2.reg.ru = `89.253.255.94` (verified); public resolvers ещё держат stale `80.64.31.36` по TTL 86400 — сбросится в сутки. На RUVDS больше НИ ОДИН публичный домен не смотрит.
## Hardware / tariff
- **Vendor:** RUVDS (https://ruvds.com)

View File

@@ -11,7 +11,7 @@ Import-Module WebAdministration
$siteName = 'snolla'
$poolName = 'snolla'
$physPath = 'C:\sites\snolla'
$aliases = @('tandemmebel.snolla.com','labtools.snolla.com','labtoolspro.snolla.com','emspb.snolla.com','kupimknigi.snolla.com','on.snolla.com')
$aliases = @('tandemmebel.snolla.com','labtools.snolla.com','labtoolspro.snolla.com','emspb.snolla.com','kupimknigi.snolla.com','internal.snolla.com')
Write-Host "== 1. AppPool $poolName =="
if (Test-Path "IIS:\AppPools\$poolName") {