Docs/docs/14-ai.md

7.8 KiB
Raw Blame History

🤖 Взаимодействие с нейросетями (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 9.0.11 (KVM + LXC), Debian 12-based, kernel `6.14.11-4-pve`
- **Network**: 192.168.1.0/24, bridge vmbr0 (Realtek RTL8111/8168)
- **Reverse Proxy**: LXC 201 (Nginx Proxy Manager + Let's Encrypt)
- **Backup Server**: Olimpbs (192.168.1.199) — Proxmox Backup Server

## 🔧 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 (`rpool`) |
| **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) | 128 GB | 3.4 GB (3%) | 124 GB | Proxmox OS, ISO, templates | ✅ Healthy |
| `vmsystem` | LVM-thin | 960 GB SSD | 930 GB | 459 GB (49%) | 471 GB | System disks for VM/LXC | ✅ Healthy |
| `files` | LVM-thin | RAID6 14.55 TB HDD | 14.55 TB | 14.23 TB (91%) | 1.39 TB | Media, games, books, photos | 🟡 Low space |
| `olimpbkp` | PBS remote | Proxmox Backup Server | 939 GB | 103 GB (11%) | 788 GB | Daily backup target | ✅ Healthy |
| `extbkp` | PBS local | External HDD 1 TB (ext4) | 916 GB | ~0 GB | 916 GB | Weekly full copy (offline) | ✅ Ready |

## 💻 RESOURCES (actual)
| Resource | Total | Used | Free | Notes |
|----------|-------|------|------|-------|
| **RAM** | 32 GB | ~23 GB | ~7.7 GB avail | +4 GB ZVOL swap (`/dev/zd0`) |
| **Swap** | 4 GB | 3.8 GB used | 191 MB | 🟡 High usage — monitor pressure |
| **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 (active)
| 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 | 5 GB | 1 GB | Media server | jellyfin, metube, audiobookshelf, navidrome | 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 GB | 512 MB | Communication | snikket (4 svc), mumble-server | files |
| 207 | games | 15 GB | 4 GB | Game servers | valheim-server | 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 |
| 212 | mail | 4 GB | 2 GB | Mail server | mailcow (postfix, dovecot, sogo, rspamd, clamav, unbound, redis, mysql, nginx) | files |

### Виртуальные машины (QM) — локальные
| ID | Name | RAM | Disk | Purpose | Storage |
|----|------|-----|------|---------|---------|
| 205 | nextcloud | 4 GB | 10 GB | Cloud storage | vmsystem |
| 213 | vpn | 2 GB | 12 GB | VPN stub + Nextcloud stub (redirect only) | files |

### 🌍 Внешняя инфраструктура
| Хост | IP | RAM | Disk | Purpose | Key Services |
|------|----|-----|------|---------|-------------|
| **OlimpVPN (Финляндия)** | 2.27.50.20 | 2 GB | 40 GB | Внешний VPN-шлюз, обход блокировок | 3X-UI, Xray (VLESS+Reality), Certbot |
| **Olimpbs (PBS)** | 192.168.1.199 | - | - | Proxmox Backup Server | `olimpbkp` (primary), `extbkp` (weekly copy) |



## 🔧 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)

Якорь Документация

#selfhost:docs

## Роль
Написание технической документации для домашнего сервера Olimp.

## Формат Markdown
1. Первый блок: ```markdown (ОБЯЗАТЕЛЬНО!)
2. Внутри документа: все блоки кода &&&bash, &&&yaml, &&&nginx, &&&text, &&&xml
3. ЗАПРЕЩЕНО: &&&markdown

## Структура документации
docs/
├── 01-hardware.md — 14-ai.md (существующие файлы)
├── services/
│   ├── lxc201-gateway/ (npm.md, heimdall.md, homarr.md)
│   ├── lxc202-data/ (bookstack.md, mealie.md, vaultwarden.md, kiwix.md, nginx-static.md)
│   ├── lxc203-media/ (jellyfin.md, metube.md, audiobookshelf.md, ampache.md, navidrome.md)
│   ├── lxc204-photo/ (immich.md)
│   ├── lxc206-talk/ (snikket.md, mumble.md)
│   ├── lxc207-games/ (valheim.md)
│   ├── lxc208-manage/ (grafana.md, victoriametrics.md, loki.md, vmagent.md, meshcentral.md, xray.md)
│   ├── lxc209-git/ (gitea.md)
│   ├── lxc210-ansible/ (ansible.md)
│   ├── lxc211-torrent/ (qbittorrent.md, torrserver.md)
│   └── lxc212-mail/ (mailcow.md)
└── vms/
    ├── vm205-nextcloud.md (полноценное облако)
    └── vm213-vpn-stub.md (заглушка)

## Требования к документам
- Подробно, по шагам, чтобы новичок смог повторить
- Только ручная установка (Ansible пока не пишем)
- В конце: полезные команды, решение проблем, безопасность
- Стиль: технический, но понятный
- Примеры: реальные конфиги с сервера Olimp

## Контекст
- Сервер: Olimp (192.168.1.1)
- LXC контейнеры: 201-212 (192.168.1.201-212)
- VM: 205 (Nextcloud), 213 (VPN stub)
- Внешний доступ: через NPM (LXC 201) + Let's Encrypt