# Proxmox Virtual Environment

Il Proxmox Virtual Environment (Proxmox VE o PVE) è un server software open source per la gestione della virtualizzazione. È una distribuzione Linux basata su Debian con un kernel Ubuntu LTS modificato e consente l'implementazione e la gestione di macchine virtuali e containerization. Proxmox VE include una console web ed altri strumenti da riga di comando, fornisce le API REST per connettere strumenti di terze parti. Sono supportati due tipi di virtualizzazione: container-based con LXC (a partire dalla versione 4.0 sostituendo OpenVZ utilizzato fino alla versione 3.4), e virtualizzazione completa con KVM. È inclusa un'interfaccia web per l'amministrazione. Proxmox VE è concesso in licenza sotto la GNU Affero General Public License versione 3.

## Storia

Lo sviluppo di Proxmox VE è iniziato quando Dietmar Maurer e Martin Maurer, due sviluppatori Linux, hanno scoperto che OpenVZ non aveva uno strumento di backup né una GUI di gestione. KVM è apparso contemporaneamente in Linux ed è stato aggiunto poco dopo. La prima versione pubblica è avvenuta nell'aprile 2008. Supportava container e virtualizzazione completa, gestita con un'interfaccia utente web simile ad altre offerte commerciali.

## Caratteristiche tecniche

Proxmox VE è una piattaforma di virtualizzazione open source, dotato di un'interfaccia web-based, per gestire due tecnologie di virtualizzazione server: Kernel-based Virtual Machine (KVM) per le macchine virtuali e LXC per i container. Il software sorgente è aperto, basato su GNU AGPL v3. L'azienda vende l'assistenza per i clienti basata su un abbonamento opzionale: tramite l'abbonamento gli utenti ottengono l'accesso ad un repository software aziendale.

### Modello di archiviazione

Supporta l'archiviazione locale con LVM, directory e ZFS, nonché altri diversi tipi di archiviazione di rete come iSCSI, Fibre Channel, NFS, GlusterFS e Ceph.

### Cluster high availability

Può essere raggruppato su più nodi server. Dalla versione 2.0, Proxmox VE offre l'opzione di high availability per i cluster basati sullo stack di comunicazione Corosync. I singoli server virtuali possono essere configurati utilizzando il ha-manager integrato. Se un nodo Proxmox diventa non disponibile o non funziona, i server virtuali possono essere spostati automaticamente su un altro nodo e riavviati. Il filesystem Proxmox Cluster (pmxcfs), basato su database e filesystem FUSE, consente di eseguire la configurazione di ciascun nodo del cluster tramite lo stack di comunicazione Corosync.

### Infrastruttura Iperconvergente

Con l'integrazione di Ceph, una piattaforma software-defined storage open source, Proxmox VE ha la capacità di eseguire e gestire lo storage Ceph direttamente sui nodi dell'hypervisor, il tutto con un'unica amministrazione del sistema tramite un'interfaccia di gestione web centralizzata.
in una Infrastruttura Iperconvergente più nodi possono essere messi in cluster per creare pool di risorse condivise di calcolo e storage, dimensionate opportunamente in base ai carichi di lavoro. Questo permette di ottenere un'infrastruttura estremamente scalabile.

### Migrazione in tempo reale

Almeno dal 2012, in un cluster high availability, le macchine virtuali live possono essere spostate da un host fisico a un altro senza tempi di inattività. Fin dalla versione Proxmox VE 1.0, rilasciata il 29 ottobre 2008, è supportata la migrazione live di KVM e OpenVZ.

### Applicazioni virtuali

Proxmox VE dispone di software già pronti che possono essere scaricati tramite la GUI, come ad esempio la libreria di software per la virtualizzazione TurnKey Linux.

### Backup dei dati

PVE include il software di backup, vzdump, che consente la compressione dei dati e il funzionamento in modalità in linea o snapshot. Dal 2020 esiste anche Proxmox Backup Server (PBS), un software ad architettura client-server dedicato ai backup che offre compressione, cifratura autenticata e backup incrementali.