From 824b215cf0ce46280b0484c52857bcaef4d1f978 Mon Sep 17 00:00:00 2001 From: Claude Agent Date: Mon, 31 Aug 2026 21:06:57 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20LXC=20301=20=E2=80=94=20singurul=20gues?= =?UTF-8?q?t=20nedocumentat,=20si=20conflictul=20de=20IP=20cu=20VM=20109?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LXC 301 (docker-portainer-template, pveelite, oprit) e predecesorul lui VM 109: vechiul DR Oracle 19c, inlocuit de VM-ul Windows. Nu era documentat nicaieri. Important: si-a pastrat IP-ul static 10.0.20.37 — acelasi pe care VM 109 l-a mostenit de la el ("IP: 10.0.20.37 (same as current LXC)", din planul de implementare DR) — si are onboot=1. La un reboot al lui pveelite porneste singur si ocupa adresa. VM 109 are onboot=0, deci nimeni nu observa nimic pana la urmatorul test DR, cand VM 109 gaseste adresa luata. Recomandarea (nefacuta, e decizia utilizatorului): `pct set 301 -onboot 0`. Stergerea completa cere verificat intai ca basevol-301-disk-0 nu e sablonul din care s-au clonat alte containere. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01Q4uzvgm7AyJch5WH8QHRhY --- proxmox/README.md | 1125 +++++++++++----------- proxmox/lxc301-docker-template/README.md | 48 + 2 files changed, 612 insertions(+), 561 deletions(-) create mode 100644 proxmox/lxc301-docker-template/README.md diff --git a/proxmox/README.md b/proxmox/README.md index 4564ade..d39b66d 100644 --- a/proxmox/README.md +++ b/proxmox/README.md @@ -1,561 +1,564 @@ -# Documentație Proxmox Infrastructure - ROMFASTSQL - -## Structură Directoare - -``` -proxmox/ -├── README.md # Acest fișier (index principal) -│ -├── cluster/ # Infrastructură cluster Proxmox -│ ├── README.md # Ghid SSH, HA, corosync tuning, diagnostic tools, mail relay, OOM alert -│ ├── cluster-ha-monitor.sh # Script monitorizare HA -│ ├── incidents/ # Post-mortems incidente cluster -│ │ ├── 2026-04-20-cluster-outage.md # Cascadă OOM pveelite + USB LAN watchdog -│ │ ├── 2026-04-30-pvemini-backup-ssd-hang.md # Kingston SSD hang → emergency mode -│ │ ├── 2026-07-31-lxc110-dns-tailscale-oom.md # DNS mort (Tailscale logout) + zram pe pve1 -│ │ └── 2026-08-27-pveelite-down.md # Reset adaptor USB LAN → pveelite fără rețea 16h -│ └── ups/ # Sistem UPS pentru cluster -│ ├── README.md -│ ├── docs/ -│ ├── scripts/ -│ └── config/ -│ -├── lxc101-minecraft/ # LXC 101 - Minecraft (Crafty Controller 4) -│ └── README.md # Servere Minecraft, gestionare Java, cum actualizezi versiunea -│ -├── lxc102-docker/ # LXC 102 - Docker + Portainer + Docker Sandboxes (sbx) -│ └── README.md # Componente, comenzi sbx, depanare "failed to run sandbox container", memorie/OOM -│ -├── lxc103-dokploy/ # LXC 103 - Dokploy + Traefik (Deployment Platform) -│ ├── README.md # Configurare, arhitectură, workflow deploy -│ └── docs/ -│ └── pdf-qr-app.md # Deploy pdf-qr-app pe Dokploy -│ -├── lxc104-flowise/ # LXC 104 - Flowise AI (Chatbot Maria) -│ ├── README.md # Infrastructură chatbot, ngrok, troubleshooting -│ └── docs/ -│ ├── prd.md # Product Requirements Document -│ ├── v1-arhitectura.md # Arhitectură v1 (Flowise + Groq) -│ └── v2-arhitectura.md # Arhitectură v2 (Claude Agent SDK) -│ -├── lxc108-oracle/ # LXC 108 - Oracle Database XE 21c -│ ├── README.md # Documentație completă Oracle -│ ├── scripts/ -│ │ ├── export-roa2.sh -│ │ └── export-roa2.ps1 -│ ├── migration/ # Scripturi migrare Oracle 10g → 21c -│ │ ├── README.md -│ │ ├── 00-MASTER-MIGRATION.sh -│ │ └── ... -│ ├── clienti/ # Cazuri concrete clienți (depanare/recreare DB) -│ │ ├── README.md # Index cazuri -│ │ └── oracle-xe-21c/ # ROMPETROL ENERGY: recreare PDB după ORA-12954 -│ ├── docs/ # Ghid rutare instalare vs. migrare Oracle -│ ├── roa-windows-setup/ # Scripturi setup ROA pe Windows + Oracle 21c -│ └── sql/ -│ ├── roa/ # SQL-uri Oracle 10g compatibilitate -│ └── roa-romconstruct/ # Package PACK_CONTAFIN -│ -├── vm109-windows-dr/ # VM 109 - Windows Standby (Disaster Recovery) -│ ├── README.md # Configurare DR, RMAN backup -│ ├── docs/ -│ │ ├── PLAN_TESTARE_MONITORIZARE.md -│ │ ├── PROXMOX_NOTIFICATIONS_README.md -│ │ └── archive/ # Planuri și statusuri anterioare -│ └── scripts/ -│ ├── rman_backup*.bat # Scripturi RMAN Windows -│ ├── transfer_backups.ps1 # Transfer backup-uri -│ └── *-proxmox.sh # Monitorizare din Proxmox -│ -├── vm201-windows/ # VM 201 - Windows 11 (roacentral) -│ ├── README.md # Informații generale VM -│ ├── docs/ -│ │ ├── vm201-certificat-letsencrypt-iis.md -│ │ ├── vm201-dokploy-infrastructure.md # Arhitectură Dokploy + domenii -│ │ ├── vm201-roa-update-server.md # Server update aplicații ROA + CONTAFIN -│ │ ├── vm201-btgo-playwright-service.md # Scraper BT George (Playwright Python) -│ │ ├── vm201-troubleshooting-backup-nfs.md -│ │ └── vm201-troubleshooting-pana-curent-2026-01-11.md -│ ├── iis-configs/ # web.config pentru site-uri IIS -│ │ ├── roa-qr.web.config # Proxy roa-qr.romfast.ro → LXC 103 -│ │ └── roa-apps-wildcard.web.config # Proxy *.roa.romfast.ro → LXC 103 -│ └── scripts/ -│ ├── check-ssl-certificates.ps1 -│ ├── monitor-ssl-certificates.sh -│ └── setup-new-iis-sites.ps1 # Setup site-uri IIS noi (Dokploy) -│ -├── vm302-oracle-test/ # VM 302 - oracle-test-302 (test ROA Windows + Oracle 21c) -│ ├── README.md # Info VM, status testare XE/SE, workflow -│ └── docs/ -│ ├── dual-edition-test-plan.md # Plan testare 21c XE + SE -│ └── issues-se-prod.md # TODO: log erori prod Oracle SE -│ -├── lxc110-moltbot/ # LXC 110 - MoltBot (AI Telegram Bot) -│ ├── README.md # Configurare, securitate, comenzi -│ └── docs/ -│ -└── lxc171-claude-agent/ # LXC 171 - Claude Agent (Development) - ├── README.md # Configurare, conectare, workflow - └── scripts/ - ├── start-agent.sh # Pornire sesiune tmux - ├── work.sh # Meniu interactiv workflow - ├── new-task.sh # Creare branch nou - └── finish-task.sh # Finalizare task (commit+push) -``` - ---- - -## Documentație per Componentă - -### Cluster Proxmox -**Director:** `cluster/` - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Ghid complet: SSH, noduri, storage, comenzi Proxmox, hartă IP-uri | -| `cluster-ha-monitor.sh` | Script monitorizare High Availability | -| `docs/oprire-planificata-cluster.md` | **Oprire controlată a celor 3 noduri fără failover HA / fence** | -| `failover/README.md` | Strategia HA pe nivele de criticitate, failover VM 201 | -| `incidents/` | Post-mortem-uri incidente cluster | -| `ups/` | Sistem UPS: configurare NUT, shutdown orchestrat, test baterie | - -**Quick Start:** -```bash -# Acces Proxmox -ssh root@10.0.20.201 - -# Status cluster -ssh root@10.0.20.201 "pvecm status" - -# Status UPS -ssh root@10.0.20.201 "upsc nutdev1" -``` - ---- - -### LXC 106 - Gitea (Git Server) -**Director:** `lxc106-gitea/` -**IP:** 10.0.20.165 | **Host:** pvemini - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare, operații frecvente, modificare app.ini, troubleshooting | - -**Quick Start:** -```bash -# Status -ssh root@10.0.20.201 "pct exec 106 -- docker ps" - -# Restart după modificare config -ssh root@10.0.20.201 "pct exec 106 -- docker restart gitea" - -# Logs -ssh root@10.0.20.201 "pct exec 106 -- docker logs gitea --tail 50" -``` - -**URL:** https://gitea.romfast.ro - ---- - -### LXC 102 - Docker + Portainer + Docker Sandboxes -**Director:** `lxc102-docker/` -**IP:** 10.0.20.113 | **Host:** pvemini - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Componente, comenzi `sbx`, depanare erori la creare sandbox | - -**Rol:** Host Docker general (Portainer) + rulare agenți AI (opencode, Claude Code) izolați în microVM prin `sbx`. - -**Quick Start:** -```bash -# Docker -ssh root@10.0.20.201 "pct exec 102 -- docker ps" - -# sbx — se rulează DOAR ca userul work -ssh root@10.0.20.201 "pct exec 102 -- su - work -c 'sbx ls'" -``` - -> La orice eroare `500: failed to run sandbox container`, cauza reală e în -> `/home/work/.local/state/sandboxes/sandboxes/sandboxd/daemon.log` (`sbx diagnose` trece oricum). -> Vezi secțiunea de depanare din `lxc102-docker/README.md`. - -> **Memorie:** ridicat la 12GB + 4GB swap pe 2026-07-31 după OOM-uri cronice — baseline-ul -> e ~1.9GB (sbx + VS Code Remote + Claude) chiar fără sandbox-uri active, iar un sandbox -> real mai adaugă ~1.9GB. Vezi `lxc102-docker/README.md` → „Memorie". - ---- - -### LXC 103 - Dokploy + Traefik (Deployment Platform) -**Director:** `lxc103-dokploy/` -**IP:** 10.0.20.167 | **Host:** pvemini - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare, arhitectură, workflow deploy app-uri | -| `docs/pdf-qr-app.md` | Deploy pdf-qr-app în Dokploy | - -**Rol:** Control plane pentru deployment aplicații publice ROMFAST. -Traefik pe LXC 103 routează toate subdomeniile `*.roa.romfast.ro`. - -**Quick Start:** -```bash -# Status containere Dokploy + Traefik -ssh root@10.0.20.201 "pct exec 103 -- docker ps" - -# Logs Traefik -ssh root@10.0.20.201 "pct exec 103 -- docker logs traefik -f" -``` - -**URL:** https://dokploy.romfast.ro - ---- - -### LXC 104 - Flowise AI (Chatbot Maria) -**Director:** `lxc104-flowise/` -**IP:** 10.0.20.161 | **Host:** pvemini - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare Flowise, ngrok, troubleshooting CORS | -| `docs/prd.md` | Product Requirements Document chatbot | -| `docs/v1-arhitectura.md` | Arhitectură Flowise + Groq | -| `docs/v2-arhitectura.md` | Arhitectură Claude Agent SDK (planificat) | - -**Quick Start:** -```bash -# Status servicii -ssh root@10.0.20.201 "pct exec 104 -- systemctl status flowise" -ssh root@10.0.20.201 "pct exec 104 -- systemctl status ngrok" - -# Restart Flowise -ssh root@10.0.20.201 "pct exec 104 -- systemctl restart flowise" - -# Test chatbot -curl -s "https://mutual-special-koala.ngrok-free.app/api/v1/prediction/d4911620-07fe-41f8-adb4-f2f52d6ec766" \ - -X POST -H "Content-Type: application/json" -d '{"question":"test"}' -``` - -**URL Public:** https://mutual-special-koala.ngrok-free.app -**Pagina Web:** https://www.romfast.ro/chatbot_maria.html - ---- - -### LXC 108 - Oracle Database -**Director:** `lxc108-oracle/` -**IP:** 10.0.20.121 | **Host:** pvemini - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | PDB-uri, useri, parole, connection strings, export/import DMP | -| `scripts/export-roa2.sh` | Script export PDB roa2 | -| `scripts/export-roa2.ps1` | Script export pentru Windows | - -**Quick Start:** -```bash -# Acces în container -ssh root@10.0.20.201 "pct enter 108" - -# Restart Oracle -ssh root@10.0.20.201 "pct exec 108 -- docker restart oracle-xe" - -# Conexiune SQL*Plus -sqlplus sys/romfastsoft@10.0.20.121:1521/roa as sysdba -``` - ---- - -### LXC 110 - MoltBot (AI Chatbot) -**Director:** `lxc110-moltbot/` -**IP:** 10.0.20.173 (intern) | 100.120.119.70 (Tailscale) | **Host:** pveelite -**Canale:** Telegram + WhatsApp | **Model:** Claude Opus 4.5 - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare completă, securitate, comenzi MoltBot | - -**Quick Start:** -```bash -# Terminal UI (direct) -ssh -t moltbot@10.0.20.173 "clawdbot tui" - -# Status -ssh moltbot@10.0.20.173 "clawdbot status" - -# Web Dashboard (via SSH tunnel) -ssh -L 18789:127.0.0.1:18789 -N moltbot@10.0.20.173 & -# apoi http://localhost:18789 - -# Restart gateway -ssh moltbot@10.0.20.173 "clawdbot gateway restart" -``` - -**Componente:** Ubuntu 24.04, MoltBot v2026.1.24-3, Node.js v22, Bun, Tailscale SSH - ---- - -### LXC 171 - Claude Agent (Development Environment) -**Director:** `lxc171-claude-agent/` -**IP:** 10.0.20.171 (intern) | 100.95.55.51 (Tailscale) | **Host:** pveelite - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare completă, conectare SSH, workflow | -| `scripts/start-agent.sh` | Pornire/atașare sesiune tmux | -| `scripts/work.sh` | Meniu interactiv pentru workflow Git | -| `scripts/new-task.sh` | Creare branch nou pentru task | -| `scripts/finish-task.sh` | Finalizare task (commit + push) | - -**Quick Start:** -```bash -# Conectare (rețea internă) -ssh claude@10.0.20.171 - -# Conectare (Tailscale - de pe telefon/exterior) -ssh claude@100.95.55.51 - -# Pornire workflow -~/start-agent.sh # pornește tmux -~/work.sh # meniu interactiv -``` - -**Componente:** Ubuntu 24.04, Node.js v20, Claude Code, tmux, Git, Tailscale - ---- - -### VM 109 - Windows Standby (Disaster Recovery) -**Director:** `vm109-windows-dr/` -**Rol:** Backup Oracle database de pe server extern Windows (RMAN) - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurare DR, RMAN backup, scripturi transfer | -| `docs/PLAN_TESTARE_MONITORIZARE.md` | Plan testare și monitorizare DR | -| `docs/PROXMOX_NOTIFICATIONS_README.md` | Configurare notificări Proxmox | -| `docs/archive/` | Planuri implementare și statusuri anterioare | -| `scripts/rman_backup*.bat` | Scripturi RMAN pentru backup Windows | -| `scripts/transfer_backups.ps1` | Transfer backup-uri către storage | -| `scripts/*-proxmox.sh` | Scripturi monitorizare din Proxmox | -| `scripts/deploy.sh` | **Deploy scripturi pe noduri + VM 109** (rulează din repo) | -| `scripts/vm109-patch-window.sh` | Fereastră lunară Windows Update pe VM 109 | -| `scripts/check_servicing.ps1` | Guard servicing înainte de restore (guest) | - -**Quick Start:** -```bash -# Monitorizare backup Oracle DR -/mnt/e/proiecte/ROMFASTSQL/proxmox/vm109-windows-dr/scripts/oracle-backup-monitor-proxmox.sh - -# Test săptămânal DR -/mnt/e/proiecte/ROMFASTSQL/proxmox/vm109-windows-dr/scripts/weekly-dr-test-proxmox.sh -``` - -**Deploy modificări** (scripturile de mai sus rulează pe noduri, nu din repo): -```bash -cd proxmox/vm109-windows-dr/scripts -./deploy.sh --check # ce diferă față de noduri, fără să copieze -./deploy.sh # copiază pe pvemini + pveelite -./deploy.sh --guest # + scripturile PowerShell pe VM 109 -./deploy.sh --help # distribuția pe noduri și ce verifică -``` -Detalii: `vm109-windows-dr/README.md`, secțiunea **Deploy**. - ---- - -### VM 201 - Windows 11 -**Director:** `vm201-windows/` -**IP:** DHCP | **Host:** pvemini | **Rol:** Server update aplicații ROA + CONTAFIN, reverse proxy IIS, client aplicații, scraper BT George - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Configurație hardware, servicii, rețea, backup | -| `docs/vm201-certificat-letsencrypt-iis.md` | Certificate SSL Let's Encrypt, Win-ACME, SNI | -| `docs/vm201-dokploy-infrastructure.md` | Arhitectură Dokploy + domenii | -| `docs/vm201-roa-update-server.md` | Server update aplicații ROA (`/roaupdate`) + CONTAFIN AVFP (`/contafinupdate`) | -| `docs/vm201-btgo-playwright-service.md` | Scraper BT George — Playwright Python SDK, Windows Service | -| `docs/vm201-troubleshooting-backup-nfs.md` | Incident backup NFS (2025-10-08) | -| `docs/vm201-troubleshooting-pana-curent-2026-01-11.md` | Incident pană curent | -| `scripts/check-ssl-certificates.ps1` | Verificare/reînnoire certificate (Windows) | -| `scripts/monitor-ssl-certificates.sh` | Monitorizare certificate (Proxmox) | - -**Quick Start:** -```bash -# Reînnoire certificate SSL (din Proxmox) -ssh root@10.0.20.201 "qm guest exec 201 -- powershell -Command 'cd C:\\Tools\\win-acme; .\\wacs.exe --renew --force'" -ssh root@10.0.20.201 "qm guest exec 201 -- cmd /c iisreset" - -# Verificare certificate -echo | openssl s_client -connect roa.romfast.ro:443 -servername roa.romfast.ro 2>/dev/null | openssl x509 -noout -dates -``` - ---- - -### VM 302 - oracle-test-302 (Test ROA Windows + Oracle 21c) -**Director:** `vm302-oracle-test/` -**IP:** 10.0.20.130 | **Host:** pvemini | **Rol:** mediu de test pentru scripturile `lxc108-oracle/roa-windows-setup/` - -| Fișier | Descriere | -|--------|-----------| -| `README.md` | Info VM, status testare XE/SE, quick start, snapshots | -| `docs/dual-edition-test-plan.md` | Plan testare dual: Oracle 21c XE + Standard Edition | -| `docs/issues-se-prod.md` | TODO: log erori întâlnite în producție pe Oracle SE | - -**Status testare scripturi ROA Windows:** -- Oracle 21c **XE** — OK (validat pe VM 302) -- Oracle 21c **SE** — **TODO** (netestat în mediu test, erori în prod) - -**Quick Start:** -```bash -# Start VM (stopped între teste) -ssh root@10.0.20.201 "qm start 302" - -# Stop după test -ssh root@10.0.20.201 "qm shutdown 302" - -# Snapshot înainte de test -ssh root@10.0.20.201 "qm snapshot 302 pre-test --description 'Before ROA test'" -``` - ---- - -## Hartă Rapidă Resurse - -### Noduri Proxmox Cluster -| Nod | IP | Web GUI | -|-----|-----|---------| -| pve1 | 10.0.20.200 | https://10.0.20.200:8006 | -| **pvemini** | **10.0.20.201** | https://10.0.20.201:8006 | -| pveelite | 10.0.20.202 | https://10.0.20.202:8006 | - -### LXC Containers -| VMID | Nume | IP | Serviciu | Documentație | -|------|------|-----|----------|--------------| -| 100 | portainer | 10.0.20.170 | Docker Management (Remote Node) | `cluster/README.md` | -| **101** | **minecraft** | **10.0.20.162** | **Minecraft (Crafty Controller 4)** | **`lxc101-minecraft/`** | -| **102** | **docker.romfast.ro** | **10.0.20.113** | **Docker + Portainer + Docker Sandboxes (sbx)** | **`lxc102-docker/`** | -| **103** | **dokploy** | **10.0.20.167** | **Dokploy + Traefik (App Deployment)** | **`lxc103-dokploy/`** | -| **104** | **flowise** | **10.0.20.161** | **Flowise AI (Chatbot Maria)** | **`lxc104-flowise/`** | -| **106** | **gitea** | **10.0.20.165** | **Git Server** | **`lxc106-gitea/`** | -| **108** | **central-oracle** | **10.0.20.121** | **Oracle XE 21c** | **`lxc108-oracle/`** | -| **110** | **moltbot** | **10.0.20.173** | **MoltBot AI (Telegram+WhatsApp)** | **`lxc110-moltbot/`** | -| **171** | **claude-agent** | **10.0.20.171** | **Claude Code Dev Environment** | **`lxc171-claude-agent/`** | - -### Virtual Machines -| VMID | Nume | OS | Documentație | -|------|------|----|--------------| -| **109** | **standby-dr** | **Windows Server** | **`vm109-windows-dr/`** | -| **201** | **roacentral** | **Windows 11** | **`vm201-windows/`** | -| **310** | **Win11-Template-Sysprep** | **Windows 11 (template de clonare)** | **`cluster/README.md`** | -| **303** | **Win11-Adina** | **Windows 11** | **`cluster/README.md`** | -| **302** | **oracle-test-302** | **Windows 11 + Oracle 21c (test ROA)** | **`vm302-oracle-test/`** | - ---- - -## Navigare Rapidă - Am nevoie să... - -### Infrastructură -- **Văd toate IP-urile și serviciile** → `cluster/README.md` -- **Configurez SSH** → `cluster/README.md` → "Configurare Inițială SSH" -- **Monitorizez HA cluster** → `cluster/cluster-ha-monitor.sh` -- **Opresc toate serverele (lucrări electrice, mutare rack)** → `cluster/docs/oprire-planificata-cluster.md` -- **Înțeleg strategia de failover / ce e în HA** → `cluster/failover/README.md` -- **Gestionez UPS** → `cluster/ups/README.md` - -### Flowise AI / Chatbot Maria (LXC 104) -- **Configurez chatbot** → `lxc104-flowise/README.md` -- **Troubleshooting CORS/ngrok** → `lxc104-flowise/README.md` → "Troubleshooting" -- **PRD Chatbot** → `lxc104-flowise/docs/prd.md` -- **Arhitectură viitoare** → `lxc104-flowise/docs/v2-arhitectura.md` - -### Oracle Database (LXC 108) -- **Conectez la Oracle** → `lxc108-oracle/README.md` → "Conexiuni Oracle" -- **Export/Import DMP** → `lxc108-oracle/README.md` → "Export și Import Data Pump" -- **Restart Oracle** → `lxc108-oracle/README.md` → "Restart Oracle" -- **Scripturi migrare 10g→21c** → `lxc108-oracle/migration/README.md` -- **SQL-uri Oracle 10g** → `lxc108-oracle/sql/roa/` -- **Cazuri clienți (depanare/recreare DB)** → `lxc108-oracle/clienti/README.md` -- **Caz ROMPETROL — recreare PDB Oracle XE 21c (ORA-12954)** → `lxc108-oracle/clienti/oracle-xe-21c/README.md` - -### Windows VM 109 - Disaster Recovery -- **Configurez RMAN backup** → `vm109-windows-dr/README.md` -- **Monitorizez backup-uri** → `vm109-windows-dr/scripts/oracle-backup-monitor-proxmox.sh` -- **Test DR săptămânal** → `vm109-windows-dr/scripts/weekly-dr-test-proxmox.sh` -- **Am modificat un script și vreau să ajungă pe noduri** → `vm109-windows-dr/scripts/deploy.sh --check`, apoi fără `--check` -- **Testul DR a picat cu „Restore failed" fără log RMAN** → `vm109-windows-dr/README.md`, secțiunea *Windows Update pe VM 109* -- **Patching Windows pe VM 109** → `vm109-windows-dr/scripts/vm109-patch-window.sh` (prima duminică, 03:00) -- **Plan testare DR** → `vm109-windows-dr/docs/PLAN_TESTARE_MONITORIZARE.md` - -### Windows VM 302 - Test ROA Setup (XE + SE) -- **Info VM și quick start** → `vm302-oracle-test/README.md` -- **Plan testare dual-edition** → `vm302-oracle-test/docs/dual-edition-test-plan.md` -- **Erori prod Oracle SE (TODO)** → `vm302-oracle-test/docs/issues-se-prod.md` -- **Scripturi setup ROA Windows** → `lxc108-oracle/roa-windows-setup/` -- **Care director de instalare/migrare Oracle se folosește** → `lxc108-oracle/docs/instalare-si-migrare-oracle.md` - -### Windows VM 201 -- **Reînnoiesc certificate SSL** → `vm201-windows/docs/vm201-certificat-letsencrypt-iis.md` -- **Rezolv probleme VM locked** → `vm201-windows/docs/vm201-troubleshooting-backup-nfs.md` -- **Informații generale** → `vm201-windows/README.md` -- **Configurez site-uri IIS noi (Dokploy)** → `vm201-windows/docs/vm201-dokploy-infrastructure.md` -- **Script setup IIS automat** → `vm201-windows/scripts/setup-new-iis-sites.ps1` -- **Publicare versiune nouă ROA / CONTAFIN către clienți** → `vm201-windows/docs/vm201-roa-update-server.md` -- **Scraper BT George (btgo-playwright)** → `vm201-windows/docs/vm201-btgo-playwright-service.md` - -### Dokploy + Traefik (LXC 103) -- **Deploy aplicație nouă** → `lxc103-dokploy/README.md` → "Workflow: Adăugare App Nouă" -- **Setup server LXC 100** → `lxc103-dokploy/README.md` → "Pasul 2" -- **Deploy pdf-qr-app** → `lxc103-dokploy/docs/pdf-qr-app.md` -- **Arhitectură domenii** → `vm201-windows/docs/vm201-dokploy-infrastructure.md` - -### Docker Sandboxes (LXC 102) -- **Rulez opencode / Claude Code izolat** → `lxc102-docker/README.md` → "Comenzi uzuale" -- **Eroare "failed to run sandbox container"** → `lxc102-docker/README.md` → "Depanare" -- **Actualizez pachetul `docker-sbx`** → `lxc102-docker/README.md` → "De reținut pentru viitor" (folosește build-ul `~noble`) - -### MoltBot AI (LXC 110) -- **Configurare și comenzi** → `lxc110-moltbot/README.md` -- **Terminal UI** → `ssh -t moltbot@10.0.20.173 "clawdbot tui"` -- **Troubleshooting** → `lxc110-moltbot/README.md` → "Troubleshooting" -- **Canale:** Telegram + WhatsApp | **Model:** Claude Opus 4.5 - -### Claude Agent (LXC 171) -- **Configurare și conectare** → `lxc171-claude-agent/README.md` -- **Workflow dezvoltare** → `lxc171-claude-agent/README.md` → "Workflow Complet" -- **Scripturi workflow** → `lxc171-claude-agent/scripts/` -- **Troubleshooting** → `lxc171-claude-agent/README.md` → "Troubleshooting" - ---- - -## Servicii Web - -| Serviciu | URL | -|----------|-----| -| Proxmox pvemini | https://10.0.20.201:8006 | -| Oracle EM Express | http://10.0.20.121:5500/em | -| Portainer (Oracle) | http://10.0.20.121:9443 | -| Portainer Principal | http://10.0.20.170:9443 | -| Gitea | http://10.0.20.165:3000 | -| Dokploy (intern) | http://10.0.20.167:3000 | -| Dokploy (public) | https://dokploy.romfast.ro | -| pdf-qr-app | https://roa-qr.romfast.ro | -| Apps wildcard | https://*.roa.romfast.ro | -| Flowise AI (local) | http://10.0.20.161:3000 | -| Flowise AI (public) | https://mutual-special-koala.ngrok-free.app | -| Chatbot Maria | https://www.romfast.ro/chatbot_maria.html | - ---- - -## Task-uri Automate Configurate - -| Task | Locație | Frecvență | Scop | -|------|---------|-----------|------| -| SSL Certificate Check | VM 201 Task Scheduler | Zilnic 07:00 | Verifică/reînnoiește certificate | -| SSL Monitor | Proxmox cron | Zilnic 08:00 | Monitorizare externă certificate | -| Win-ACME Renew | VM 201 Task Scheduler | Zilnic 09:00 | Reînnoire automată Let's Encrypt | -| UPS Monthly Test | Proxmox cron | Lunar | Test baterie UPS | -| Backup Job | Proxmox | Zilnic 02:00 | Backup toate LXC/VM | - ---- - -**Ultima actualizare:** 2026-04-25 -**Autor:** Marius Mutu -**Proiect:** ROMFASTSQL - Infrastructure Documentation +# Documentație Proxmox Infrastructure - ROMFASTSQL + +## Structură Directoare + +``` +proxmox/ +├── README.md # Acest fișier (index principal) +│ +├── cluster/ # Infrastructură cluster Proxmox +│ ├── README.md # Ghid SSH, HA, corosync tuning, diagnostic tools, mail relay, OOM alert +│ ├── cluster-ha-monitor.sh # Script monitorizare HA +│ ├── incidents/ # Post-mortems incidente cluster +│ │ ├── 2026-04-20-cluster-outage.md # Cascadă OOM pveelite + USB LAN watchdog +│ │ ├── 2026-04-30-pvemini-backup-ssd-hang.md # Kingston SSD hang → emergency mode +│ │ ├── 2026-07-31-lxc110-dns-tailscale-oom.md # DNS mort (Tailscale logout) + zram pe pve1 +│ │ └── 2026-08-27-pveelite-down.md # Reset adaptor USB LAN → pveelite fără rețea 16h +│ └── ups/ # Sistem UPS pentru cluster +│ ├── README.md +│ ├── docs/ +│ ├── scripts/ +│ └── config/ +│ +├── lxc101-minecraft/ # LXC 101 - Minecraft (Crafty Controller 4) +│ └── README.md # Servere Minecraft, gestionare Java, cum actualizezi versiunea +│ +├── lxc102-docker/ # LXC 102 - Docker + Portainer + Docker Sandboxes (sbx) +│ └── README.md # Componente, comenzi sbx, depanare "failed to run sandbox container", memorie/OOM +│ +├── lxc103-dokploy/ # LXC 103 - Dokploy + Traefik (Deployment Platform) +│ ├── README.md # Configurare, arhitectură, workflow deploy +│ └── docs/ +│ └── pdf-qr-app.md # Deploy pdf-qr-app pe Dokploy +│ +├── lxc104-flowise/ # LXC 104 - Flowise AI (Chatbot Maria) +│ ├── README.md # Infrastructură chatbot, ngrok, troubleshooting +│ └── docs/ +│ ├── prd.md # Product Requirements Document +│ ├── v1-arhitectura.md # Arhitectură v1 (Flowise + Groq) +│ └── v2-arhitectura.md # Arhitectură v2 (Claude Agent SDK) +│ +├── lxc108-oracle/ # LXC 108 - Oracle Database XE 21c +│ ├── README.md # Documentație completă Oracle +│ ├── scripts/ +│ │ ├── export-roa2.sh +│ │ └── export-roa2.ps1 +│ ├── migration/ # Scripturi migrare Oracle 10g → 21c +│ │ ├── README.md +│ │ ├── 00-MASTER-MIGRATION.sh +│ │ └── ... +│ ├── clienti/ # Cazuri concrete clienți (depanare/recreare DB) +│ │ ├── README.md # Index cazuri +│ │ └── oracle-xe-21c/ # ROMPETROL ENERGY: recreare PDB după ORA-12954 +│ ├── docs/ # Ghid rutare instalare vs. migrare Oracle +│ ├── roa-windows-setup/ # Scripturi setup ROA pe Windows + Oracle 21c +│ └── sql/ +│ ├── roa/ # SQL-uri Oracle 10g compatibilitate +│ └── roa-romconstruct/ # Package PACK_CONTAFIN +│ +├── lxc301-docker-template/ # LXC 301 - sablon vechi, OPRIT (conflict de IP cu VM 109) +│ └── README.md # Predecesorul VM 109; are inca 10.0.20.37 si onboot=1 +│ +├── vm109-windows-dr/ # VM 109 - Windows Standby (Disaster Recovery) +│ ├── README.md # Configurare DR, RMAN backup +│ ├── docs/ +│ │ ├── PLAN_TESTARE_MONITORIZARE.md +│ │ ├── PROXMOX_NOTIFICATIONS_README.md +│ │ └── archive/ # Planuri și statusuri anterioare +│ └── scripts/ +│ ├── rman_backup*.bat # Scripturi RMAN Windows +│ ├── transfer_backups.ps1 # Transfer backup-uri +│ └── *-proxmox.sh # Monitorizare din Proxmox +│ +├── vm201-windows/ # VM 201 - Windows 11 (roacentral) +│ ├── README.md # Informații generale VM +│ ├── docs/ +│ │ ├── vm201-certificat-letsencrypt-iis.md +│ │ ├── vm201-dokploy-infrastructure.md # Arhitectură Dokploy + domenii +│ │ ├── vm201-roa-update-server.md # Server update aplicații ROA + CONTAFIN +│ │ ├── vm201-btgo-playwright-service.md # Scraper BT George (Playwright Python) +│ │ ├── vm201-troubleshooting-backup-nfs.md +│ │ └── vm201-troubleshooting-pana-curent-2026-01-11.md +│ ├── iis-configs/ # web.config pentru site-uri IIS +│ │ ├── roa-qr.web.config # Proxy roa-qr.romfast.ro → LXC 103 +│ │ └── roa-apps-wildcard.web.config # Proxy *.roa.romfast.ro → LXC 103 +│ └── scripts/ +│ ├── check-ssl-certificates.ps1 +│ ├── monitor-ssl-certificates.sh +│ └── setup-new-iis-sites.ps1 # Setup site-uri IIS noi (Dokploy) +│ +├── vm302-oracle-test/ # VM 302 - oracle-test-302 (test ROA Windows + Oracle 21c) +│ ├── README.md # Info VM, status testare XE/SE, workflow +│ └── docs/ +│ ├── dual-edition-test-plan.md # Plan testare 21c XE + SE +│ └── issues-se-prod.md # TODO: log erori prod Oracle SE +│ +├── lxc110-moltbot/ # LXC 110 - MoltBot (AI Telegram Bot) +│ ├── README.md # Configurare, securitate, comenzi +│ └── docs/ +│ +└── lxc171-claude-agent/ # LXC 171 - Claude Agent (Development) + ├── README.md # Configurare, conectare, workflow + └── scripts/ + ├── start-agent.sh # Pornire sesiune tmux + ├── work.sh # Meniu interactiv workflow + ├── new-task.sh # Creare branch nou + └── finish-task.sh # Finalizare task (commit+push) +``` + +--- + +## Documentație per Componentă + +### Cluster Proxmox +**Director:** `cluster/` + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Ghid complet: SSH, noduri, storage, comenzi Proxmox, hartă IP-uri | +| `cluster-ha-monitor.sh` | Script monitorizare High Availability | +| `docs/oprire-planificata-cluster.md` | **Oprire controlată a celor 3 noduri fără failover HA / fence** | +| `failover/README.md` | Strategia HA pe nivele de criticitate, failover VM 201 | +| `incidents/` | Post-mortem-uri incidente cluster | +| `ups/` | Sistem UPS: configurare NUT, shutdown orchestrat, test baterie | + +**Quick Start:** +```bash +# Acces Proxmox +ssh root@10.0.20.201 + +# Status cluster +ssh root@10.0.20.201 "pvecm status" + +# Status UPS +ssh root@10.0.20.201 "upsc nutdev1" +``` + +--- + +### LXC 106 - Gitea (Git Server) +**Director:** `lxc106-gitea/` +**IP:** 10.0.20.165 | **Host:** pvemini + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare, operații frecvente, modificare app.ini, troubleshooting | + +**Quick Start:** +```bash +# Status +ssh root@10.0.20.201 "pct exec 106 -- docker ps" + +# Restart după modificare config +ssh root@10.0.20.201 "pct exec 106 -- docker restart gitea" + +# Logs +ssh root@10.0.20.201 "pct exec 106 -- docker logs gitea --tail 50" +``` + +**URL:** https://gitea.romfast.ro + +--- + +### LXC 102 - Docker + Portainer + Docker Sandboxes +**Director:** `lxc102-docker/` +**IP:** 10.0.20.113 | **Host:** pvemini + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Componente, comenzi `sbx`, depanare erori la creare sandbox | + +**Rol:** Host Docker general (Portainer) + rulare agenți AI (opencode, Claude Code) izolați în microVM prin `sbx`. + +**Quick Start:** +```bash +# Docker +ssh root@10.0.20.201 "pct exec 102 -- docker ps" + +# sbx — se rulează DOAR ca userul work +ssh root@10.0.20.201 "pct exec 102 -- su - work -c 'sbx ls'" +``` + +> La orice eroare `500: failed to run sandbox container`, cauza reală e în +> `/home/work/.local/state/sandboxes/sandboxes/sandboxd/daemon.log` (`sbx diagnose` trece oricum). +> Vezi secțiunea de depanare din `lxc102-docker/README.md`. + +> **Memorie:** ridicat la 12GB + 4GB swap pe 2026-07-31 după OOM-uri cronice — baseline-ul +> e ~1.9GB (sbx + VS Code Remote + Claude) chiar fără sandbox-uri active, iar un sandbox +> real mai adaugă ~1.9GB. Vezi `lxc102-docker/README.md` → „Memorie". + +--- + +### LXC 103 - Dokploy + Traefik (Deployment Platform) +**Director:** `lxc103-dokploy/` +**IP:** 10.0.20.167 | **Host:** pvemini + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare, arhitectură, workflow deploy app-uri | +| `docs/pdf-qr-app.md` | Deploy pdf-qr-app în Dokploy | + +**Rol:** Control plane pentru deployment aplicații publice ROMFAST. +Traefik pe LXC 103 routează toate subdomeniile `*.roa.romfast.ro`. + +**Quick Start:** +```bash +# Status containere Dokploy + Traefik +ssh root@10.0.20.201 "pct exec 103 -- docker ps" + +# Logs Traefik +ssh root@10.0.20.201 "pct exec 103 -- docker logs traefik -f" +``` + +**URL:** https://dokploy.romfast.ro + +--- + +### LXC 104 - Flowise AI (Chatbot Maria) +**Director:** `lxc104-flowise/` +**IP:** 10.0.20.161 | **Host:** pvemini + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare Flowise, ngrok, troubleshooting CORS | +| `docs/prd.md` | Product Requirements Document chatbot | +| `docs/v1-arhitectura.md` | Arhitectură Flowise + Groq | +| `docs/v2-arhitectura.md` | Arhitectură Claude Agent SDK (planificat) | + +**Quick Start:** +```bash +# Status servicii +ssh root@10.0.20.201 "pct exec 104 -- systemctl status flowise" +ssh root@10.0.20.201 "pct exec 104 -- systemctl status ngrok" + +# Restart Flowise +ssh root@10.0.20.201 "pct exec 104 -- systemctl restart flowise" + +# Test chatbot +curl -s "https://mutual-special-koala.ngrok-free.app/api/v1/prediction/d4911620-07fe-41f8-adb4-f2f52d6ec766" \ + -X POST -H "Content-Type: application/json" -d '{"question":"test"}' +``` + +**URL Public:** https://mutual-special-koala.ngrok-free.app +**Pagina Web:** https://www.romfast.ro/chatbot_maria.html + +--- + +### LXC 108 - Oracle Database +**Director:** `lxc108-oracle/` +**IP:** 10.0.20.121 | **Host:** pvemini + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | PDB-uri, useri, parole, connection strings, export/import DMP | +| `scripts/export-roa2.sh` | Script export PDB roa2 | +| `scripts/export-roa2.ps1` | Script export pentru Windows | + +**Quick Start:** +```bash +# Acces în container +ssh root@10.0.20.201 "pct enter 108" + +# Restart Oracle +ssh root@10.0.20.201 "pct exec 108 -- docker restart oracle-xe" + +# Conexiune SQL*Plus +sqlplus sys/romfastsoft@10.0.20.121:1521/roa as sysdba +``` + +--- + +### LXC 110 - MoltBot (AI Chatbot) +**Director:** `lxc110-moltbot/` +**IP:** 10.0.20.173 (intern) | 100.120.119.70 (Tailscale) | **Host:** pveelite +**Canale:** Telegram + WhatsApp | **Model:** Claude Opus 4.5 + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare completă, securitate, comenzi MoltBot | + +**Quick Start:** +```bash +# Terminal UI (direct) +ssh -t moltbot@10.0.20.173 "clawdbot tui" + +# Status +ssh moltbot@10.0.20.173 "clawdbot status" + +# Web Dashboard (via SSH tunnel) +ssh -L 18789:127.0.0.1:18789 -N moltbot@10.0.20.173 & +# apoi http://localhost:18789 + +# Restart gateway +ssh moltbot@10.0.20.173 "clawdbot gateway restart" +``` + +**Componente:** Ubuntu 24.04, MoltBot v2026.1.24-3, Node.js v22, Bun, Tailscale SSH + +--- + +### LXC 171 - Claude Agent (Development Environment) +**Director:** `lxc171-claude-agent/` +**IP:** 10.0.20.171 (intern) | 100.95.55.51 (Tailscale) | **Host:** pveelite + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare completă, conectare SSH, workflow | +| `scripts/start-agent.sh` | Pornire/atașare sesiune tmux | +| `scripts/work.sh` | Meniu interactiv pentru workflow Git | +| `scripts/new-task.sh` | Creare branch nou pentru task | +| `scripts/finish-task.sh` | Finalizare task (commit + push) | + +**Quick Start:** +```bash +# Conectare (rețea internă) +ssh claude@10.0.20.171 + +# Conectare (Tailscale - de pe telefon/exterior) +ssh claude@100.95.55.51 + +# Pornire workflow +~/start-agent.sh # pornește tmux +~/work.sh # meniu interactiv +``` + +**Componente:** Ubuntu 24.04, Node.js v20, Claude Code, tmux, Git, Tailscale + +--- + +### VM 109 - Windows Standby (Disaster Recovery) +**Director:** `vm109-windows-dr/` +**Rol:** Backup Oracle database de pe server extern Windows (RMAN) + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurare DR, RMAN backup, scripturi transfer | +| `docs/PLAN_TESTARE_MONITORIZARE.md` | Plan testare și monitorizare DR | +| `docs/PROXMOX_NOTIFICATIONS_README.md` | Configurare notificări Proxmox | +| `docs/archive/` | Planuri implementare și statusuri anterioare | +| `scripts/rman_backup*.bat` | Scripturi RMAN pentru backup Windows | +| `scripts/transfer_backups.ps1` | Transfer backup-uri către storage | +| `scripts/*-proxmox.sh` | Scripturi monitorizare din Proxmox | +| `scripts/deploy.sh` | **Deploy scripturi pe noduri + VM 109** (rulează din repo) | +| `scripts/vm109-patch-window.sh` | Fereastră lunară Windows Update pe VM 109 | +| `scripts/check_servicing.ps1` | Guard servicing înainte de restore (guest) | + +**Quick Start:** +```bash +# Monitorizare backup Oracle DR +/mnt/e/proiecte/ROMFASTSQL/proxmox/vm109-windows-dr/scripts/oracle-backup-monitor-proxmox.sh + +# Test săptămânal DR +/mnt/e/proiecte/ROMFASTSQL/proxmox/vm109-windows-dr/scripts/weekly-dr-test-proxmox.sh +``` + +**Deploy modificări** (scripturile de mai sus rulează pe noduri, nu din repo): +```bash +cd proxmox/vm109-windows-dr/scripts +./deploy.sh --check # ce diferă față de noduri, fără să copieze +./deploy.sh # copiază pe pvemini + pveelite +./deploy.sh --guest # + scripturile PowerShell pe VM 109 +./deploy.sh --help # distribuția pe noduri și ce verifică +``` +Detalii: `vm109-windows-dr/README.md`, secțiunea **Deploy**. + +--- + +### VM 201 - Windows 11 +**Director:** `vm201-windows/` +**IP:** DHCP | **Host:** pvemini | **Rol:** Server update aplicații ROA + CONTAFIN, reverse proxy IIS, client aplicații, scraper BT George + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Configurație hardware, servicii, rețea, backup | +| `docs/vm201-certificat-letsencrypt-iis.md` | Certificate SSL Let's Encrypt, Win-ACME, SNI | +| `docs/vm201-dokploy-infrastructure.md` | Arhitectură Dokploy + domenii | +| `docs/vm201-roa-update-server.md` | Server update aplicații ROA (`/roaupdate`) + CONTAFIN AVFP (`/contafinupdate`) | +| `docs/vm201-btgo-playwright-service.md` | Scraper BT George — Playwright Python SDK, Windows Service | +| `docs/vm201-troubleshooting-backup-nfs.md` | Incident backup NFS (2025-10-08) | +| `docs/vm201-troubleshooting-pana-curent-2026-01-11.md` | Incident pană curent | +| `scripts/check-ssl-certificates.ps1` | Verificare/reînnoire certificate (Windows) | +| `scripts/monitor-ssl-certificates.sh` | Monitorizare certificate (Proxmox) | + +**Quick Start:** +```bash +# Reînnoire certificate SSL (din Proxmox) +ssh root@10.0.20.201 "qm guest exec 201 -- powershell -Command 'cd C:\\Tools\\win-acme; .\\wacs.exe --renew --force'" +ssh root@10.0.20.201 "qm guest exec 201 -- cmd /c iisreset" + +# Verificare certificate +echo | openssl s_client -connect roa.romfast.ro:443 -servername roa.romfast.ro 2>/dev/null | openssl x509 -noout -dates +``` + +--- + +### VM 302 - oracle-test-302 (Test ROA Windows + Oracle 21c) +**Director:** `vm302-oracle-test/` +**IP:** 10.0.20.130 | **Host:** pvemini | **Rol:** mediu de test pentru scripturile `lxc108-oracle/roa-windows-setup/` + +| Fișier | Descriere | +|--------|-----------| +| `README.md` | Info VM, status testare XE/SE, quick start, snapshots | +| `docs/dual-edition-test-plan.md` | Plan testare dual: Oracle 21c XE + Standard Edition | +| `docs/issues-se-prod.md` | TODO: log erori întâlnite în producție pe Oracle SE | + +**Status testare scripturi ROA Windows:** +- Oracle 21c **XE** — OK (validat pe VM 302) +- Oracle 21c **SE** — **TODO** (netestat în mediu test, erori în prod) + +**Quick Start:** +```bash +# Start VM (stopped între teste) +ssh root@10.0.20.201 "qm start 302" + +# Stop după test +ssh root@10.0.20.201 "qm shutdown 302" + +# Snapshot înainte de test +ssh root@10.0.20.201 "qm snapshot 302 pre-test --description 'Before ROA test'" +``` + +--- + +## Hartă Rapidă Resurse + +### Noduri Proxmox Cluster +| Nod | IP | Web GUI | +|-----|-----|---------| +| pve1 | 10.0.20.200 | https://10.0.20.200:8006 | +| **pvemini** | **10.0.20.201** | https://10.0.20.201:8006 | +| pveelite | 10.0.20.202 | https://10.0.20.202:8006 | + +### LXC Containers +| VMID | Nume | IP | Serviciu | Documentație | +|------|------|-----|----------|--------------| +| 100 | portainer | 10.0.20.170 | Docker Management (Remote Node) | `cluster/README.md` | +| **101** | **minecraft** | **10.0.20.162** | **Minecraft (Crafty Controller 4)** | **`lxc101-minecraft/`** | +| **102** | **docker.romfast.ro** | **10.0.20.113** | **Docker + Portainer + Docker Sandboxes (sbx)** | **`lxc102-docker/`** | +| **103** | **dokploy** | **10.0.20.167** | **Dokploy + Traefik (App Deployment)** | **`lxc103-dokploy/`** | +| **104** | **flowise** | **10.0.20.161** | **Flowise AI (Chatbot Maria)** | **`lxc104-flowise/`** | +| **106** | **gitea** | **10.0.20.165** | **Git Server** | **`lxc106-gitea/`** | +| **108** | **central-oracle** | **10.0.20.121** | **Oracle XE 21c** | **`lxc108-oracle/`** | +| **110** | **moltbot** | **10.0.20.173** | **MoltBot AI (Telegram+WhatsApp)** | **`lxc110-moltbot/`** | +| **171** | **claude-agent** | **10.0.20.171** | **Claude Code Dev Environment** | **`lxc171-claude-agent/`** | + +### Virtual Machines +| VMID | Nume | OS | Documentație | +|------|------|----|--------------| +| **109** | **standby-dr** | **Windows Server** | **`vm109-windows-dr/`** | +| **201** | **roacentral** | **Windows 11** | **`vm201-windows/`** | +| **310** | **Win11-Template-Sysprep** | **Windows 11 (template de clonare)** | **`cluster/README.md`** | +| **303** | **Win11-Adina** | **Windows 11** | **`cluster/README.md`** | +| **302** | **oracle-test-302** | **Windows 11 + Oracle 21c (test ROA)** | **`vm302-oracle-test/`** | + +--- + +## Navigare Rapidă - Am nevoie să... + +### Infrastructură +- **Văd toate IP-urile și serviciile** → `cluster/README.md` +- **Configurez SSH** → `cluster/README.md` → "Configurare Inițială SSH" +- **Monitorizez HA cluster** → `cluster/cluster-ha-monitor.sh` +- **Opresc toate serverele (lucrări electrice, mutare rack)** → `cluster/docs/oprire-planificata-cluster.md` +- **Înțeleg strategia de failover / ce e în HA** → `cluster/failover/README.md` +- **Gestionez UPS** → `cluster/ups/README.md` + +### Flowise AI / Chatbot Maria (LXC 104) +- **Configurez chatbot** → `lxc104-flowise/README.md` +- **Troubleshooting CORS/ngrok** → `lxc104-flowise/README.md` → "Troubleshooting" +- **PRD Chatbot** → `lxc104-flowise/docs/prd.md` +- **Arhitectură viitoare** → `lxc104-flowise/docs/v2-arhitectura.md` + +### Oracle Database (LXC 108) +- **Conectez la Oracle** → `lxc108-oracle/README.md` → "Conexiuni Oracle" +- **Export/Import DMP** → `lxc108-oracle/README.md` → "Export și Import Data Pump" +- **Restart Oracle** → `lxc108-oracle/README.md` → "Restart Oracle" +- **Scripturi migrare 10g→21c** → `lxc108-oracle/migration/README.md` +- **SQL-uri Oracle 10g** → `lxc108-oracle/sql/roa/` +- **Cazuri clienți (depanare/recreare DB)** → `lxc108-oracle/clienti/README.md` +- **Caz ROMPETROL — recreare PDB Oracle XE 21c (ORA-12954)** → `lxc108-oracle/clienti/oracle-xe-21c/README.md` + +### Windows VM 109 - Disaster Recovery +- **Configurez RMAN backup** → `vm109-windows-dr/README.md` +- **Monitorizez backup-uri** → `vm109-windows-dr/scripts/oracle-backup-monitor-proxmox.sh` +- **Test DR săptămânal** → `vm109-windows-dr/scripts/weekly-dr-test-proxmox.sh` +- **Am modificat un script și vreau să ajungă pe noduri** → `vm109-windows-dr/scripts/deploy.sh --check`, apoi fără `--check` +- **Testul DR a picat cu „Restore failed" fără log RMAN** → `vm109-windows-dr/README.md`, secțiunea *Windows Update pe VM 109* +- **Patching Windows pe VM 109** → `vm109-windows-dr/scripts/vm109-patch-window.sh` (prima duminică, 03:00) +- **Plan testare DR** → `vm109-windows-dr/docs/PLAN_TESTARE_MONITORIZARE.md` + +### Windows VM 302 - Test ROA Setup (XE + SE) +- **Info VM și quick start** → `vm302-oracle-test/README.md` +- **Plan testare dual-edition** → `vm302-oracle-test/docs/dual-edition-test-plan.md` +- **Erori prod Oracle SE (TODO)** → `vm302-oracle-test/docs/issues-se-prod.md` +- **Scripturi setup ROA Windows** → `lxc108-oracle/roa-windows-setup/` +- **Care director de instalare/migrare Oracle se folosește** → `lxc108-oracle/docs/instalare-si-migrare-oracle.md` + +### Windows VM 201 +- **Reînnoiesc certificate SSL** → `vm201-windows/docs/vm201-certificat-letsencrypt-iis.md` +- **Rezolv probleme VM locked** → `vm201-windows/docs/vm201-troubleshooting-backup-nfs.md` +- **Informații generale** → `vm201-windows/README.md` +- **Configurez site-uri IIS noi (Dokploy)** → `vm201-windows/docs/vm201-dokploy-infrastructure.md` +- **Script setup IIS automat** → `vm201-windows/scripts/setup-new-iis-sites.ps1` +- **Publicare versiune nouă ROA / CONTAFIN către clienți** → `vm201-windows/docs/vm201-roa-update-server.md` +- **Scraper BT George (btgo-playwright)** → `vm201-windows/docs/vm201-btgo-playwright-service.md` + +### Dokploy + Traefik (LXC 103) +- **Deploy aplicație nouă** → `lxc103-dokploy/README.md` → "Workflow: Adăugare App Nouă" +- **Setup server LXC 100** → `lxc103-dokploy/README.md` → "Pasul 2" +- **Deploy pdf-qr-app** → `lxc103-dokploy/docs/pdf-qr-app.md` +- **Arhitectură domenii** → `vm201-windows/docs/vm201-dokploy-infrastructure.md` + +### Docker Sandboxes (LXC 102) +- **Rulez opencode / Claude Code izolat** → `lxc102-docker/README.md` → "Comenzi uzuale" +- **Eroare "failed to run sandbox container"** → `lxc102-docker/README.md` → "Depanare" +- **Actualizez pachetul `docker-sbx`** → `lxc102-docker/README.md` → "De reținut pentru viitor" (folosește build-ul `~noble`) + +### MoltBot AI (LXC 110) +- **Configurare și comenzi** → `lxc110-moltbot/README.md` +- **Terminal UI** → `ssh -t moltbot@10.0.20.173 "clawdbot tui"` +- **Troubleshooting** → `lxc110-moltbot/README.md` → "Troubleshooting" +- **Canale:** Telegram + WhatsApp | **Model:** Claude Opus 4.5 + +### Claude Agent (LXC 171) +- **Configurare și conectare** → `lxc171-claude-agent/README.md` +- **Workflow dezvoltare** → `lxc171-claude-agent/README.md` → "Workflow Complet" +- **Scripturi workflow** → `lxc171-claude-agent/scripts/` +- **Troubleshooting** → `lxc171-claude-agent/README.md` → "Troubleshooting" + +--- + +## Servicii Web + +| Serviciu | URL | +|----------|-----| +| Proxmox pvemini | https://10.0.20.201:8006 | +| Oracle EM Express | http://10.0.20.121:5500/em | +| Portainer (Oracle) | http://10.0.20.121:9443 | +| Portainer Principal | http://10.0.20.170:9443 | +| Gitea | http://10.0.20.165:3000 | +| Dokploy (intern) | http://10.0.20.167:3000 | +| Dokploy (public) | https://dokploy.romfast.ro | +| pdf-qr-app | https://roa-qr.romfast.ro | +| Apps wildcard | https://*.roa.romfast.ro | +| Flowise AI (local) | http://10.0.20.161:3000 | +| Flowise AI (public) | https://mutual-special-koala.ngrok-free.app | +| Chatbot Maria | https://www.romfast.ro/chatbot_maria.html | + +--- + +## Task-uri Automate Configurate + +| Task | Locație | Frecvență | Scop | +|------|---------|-----------|------| +| SSL Certificate Check | VM 201 Task Scheduler | Zilnic 07:00 | Verifică/reînnoiește certificate | +| SSL Monitor | Proxmox cron | Zilnic 08:00 | Monitorizare externă certificate | +| Win-ACME Renew | VM 201 Task Scheduler | Zilnic 09:00 | Reînnoire automată Let's Encrypt | +| UPS Monthly Test | Proxmox cron | Lunar | Test baterie UPS | +| Backup Job | Proxmox | Zilnic 02:00 | Backup toate LXC/VM | + +--- + +**Ultima actualizare:** 2026-04-25 +**Autor:** Marius Mutu +**Proiect:** ROMFASTSQL - Infrastructure Documentation diff --git a/proxmox/lxc301-docker-template/README.md b/proxmox/lxc301-docker-template/README.md new file mode 100644 index 0000000..4a644db --- /dev/null +++ b/proxmox/lxc301-docker-template/README.md @@ -0,0 +1,48 @@ +# LXC 301 — docker-portainer-template (OPRIT, predecesorul VM 109) + +**VMID:** 301 · **Nod:** pveelite (10.0.20.202) · **Stare:** oprit +**Descriere din Proxmox:** „LXC Template cu Docker si Portainer" · **Tags:** `docker`, `oracle19` + +Container vechi, pastrat ca sablon. **Nu e folosit de nimic.** Documentat aici fiindca +era singurul guest din cluster fara nicio pagina si fiindca ascunde un conflict de IP. + +## ⚠️ Conflict de IP cu VM 109 (DR Oracle) + +| | LXC 301 | VM 109 | +|---|---|---| +| IP | **10.0.20.37** (static, in `net0`) | **10.0.20.37** (static, in Windows) | +| `onboot` | **1** — porneste la boot | 0 — pornit manual, doar la teste DR | +| Rol | fost DR Oracle 19c, inlocuit | DR Oracle activ | + +`DR_WINDOWS_VM_IMPLEMENTATION_PLAN.md` confirma mostenirea: „IP: 10.0.20.37 (same as +current LXC)". VM 109 a preluat adresa containerului pe care il inlocuia, dar containerul +si-a pastrat-o. + +**Riscul:** la un reboot al lui pveelite, LXC 301 porneste singur (`onboot: 1`) si ocupa +10.0.20.37. VM 109 nu porneste automat, deci nu se vede nimic — pana la urmatorul test +DR, cand VM 109 gaseste adresa luata. Un DR care esueaza exact cand ai nevoie de el. + +**Recomandare:** `pct set 301 -onboot 0` pe pveelite. Containerul ramane pe disc, dar nu +mai revendica adresa la boot. Daca nu mai e nevoie de el deloc, poate fi si sters — dar +verifica intai ca nu e volum de baza pentru alt container (`rootfs` e `basevol-301-disk-0`, +deci ar putea fi sablonul din care s-au clonat altele). + +## Configuratie + +| Parametru | Valoare | +|---|---| +| Hostname | `docker-portainer-template` | +| RAM / CPU | 8 GB / 2 nuclee | +| Disc | `local-zfs:basevol-301-disk-0`, 100 GB | +| Retea | `vmbr0`, `10.0.20.37/24`, gw `10.0.20.1` | +| OS | Debian | + +## Comenzi + +```bash +ssh root@10.0.20.202 "pct config 301" # configuratia, fara sa-l porneasca +ssh root@10.0.20.202 "pct set 301 -onboot 0" # opreste pornirea automata +ssh root@10.0.20.202 "pct start 301" # ATENTIE: revendica 10.0.20.37 +``` + +**Nu-l porni cat timp VM 109 ruleaza.** Vezi [`vm109-windows-dr/README.md`](../vm109-windows-dr/README.md).