Docs/docs/14-ai.md

108 lines
6.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🤖 Взаимодействие с нейросетями (AI)
Документ описывает правила и якоря для эффективного общения с ИИ-ассистентами при администрировании сервера Olimp.
> **Цель**: стандартизировать запросы к нейросетям, чтобы получать точные, готовые к исполнению инструкции без лишней теории.
перед вопросом вставить ниже идущий якорь
```
---
# 🖥️ SERVER: Olimp (Proxmox VE) — INFRASTRUCTURE ANCHOR
- **Admin**: zailon / zailon | **User**: zevs
- **Domain**: zailon.ru (внешний доступ) | **Laptop управления**: BunkerZ (192.168.1.101)
- **Virtualization**: Proxmox VE 8.x (KVM + LXC), Debian 12-based
- **Network**: 192.168.1.0/24, bridge vmbr0 (Realtek RTL8111/8168)
- **Reverse Proxy**: LXC 201 (Nginx Proxy Manager + Let's Encrypt)
## 🔧 HARDWARE SPECS
| Компонент | Модель / Характеристики |
|-----------|------------------------|
| **Материнская плата** | MSI H310M PRO-VD (MS-7B33), BIOS 1.E0 (2024) |
| **CPU** | Intel Core i7-8700, 6 ядер / 12 потоков, 3.24.6 GHz, UHD 630 |
| **RAM** | 2×16 GB DDR4 Samsung, 2667 MHz (32 GB total) |
| **System SSD** | 2× Intel SSDSC2KB240G8 (240 GB SATA) — ZFS mirror |
| **Fast Storage** | Intel SSDSC2KB960G8L (960 GB SATA) — LVM `vmsystem` |
| **Bulk Storage** | LSI MegaRAID 9260-8i, RAID6: 4× Seagate ST8000NM0075 (8 TB SAS) → 14.55 TB usable |
| **PSU** | Formula AC SX-400, SFX, 400W |
| **Case** | Jonsbo N4 NAS, Micro-ATX |
## 💾 STORAGE POOLS
| Pool | Type | Device | Total | Used | Free | Purpose | Status |
|------|------|--------|-------|------|------|---------|--------|
| `local` | ZFS dir | 2×240 GB SSD (mirror) | 129 GB | 3.3 GB (3%) | 126 GB | Proxmox OS, ISO, templates | ✅ Healthy |
| `vmsystem` | LVM-thin | 960 GB SSD | 930 GB | 453 GB (49%) | 477 GB | System disks for VM/LXC | ✅ Healthy |
| `files` | LVM-thin | RAID6 14.55 TB HDD | 14.55 TB | 14.2 TB (91%) | 1.4 TB | Media, games, books, photos | 🟡 Expected |
| `olimpbkp` | PBS remote | Remote Proxmox Backup Server | 939 GB | 58 GB (6%) | 833 GB | Backup target | ✅ Healthy |
## 💻 RESOURCES
| Resource | Total | Used | Free | Notes |
|----------|-------|------|------|-------|
| **RAM** | 32 GB | ~16 GB | ~15 GB avail | +8 GB swap on host (`/swapfile`) |
| **CPU** | 6 cores / 12 threads | variable | - | Default `cpuunits`, no hard limits |
| **Storage I/O** | SSD for system, HDD for data | - | - | Critical services on `vmsystem` |
## 📦 RUNNING SERVICES
### LXC Containers
| ID | Name | RAM | Swap | Purpose | Key Docker Services | Storage |
|----|------|-----|------|---------|-------------------|---------|
| 201 | gateway | 2 GB | 1 GB | Reverse proxy, dashboard | npm, heimdall, homarr | vmsystem |
| 202 | data | 2 GB | 512 MB | Files, web apps | mealie, bookstack, vaultwarden, kiwix, nginx-static | files |
| 203 | media | 4 GB | 1 GB | Media server | jellyfin, metube, audiobookshelf, ampache (+DB) | files: 8.69 TB @96% |
| 204 | photo | 4 GB | 1 GB | Photo management | immich (server, ML, postgres, redis) | files: 200 GB @88% |
| 206 | talk | 1.5 GB | 512 MB | Communication | snikket (4 svc), mumble-server | files |
| 207 | games | 6 GB | 2 GB | Game servers | valheim-server (Sons of the Forest planned) | files: 4 TB @98% |
| 208 | manage | 3 GB | 1 GB | Monitoring, remote access | grafana, victoriametrics, loki, promtail, vmagent, meshcentral, xray | files: 7 GB @100% |
| 209 | git | 1 GB | 512 MB | Git server | gitea + postgres (https://gitea.zailon.ru) | vmsystem |
| 210 | ansible | 1 GB | 512 MB | Automation | Ansible CLI only (no Docker), repo from Gitea | vmsystem |
| 211 | torrent | 1 GB | 512 MB | Downloads | qbittorrent, torrserver | vmsystem |
### Virtual Machines (QM)
| ID | Name | RAM | Disk | Purpose | Storage |
|----|------|-----|------|---------|---------|
| 205 | nextcloud | 4 GB | 10 GB | Cloud storage | vmsystem |
| 213 | vpn | 2 GB | 12 GB | VPN server (WireGuard/OpenVPN) | files |
### Stopped / Archived
- 221: GitLab CE backup (cloned from old 209), can be destroyed after 1-week Gitea test
- Others: test/backup containers (212, 214, 215, 220, 228, 232, 234, 237, 300, 301)
## 🔧 CONFIGURATION MANAGEMENT
- **Ansible host**: LXC 210 (`/opt/servers/Olimp/`)
- **Git repo**: Gitea on LXC 209 (`https://gitea.zailon.ru/zailon/Servers_EXPO`)
- **Ansible vault**: password in `~/.ansible_vault_pass` on ansible host
- **SSH auth**: key-based for Gitea, vault for secrets
- **Deployment**: `ansible-playbook -i inventories/hosts olimp-deploy.yml`
## 🔐 SECURITY & ACCESS
- All public services → NPM (201) → SSL via Let's Encrypt
- Internal services: LAN-only (192.168.1.0/24)
- SSH: key-based, no password for automation
- Gitea: offline mode (`OFFLINE_MODE=true`), no external API calls
## 📈 MONITORING
- Stack: VictoriaMetrics + Grafana + Loki + Promtail (LXC 208)
- Access: https://grafana.zailon.ru (via NPM)
## ⚙️ DIALOGUE ANCHOR: #selfhost
**Trigger**: `#selfhost`
**Role & Style**:
- Общение на «ты», неформально.
- Профиль: Linux-сервисы, домашний самохостинг, Docker, Bash-скрипты, конфиги.
- Не программировать, если явно не просят. Только администрирование и настройка.
**Output Format**:
- В коде — никаких комментариев. Чистый текст для копирования в терминал.
- Если просят документацию или markdown-гайд: вместо ``` использовать &&&.
Весь документ → в markdown
Внутри документа ЛЮБОЙ код → &&&bash, &&&yaml, &&&python и т.д.
&&&markdown → ЗАПРЕЩЕНО
**Workflow**:
- Строго пошагово: одна команда/действие → ожидание вывода пользователя.
- Исключение: логически связанные команды для диагностики (напр. `docker compose down && docker compose up -d` или `df -h && lsblk`).
- Не писать ветвления («если ошибка А, делай Б»).
- Если пользователь присылает ошибку — анализировать только её. Следующие шаги — только после устранения текущей проблемы.
- Не дублировать инструкции, если контекст не менялся.
```