5.2 KiB
AWatch-rus: установка и первичная проверка
Статус: подготовительный документ для пакета реестра российского ПО.
Публичное имя: AWatch-rus.
Техническая база и репозиторий: AWatch-rus.
1. Назначение
Документ описывает воспроизводимую установочную модель AWatch-rus без публикации секретов и внутренних адресов production-контура.
Подробные внутренние playbooks и текущие runtime-пути описаны в
docs/FULL_DEPLOYMENT_MANUAL_RU.md и adk-rust/RUNBOOK.md. Этот документ
является публично-подготовительной версией для продукта.
2. Минимальные требования
Серверный контур:
- Linux server или LXC/VM;
- systemd;
- сетевой доступ от endpoint-collectors до AW-rus API;
- Rust runtime binaries из release artifacts;
- Python runtime для Telegram bot и legacy-compatible компонентов, где он еще используется;
- Grafana/InfluxDB/SQLite/ClickHouse по выбранному профилю установки.
Endpoint-контур:
- Windows с PowerShell 5.1+;
- права локального администратора для установки collectors;
- Scheduled Tasks;
- доступ к серверному API;
- каталог для incident artifacts/evidence sync.
Административный контур:
- Ansible;
- SSH/WinRM доступ;
- git;
- доступ к release artifacts.
3. Общий порядок установки
- Подготовить сервер.
- Установить AW-rus server.
- Развернуть Rust binaries AWatch-rus.
- Установить systemd units/timers.
- Развернуть AWatch-rus Portal.
- Настроить Grafana datasources и dashboards.
- Настроить DLP/worktime/reporting services.
- Развернуть Windows collectors.
- Включить evidence upload/sync.
- Выполнить smoke checks.
4. Конфигурация
Секреты задаются вне git:
- tokens;
- passwords;
- SSH/WinRM credentials;
- Grafana admin/API credentials;
- Telegram bot token;
- evidence upload token.
В git допускаются только:
.exampleфайлы;- шаблоны переменных;
- документация;
- playbooks без секретов.
5. Установка серверных компонентов
Типовой путь:
cd ansible
ansible-playbook -i inventory.ini deploy_aw_server.yml
ansible-playbook -i inventory.ini deploy_detmir_portal.yml
ansible-playbook -i inventory.ini deploy_grafana_dashboards.yml
Для production нужно использовать актуальный inventory и group vars конкретного контура. Секреты передаются через защищенное окружение или отдельные непубликуемые файлы.
6. Установка Windows collectors
Типовой путь:
cd ansible
ansible-playbook -i inventory.ini deploy_aw_windows.yml
ansible-playbook -i inventory.ini deploy_dlp_evidence_sync.yml
После установки проверяются:
- scheduled tasks созданы;
- tasks выполняются без ошибок;
- ActivityWatch buckets получают события;
- DLP/evidence sync task возвращает успешный статус.
7. Первичная проверка
Минимальный smoke:
detmir-status --json
detmir-check --json
detmir-dlp --json
detmir-grafana-check --json
Ожидается:
- status OK;
- failed systemd units отсутствуют;
- AW API отвечает;
- Grafana datasources healthy;
- mandatory dashboards не stale;
- portal health OK.
8. Проверка evidence workflow
Контролируемый тест:
- Создать тестовый incident artifact на endpoint.
- Дождаться scheduled sync или запустить его вручную.
- Проверить upload на сервере.
- Проверить portal evidence metadata.
- Открыть preview/download.
- Проверить audit.
- Удалить тестовый incident/artifact/state.
Тестовые artifacts должны быть явно помечены как synthetic/smoke.
9. Завершение установки
Перед передачей в эксплуатацию:
- сохранить версии release artifacts;
- сохранить контрольный
detmir-status; - сохранить список active services/timers;
- сохранить список Grafana dashboards;
- проверить backup/restore;
- проверить, что ноутбук администратора не является runtime-зависимостью.
10. Связанные документы
docs/ADMIN_GUIDE_RU.mddocs/ARCHITECTURE_RU.mddocs/FULL_DEPLOYMENT_MANUAL_RU.mddocs/GRAFANA_DASHBOARDS_RU.mdadk-rust/RUNBOOK.md