Backlog: перенести задачи из tududi (диск-алерты, logrotate, аудит безопасности)

This commit is contained in:
av
2026-07-13 19:30:53 +03:00
parent 30358de9d9
commit f110cf7208
4 changed files with 50 additions and 1 deletions
+5 -1
View File
@@ -8,7 +8,8 @@
Приоритет — грубая оценка «ценность / стоимость», не обязательство к порядку.
Пункты с пометкой _(ансибл-ревью)_ пришли из ревью плейбуков
[`docs/drafts/ansible-review.md`](../drafts/ansible-review.md) (2026-05-25).
[`docs/drafts/ansible-review.md`](../drafts/ansible-review.md) (2026-05-25);
_(tududi)_ — перенесены из инбокса задач в tududi (проект Pet Project Server).
Драфты `timeweb.md` и `timeweb-migration-log.md` — исторические логи уже
завершённой миграции в Timeweb (cutover 2026-05-23), в беклог не входят.
@@ -22,8 +23,10 @@
- [Gitea runner on-demand в Yandex Cloud](gitea-runner-on-demand.md) — раннер активен только во время сборки; webhook→Cloud Function стартует ВМ, probe/decide гасят по idle; экономия ~95%
- [Синхронизация общих Ansible-ролей](shared-roles-sync.md) — `owner`/`eget`/`secrets` дублируются между репозиториями и дрейфуют; канон в ansible-shared + rsync-таски invoke
- [Уведомления о размере приложений и диске](disk-usage-alerts.md) — алерты на заполнение диска и аномальный рост data-томов; сервер ресурсно ограничен _(tududi)_
- [Composable-роль `backup`](ansible-backup-role.md) — бэкап — самый чистый шов для extraction (одинаков у всех, различается только список targets) _(ансибл-ревью)_
- [Точечные фиксы идемпотентности и баг имени play](ansible-quick-fixes.md) — быстрые правки: имя play в wanderer, `changed_when` в netdata/eget, backup-targets через template _(ансибл-ревью)_
- [Аудит безопасности сервера](security-audit.md) — разовый проход по экспозиции, Authelia, правам пользователей и секретам; находки дробятся в беклог _(tududi)_
## Низкий
@@ -31,3 +34,4 @@
- [Причесать роль `owner` под конвенции](ansible-owner-role-cleanup.md) — `assert` вместо `fail`+`when`, `loop` вместо `with_*`, добавить `meta`/README _(ансибл-ревью)_
- [Инвентарь: `host_vars`, группы, точечный `become`](ansible-inventory-hostvars.md) — хост-специфику в `host_vars/server.yml`, хост в именованную группу, глобальный root → точечный become _(ансибл-ревью)_
- [Фоновая зачистка стиля и конфигурации](ansible-style-nits.md) — sudoers.d, профиль ansible-lint, `ansible.cfg`, кавычки, `cache_valid_time` _(ансибл-ревью)_
- [Logrotate для логов бэкапов](backup-logs-logrotate.md) — логи `backup-all.py`/restic копятся без ротации _(tududi)_
+13
View File
@@ -0,0 +1,13 @@
# Logrotate для логов бэкапов
**Приоритет:** низкий
Логи бэкапов на сервере (вывод `backup-all.py` / restic) копятся без ротации —
со временем растут неограниченно. Настроить logrotate (отдельный файл в
`/etc/logrotate.d/` через `copy`/`template`) с разумным retention и сжатием.
Завести в `playbook-backups.yml` рядом с настройкой самих бэкапов.
Из tududi (проект Pet Project Server).
Связано: playbook-backups.yml, files/backups/backup-all.py,
project_restic_intelligent_tiering.
+18
View File
@@ -0,0 +1,18 @@
# Уведомления о размере приложений и заполнении диска
**Приоритет:** средний
Сервер ресурсно ограничен (диск небольшой, RAM ~80% на штатной нагрузке —
`project_server_specs`), а рост данных сейчас никак не сигнализируется: узнаёшь,
только когда место кончилось. Нужны алерты на (1) заполнение диска выше порога
(общий том + data-тома приложений) и (2) аномальный рост размера отдельного
приложения (лог/БД/кэш распух). Реализация — через Netdata (disk space collector
+ алерты в `health.d/*.conf`), тот же канал нотификаций, что и у алертов на
контейнеры. Пороги калибровать под фактический объём диска.
Отдельный сигнал от [container-alerts](container-alerts.md) (там — здоровье
контейнеров, здесь — ёмкость). Канал нотификаций общий.
Из tududi (проект Pet Project Server).
Связано: playbook-netdata.yml, container-alerts, project_server_specs.
+14
View File
@@ -0,0 +1,14 @@
# Аудит безопасности сервера
**Приоритет:** средний
Провести аудит безопасности сервера и конфигураций (Fable / `/security-review`):
поверхность экспозиции наружу (Caddy, открытые порты, UFW), аутентификация и
границы Authelia, права системных пользователей приложений, обращение с
секретами (vault, env-файлы, docker socket), настройки docker-compose. Разовый
проход; найденное дробится на отдельные пункты беклога.
Из tududi (проект Pet Project Server).
Связано: playbook-ufw.yml, playbook-caddyproxy.yml, playbook-authelia.yml,
roles/owner, roles/secrets.