Documenteaza incidentul Kingston SNV3S2000G hang la 2026-04-30 (Sensor 2
74°C → emergency mode + restart loop) si masurile aplicate: distantare
temporala backup-uri par/impar, mutare CT 101+110 pe pve1 backup-ssd,
nofail in fstab, hardware watchdog iTCO_wdt, monitoring CSV la 30 min.
Adauga scripturile /opt/scripts/kingston-thermal-{monitor,report}.sh
pentru tracking trend si alertare la depasirea pragurilor termale.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Ghid Conexiune SSH la Cluster Proxmox
Informații Generale Cluster
- Nume Cluster: romfast
- Număr Noduri: 3
- Status Quorum: Activ (3/3 noduri)
- Transport: knet
- Secure Auth: on
Noduri Cluster
| Nod | IP | Status | Node ID | Descriere |
|---|---|---|---|---|
| pve1 | 10.0.20.200 | Online | 1 | Nod cluster 1 |
| pvemini (local) | 10.0.20.201 | Online | 2 | Nod principal (aici rulează LXC-urile) |
| pveelite | 10.0.20.202 | Online | 3 | Nod cluster 3 |
Versiune Proxmox
- Versiune: pve-manager/8.4.14/b502d23c55afcba1 (kernel: 6.8.12-15-pve)
- Utilizator SSH: root
Configurare Inițială SSH
1. Generare Cheie SSH (din WSL/Linux)
# Generează cheie SSH RSA 4096-bit
ssh-keygen -t rsa -b 4096 -C "your-email@example.com"
# Locația default: ~/.ssh/id_rsa
# Apasă Enter pentru locația default
# Setează parolă opțională pentru cheie
2. Copierea Cheii pe Proxmox
# Metoda automată
ssh-copy-id root@10.0.20.201
# Metoda manuală
cat ~/.ssh/id_rsa.pub | ssh root@10.0.20.201 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
3. Testare Conexiune
ssh root@10.0.20.201
Storage Configuration
Storage-uri Disponibile (Cluster)
| Storage | Tip | Noduri | Status | Capacitate | Utilizat | Locație | Content |
|---|---|---|---|---|---|---|---|
local |
dir | Toate (separat pe fiecare) | active | 1.51 TiB | 128 KB | /var/lib/vz |
ISO, templates, backup |
local-zfs |
zfspool | pvemini, pve1, pveelite | active | 1.75 TiB | 324 GiB (18%) | rpool/data |
VM disks, LXC rootfs |
backup |
dir | Doar pvemini | active | 1.79 TiB | 333 GiB (18%) | /mnt/backup |
Backup-uri principale |
backup-ssd |
dir | Doar pve1 | disabled | - | - | /mnt/pve/backup-ssd |
Backup-uri SSD |
backup-nfs |
nfs | - | disabled | - | - | NFS server 10.0.20.201 | - |
backup-pvemini-nfs |
nfs | pve1, pveelite | disabled | - | - | NFS server 10.0.20.201 | - |
Explicații Storage
local (Director local)
- Scop: ISO-uri, template-uri CT, backup-uri temporare
- Locație: Fiecare nod are propriul
/var/lib/vzSEPARAT - Non-partajat: Fișierele nu sunt vizibile între noduri
- Conținut: ISO, vztmpl (templates), backup
local-zfs (ZFS Pool partajat)
- Scop: Storage PRINCIPAL pentru VM-uri și LXC-uri
- Pool:
rpool/data(ZFS) - Partajat: Disponibil pe pvemini, pve1, pveelite
- Conținut: images (VM disks), rootdir (LXC root filesystems)
- Performanță: Cea mai bună (ZFS + local storage)
- Sparse: Enabled (economie spațiu)
backup (Director backup pe pvemini)
- Scop: Backup-uri principale job automat
- Locație: DOAR pe pvemini (10.0.20.201) -
/mnt/backup - Non-partajat: Accesibil doar pe pvemini
- Conținut: Toate tipurile (VM, LXC, templates)
- Retention: keep-all=1 (păstrează toate backup-urile)
backup-ssd (Director backup pe pve1)
- Status: Disabled
- Locație: DOAR pe pve1 -
/mnt/pve/backup-ssd
backup-nfs și backup-pvemini-nfs
- Status: Disabled
- Server NFS: 10.0.20.201 (pvemini)
- Export:
/mnt/backupde pe pvemini - Note: Dezactivate - se folosește
backup(director local)
Căi Storage Important
Pe pvemini (10.0.20.201):
/var/lib/vz/ # local storage
/var/lib/vz/dump/ # backup-uri local
/mnt/backup/ # backup storage principal
/mnt/backup/dump/ # backup-uri job automat
rpool/data # ZFS pool pentru VM/LXC
ISO-uri și Templates:
/var/lib/vz/template/iso/ # ISO-uri pe fiecare nod (local)
/var/lib/vz/template/cache/ # LXC templates
Comenzi Utile Proxmox
Gestiune VM-uri
# Listare toate VM-urile
qm list
# Status VM specific
qm status <VMID>
# Start/Stop/Restart VM
qm start <VMID>
qm stop <VMID>
qm restart <VMID>
# Configurație VM
qm config <VMID>
# Modificare configurație
qm set <VMID> --memory 4096 --cores 2
Gestiune LXC Containers
# Listare containere
pct list
# Status container
pct status <CTID>
# Start/Stop container
pct start <CTID>
pct stop <CTID>
# Configurație container
pct config <CTID>
# Intrare în container
pct enter <CTID>
Gestiune Storage
# Listare storage-uri
pvesm status
# Conținut storage
pvesm list <storage_name>
# Spațiu disponibil
pvesm list local-zfs
# Ștergere volum
pvesm free <volume_id>
Gestiune Backup-uri
# Listare backup-uri
pvesh get /cluster/backup
# Backup manual VM
vzdump <VMID> --storage backup --compress gzip
# Restore backup
qmrestore /path/to/backup.vma.gz <VMID> --storage local-zfs
# Căutare backup-uri pentru VM specific
find /mnt/pve/backup-nfs/dump/ -name "*<VMID>*" | sort -V
Configurații Hardware Recomandate
Pentru VM Windows 11
qm set <VMID> --cpu host --cores 2 --memory 4096 --kvm 1
qm set <VMID> --machine q35 --bios ovmf --ostype win11
qm set <VMID> --net0 e1000=<MAC>,bridge=vmbr0,firewall=1
qm set <VMID> --virtio0 local-zfs:80,format=raw
Pentru VM Windows 7/10
qm set <VMID> --cpu host --cores 2 --memory 4096 --kvm 1
qm set <VMID> --machine pc-i440fx-2.12 --bios seabios --ostype win10
qm set <VMID> --net0 virtio=<MAC>,bridge=vmbr0,firewall=1
qm set <VMID> --virtio0 local-zfs:60,format=raw
Pentru LXC Ubuntu/Debian
pct set <CTID> --cores 2 --memory 2048
pct set <CTID> --net0 name=eth0,bridge=vmbr0,ip=dhcp,type=veth
pct set <CTID> --rootfs local-zfs:20
Template-uri și ISO-uri Disponibile
Windows ISO-uri
Win11_24H2_Original.iso- Windows 11 original (5.8GB)windows11rufus.iso- Windows 11 modificat cu Rufus (5.8GB)windows10.iso- Windows 10 (4.6GB)
Drivere
virtio-win-0.1.141.iso- Drivere VirtIO pentru Windows
Rețea
Configurația Bridge
- Bridge: vmbr0
- Interfață Fizică: enp87s0
- IP Bridge: 10.0.20.201/24
- Gateway: 10.0.20.1
- Subnet: 10.0.20.0/24
VM-uri și Containere Active
LXC Containers (Proxmox pvemini - 10.0.20.201)
| VMID | Nume | IP | CPU | RAM | Storage | Status | Tags |
|---|---|---|---|---|---|---|---|
| 100 | portainer | 10.0.20.170 | 2 cores | 1 GB | 21 GB | running | docker;portainer |
| 102 | coolify | - | 4 cores | 6 GB | 50 GB | stopped | debian |
| 103 | dokploy | 10.0.20.167 | 2 cores | 2 GB | 10 GB | running | docker;deployment |
| 104 | flowise | 10.0.20.161 | 4 cores | 2 GB | 100 GB | running | flowise;ollama |
| 106 | gitea | 10.0.20.165 | 2 cores | 4 GB | 250 GB | running | alpine;community-script;docker;gitea |
| 108 | central-oracle | 10.0.20.121 | 2 cores | 4 GB | 50 GB | running | docker;oracle |
Virtual Machines (QEMU)
| VMID | Nume | IP | CPU | RAM | Storage | Status | Descriere |
|---|---|---|---|---|---|---|---|
| 201 | roacentral | DHCP | 2 cores | 4 GB | 500 GB | running | Windows 11 - Client pentru aplicații |
| 300 | Win11-Template | - | 2 cores | 4 GB | 500 GB | stopped | Windows 11 Template pentru clonare |
🔧 LXC 108 - Oracle Database (Acces Rapid)
Informații Container
- VMID: 108 | Nume: central-oracle | IP: 10.0.20.121
- CPU: 2 cores | RAM: 4 GB | Storage: 50 GB (local-zfs)
- Docker: oracle-xe (Oracle XE 21c) | Status: Running
- Portainer: http://10.0.20.121:9443
Acces în LXC (fără user/parolă)
Nu ai nevoie de credențiale pentru LXC 108! Accesul se face prin Proxmox folosind
pct entersaupct exec.
# Metoda 1: Intrare directă în LXC
ssh root@10.0.20.201
pct enter 108
# Metoda 2: Execuție comandă din Proxmox
ssh root@10.0.20.201 "pct exec 108 -- docker ps"
Restart Oracle Database
# Opțiunea 1: Restart Oracle container (RAPID)
ssh root@10.0.20.201 "pct exec 108 -- docker restart oracle-xe"
# Opțiunea 2: Restart LXC complet
ssh root@10.0.20.201 "pct restart 108"
# Verificare după restart
ssh root@10.0.20.201 "pct exec 108 -- docker ps"
Verificări Rapide
# Status containere Docker
ssh root@10.0.20.201 "pct exec 108 -- docker ps"
# Loguri Oracle
ssh root@10.0.20.201 "pct exec 108 -- docker logs oracle-xe --tail 50"
# Test conexiune Oracle
nc -zv 10.0.20.121 1521
📖 Documentație Completă Oracle
Pentru detalii despre:
- Conexiuni Oracle (PDB-uri: roa, roa2)
- Useri și parole Oracle
- SQL*Plus, JDBC, TNS configurations
- Export/import DMP
- Comenzi SQL și troubleshooting
Vezi: ../lxc108-oracle/README.md
Backup Job Configuration
Job ID: backup-fbb668c0-726e
- Schedule: Daily la 02:00
- Compression: zstd
- Mode: snapshot
- Storage: backup
- VM-uri incluse: 100, 103, 104, 106, 108, 201
- Retention: 1 daily, 1 weekly
- Fleecing: Disabled
- Notes Template: {{guestname}}
Containere în backup:
- 100 (Portainer) - 10.0.20.170
- 103 (Dokploy) - 10.0.20.167
- 104 (Flowise) - 10.0.20.161
- 106 (Gitea) - 10.0.20.165
- 108 (Oracle) - 10.0.20.121
- 201 (Windows 11 VM) - DHCP
Comenzi Cluster
# Verificare status cluster
pvecm status
# Listare noduri
pvecm nodes
# Listare toate resurse cluster
pvesh get /cluster/resources
# Verificare configurație cluster
cat /etc/pve/corosync.conf
📡 Hartă Rapidă IP-uri
Noduri Proxmox Cluster
| Nod | IP | Rol | Web GUI |
|---|---|---|---|
| pve1 | 10.0.20.200 | Nod cluster 1 | https://10.0.20.200:8006 |
| pvemini | 10.0.20.201 | Nod principal (LXC-uri active) | https://10.0.20.201:8006 |
| pveelite | 10.0.20.202 | Nod cluster 3 | https://10.0.20.202:8006 |
LXC Containers (Servicii)
| VMID | Nume | IP | Port(uri) | Serviciu |
|---|---|---|---|---|
| 100 | portainer | 10.0.20.170 | 9443, 8000 | Portainer (Docker management) |
| 103 | dokploy | 10.0.20.167 | 3000 | Dokploy (Deployment platform) |
| 104 | flowise | 10.0.20.161 | 3000 | Flowise AI + Ollama |
| 106 | gitea | 10.0.20.165 | 3000, 22 | Gitea (Git server) |
| 108 | central-oracle | 10.0.20.121 | 1521, 5500, 9443 | Oracle XE 21c + Portainer |
Virtual Machines
| VMID | Nume | IP | OS | Rol |
|---|---|---|---|---|
| 201 | roacentral | DHCP | Windows 11 | Client aplicații |
| 300 | Win11-Template | - | Windows 11 | Template pentru clonare |
Accesuri Rapide
# Oracle Database (LXC 108) - Vezi ../lxc108-oracle/README.md pentru detalii
nc -zv 10.0.20.121 1521 # Test port Oracle
sqlplus sys/romfastsoft@10.0.20.121:1521/roa as sysdba
# Portainer Oracle
http://10.0.20.121:9443
# Portainer Principal
http://10.0.20.170:9443
# Gitea
http://10.0.20.165:3000
# Dokploy
http://10.0.20.167:3000
# Flowise AI
http://10.0.20.161:3000
Pentru conexiuni Oracle detaliate (PDB-uri, useri, TNS, export DMP):
Vezi fișierul ../lxc108-oracle/README.md
Troubleshooting
Probleme Comune SSH
# Regenerare host keys pentru toate nodurile
ssh-keygen -R 10.0.20.200
ssh-keygen -R 10.0.20.201
ssh-keygen -R 10.0.20.202
# Conectare cu debug
ssh -v root@10.0.20.201
# Test conectivitate toate nodurile
ping -c 3 10.0.20.200
ping -c 3 10.0.20.201
ping -c 3 10.0.20.202
Probleme Cluster
# Verificare quorum
pvecm status
# Restart servicii cluster
systemctl restart pve-cluster
systemctl restart corosync
# Verificare log-uri cluster
journalctl -u corosync -f
journalctl -u pve-cluster -f
Probleme VM Windows 11
# Bypass cerințe TPM/Secure Boot în setup
reg add "HKLM\SYSTEM\Setup\LabConfig" /v "BypassTPMCheck" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\Setup\LabConfig" /v "BypassSecureBootCheck" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\Setup\LabConfig" /v "BypassRAMCheck" /t REG_DWORD /d 1 /f
# Forțare cont local în OOBE
oobe\BypassNRO.cmd
Verificare Status Servicii
# Status servicii Proxmox
systemctl status pveproxy
systemctl status pvedaemon
systemctl status pvestatd
# Restart servicii dacă e nevoie
systemctl restart pveproxy
Web Interface
Accesare Web GUI
- Nod pvemini (principal): https://10.0.20.201:8006
- Nod pve1: https://10.0.20.200:8006
- Nod pveelite: https://10.0.20.202:8006
- Utilizator: root
- Port: 8006 (HTTPS)
Note Importante
Cluster și High Availability
- Clusterul are 3 noduri - Quorum necesită 2/3 noduri online
- Întotdeauna fă backup înainte de modificări majore
- Storage sincronizat - backup și backup-nfs sunt disponibile pe toate nodurile
Performance și Configurații
- Folosește storage local-zfs pentru performanță optimă VM-uri/containere
- Pentru Windows 11 folosește placa de rețea e1000 în loc de VirtIO pentru compatibilitate
- CPU type 'host' oferă performanțe maxime cu KVM=1
- VM 201 (Windows 11) rulează pe local-zfs pentru performanță optimă
- LXC 108 (Oracle XE 21c) - IP: 10.0.20.121 - Acces fără user/parolă prin
pct enter 108
Backup și Siguranță
- Backup zilnic la 02:00 pentru toate containerele active și VM 201
- Retention policy: 1 daily + 1 weekly
- Compression zstd pentru backup-uri eficiente
- Testează conexiunea SSH pe toate nodurile înainte de automatizări
Containere Active
- 6 containere LXC active - Portainer (170), Dokploy (167), Flowise (161), Gitea (165), Oracle (121)
- Container 103 (Dokploy) - Platform deployment și management Docker
- Container 108 (Oracle XE 21c) - Database principal
- Restart rapid:
ssh root@10.0.20.201 "pct exec 108 -- docker restart oracle-xe" - Restart complet LXC:
ssh root@10.0.20.201 "pct restart 108" - Portainer: http://10.0.20.121:9443
- Restart rapid:
High Availability (HA)
Cluster-ul folosește HA pentru failover automat al containerelor critice. Configurația a fost revizuită după incidentul 2026-04-20 (vezi incidents/2026-04-20-cluster-outage.md).
Grupuri HA
group: ha-group-main → pvemini (primar 100), pveelite (50), pve1 (33)
group: ha-group-elite → pveelite (primar 100), pve1 (33), pvemini (50)
Resurse HA active
| Resursă | Grup | Home node | Max restart | Max relocate | Notă |
|---|---|---|---|---|---|
| ct:100 portainer | ha-group-main | pvemini | 3 | 3 | |
| ct:101 minecraft | ha-group-elite | pvemini | 3 | 3 | Rulează pe pveelite |
| ct:104 flowise | ha-group-main | pvemini | 3 | 2 | Limite adăugate 2026-04-20 |
| ct:105 test | ha-group-elite | pvemini | - | - | Stopped |
| ct:106 gitea | ha-group-main | pvemini | 3 | 3 | |
| ct:108 central-oracle | ha-group-main | pvemini | 3 | 2 | Limite adăugate 2026-04-20 |
VM 109 (oracle-dr-windows) NU mai e în HA — scos intenționat 2026-04-20 după buclă OOM. Pornit exclusiv de scriptul DR test sâmbăta 06:00.
Verificare HA
ssh root@10.0.20.201 "ha-manager status"
ssh root@10.0.20.201 "ha-manager config"
Modificare limite HA (exemplu)
ha-manager set ct:108 --max_restart 3 --max_relocate 2
Corosync Tuning
După incidentul 2026-04-20 (crash pveelite din USB LAN disconnect → pierdere cvorum → watchdog reset), tokenul corosync a fost mărit pentru a tolera glitch-uri scurte de rețea.
Config curent (/etc/pve/corosync.conf, config_version: 16):
totem {
token: 10000
token_retransmits_before_loss_const: 10
}
Impact: cluster-ul așteaptă 10 secunde înainte să declare un nod mort (default era 1 sec). Tolerează USB disconnect scurt pe pveelite fără să forțeze reboot.
Verificare:
ssh root@10.0.20.201 "corosync-cmapctl | grep 'totem.token '"
# runtime.config.totem.token (u32) = 10650
# totem.token (u32) = 10000
Diagnostic Tools (pvemini)
Instalate 2026-04-20 pentru a prinde cauza crash-ului din 00:23 (care nu a lăsat niciun log).
rasdaemon — MCE + PCIe AER monitoring
# Verificare erori hardware istorice
ssh root@10.0.20.201 "ras-mc-ctl --summary"
# Memory errors / PCIe AER errors / Extlog / MCE
netconsole — kernel logs către pve1
pvemini trimite log-uri kernel via UDP către pve1. Dacă pvemini crashează hard, ultimele linii kernel sunt captate pe pve1.
# Logs pre-crash pe pve1
ssh root@10.0.20.200 "tail /var/log/netconsole-pvemini.log"
# Status serviciu listener
ssh root@10.0.20.200 "systemctl status netconsole-receiver"
Config pe pvemini: /etc/modules-load.d/netconsole.conf
Config pe pve1: /etc/systemd/system/netconsole-receiver.service + /var/log/netconsole-pvemini.log
kdump-tools — captură kernel crash dump
# Verificare configurare
ssh root@10.0.20.201 "cat /proc/cmdline | grep crashkernel"
ssh root@10.0.20.201 "systemctl is-active kdump-tools"
# La următorul crash, dump-ul va fi în:
ssh root@10.0.20.201 "ls /var/crash/"
Parametru: crashkernel=128M în /etc/kernel/cmdline (Proxmox folosește systemd-boot prin proxmox-boot-tool, nu GRUB).
kernel.panic auto-reboot
ssh root@10.0.20.201 "sysctl kernel.panic"
# kernel.panic = 10 → auto-reboot după 10s la kernel panic
Mail Notifications
Toate 3 nodurile trimit mail prin mail.romfast.ro:465 cu autentificare SMTP SASL (cont ups@romfast.ro).
Configurare Postfix
Config în /etc/postfix/main.cf pe fiecare nod:
relayhost = [mail.romfast.ro]:465
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_wrappermode = yes
smtp_tls_security_level = encrypt
Credentiale în /etc/postfix/sasl_passwd (permisiuni 600).
Test rapid
ssh root@10.0.20.201 "echo 'test' | mail -r 'ups@romfast.ro' -s 'test $(hostname)' mmarius28@gmail.com"
ssh root@10.0.20.201 "journalctl -u postfix@- --since '1 min ago' | grep status="
# Trebuie să vezi: status=sent (250 OK ...)
Dependințe
libsasl2-modules(instalat 2026-04-20 — fără el:SASL authentication failure: No worthy mechs found)
OOM Alerting
Cron pe fiecare nod verifică la 1 minut dacă au avut loc OOM-kills. Dacă da, trimite mail cu detalii.
Configurare
- Script:
/opt/scripts/oom-alert.shpe fiecare nod (pve1, pvemini, pveelite) - Cron:
* * * * * /opt/scripts/oom-alert.sh - Mail destinat:
mmarius28@gmail.com(de laups@romfast.ro)
Verificare script instalat
for ip in 10.0.20.200 10.0.20.201 10.0.20.202; do
ssh root@$ip "crontab -l | grep oom-alert"
done
Test simulare
# Generează OOM kill mesaj fals (NU omoară nimic, doar log)
ssh root@10.0.20.202 "logger -t kernel -p kern.warn 'Killed process 99999 (fake-test) total-vm:1kB'"
# Așteaptă 1 min, verifică inbox
Swap pe pveelite
Adăugat 2026-04-20 ca insurance împotriva OOM cascade (pveelite are doar 16 GB RAM).
- Swap device:
/dev/zvol/rpool/swap(ZFS zvol 8 GB) - Mount:
/etc/fstab - swappiness: 10 (folosește swap doar sub presiune reală)
Verificare
ssh root@10.0.20.202 "swapon --show; sysctl vm.swappiness"
Recreare (dacă e nevoie)
zfs create -V 8G -b 4K -o compression=zle -o logbias=throughput \
-o sync=always -o primarycache=metadata -o secondarycache=none \
rpool/swap
mkswap -f /dev/zvol/rpool/swap
echo '/dev/zvol/rpool/swap none swap sw 0 0' >> /etc/fstab
swapon -a
Documentație Asociată
Index Principal
- README.md -
../README.md- Index complet documentație Proxmox
Incidents
- 2026-04-20 Cluster Outage:
incidents/2026-04-20-cluster-outage.md— post-mortem complet + plan prevenție
LXC Containers
- LXC 108 - Oracle Database:
../lxc108-oracle/README.md
Virtual Machines
- VM 201 - Windows 11:
../vm201-windows/README.md- SSL Certificates:
../vm201-windows/docs/vm201-certificat-letsencrypt-iis.md - Troubleshooting:
../vm201-windows/docs/
- SSL Certificates:
- VM 109 - Oracle DR Windows:
../vm109-windows-dr/README.md— NU mai e în HA din 2026-04-20
Cluster Resources (acest director)
- HA Monitor:
cluster-ha-monitor.sh - Sistem UPS:
ups/README.md
Ultima actualizare: 2026-04-20 Autor: Marius Mutu Proiect: ROMFASTSQL - Proxmox Infrastructure Documentation