ProxmoxDebianInstall » Cronologia » Versione 9
Versione 8 (Simone Piccardi, 16-05-2024 17:18) → Versione 9/11 (Simone Piccardi, 16-05-2024 17:20)
h1. Installare una macchina virtuale Debian su Proxmox "Proxmox VE":https://www.proxmox.com/en/proxmox-virtual-environment/overview è una potente piattaforma di virtualizzazione che consente di sostituire senza problemi e senza costi di licenza la più nota VmWare, supportando configurazioni avanzate, come clustering, HA, iperconvergenza, e molto altro. Ha inoltre il vantaggio di poter utilizzare sia le classiche macchine virtuali su cui è possibile installare qualunque sistema operativo, che il nuovo approccio, più veloce ed efficiente, dei container Linux. Vedermo in questo articolo come è possibile installare una macchina virtuale Debian, usando una configurazione che possa risultare adatta all'uso della stessa con Proxmox, in particolare riguardo alle strategie di partizionamento del disco da adottare per semplificare le eventuali future operazioni di allargamento del disco. Tratteremo una installazione eseguita attraverso la rete, usando buona parte dei default predisposti dall'installer ufficiale di Debian, utillizzando la cosiddetta modalità _netinst_. Per questo occorrerà scaricare la ISO del CD di installazione, che può essere ottenuta da Debian scaricandola a partire dalla pagina: https://www.debian.org/CD/netinst/ h2. La creazione di una macchina virtuale su Proxmox. Il primo passo da fare è creare dall'interfaccia web di Proxmox la macchina virtuale che andremo ad installare. Dato che per l'installazione sarà necessaria l'immagine ISO di un CD di installazione, sarà opportuno scaricarlo preventivamente in modo da poterlo associare alla macchina durante la procedura di creazione della stessa (anche se si può sempre aggiungerlo in un secondo tempo). La piattaforma Proxmox prevede che le immagini ISO possano essere salvate su uno qualunque degli storage disponibili che supporti il caricamento dei file, in genere nell'installazione di default viene impostato sempre uno storage "local" che corrisponde alla directory @/var/lib/vz/@ del server Proxmox, che è quello da preferire a questo scopo. A questo si affianca normalmente, sempre in caso di installazione di default, uno storage @local-lvm@ che può solo contenere immagini di disco, e che sarà quello che useremo invece per il disco della macchina virtuale. !ProxmoxLocalStorage.png! Per il caricamento dell'immagine ISO basterà selezionare lo storage "local" dal menù a sinistra, e poi dal sottomenù a fianco la voce "ISO Images", da li si potrà caricare direttamente un'immagine ISO, se disponibile sul proprio PC, o farla scaricare direttamente dal server, indicandone la URL. Nel nostro caso useremo questa seconda possibilità, premendo sul pulsante "Download from URL", ed indicando come URL quella ottenibile dai link pubblicati, nella pagina citata, dove in basso si dovrà scegliere l'immagine per l'architettura amd64. !ISO-DownloadFromURL.png! ed una volta eseguito lo scaricamento, di cui sarà mostrato un progressivo in una finestra, si potrà verificare la presenza del file @debian-12.5.0-amd64-netinst.iso@. Lo stesso risultato si potrà ottenere anche a riga di comando, posizionandosi nella directory delle ISO all'interno dello storage @local@ e scaricando direttamente il file li, con: <pre> cd /var/lib/vz/template/iso/ wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso </pre> Una volta che l'immagine ISO per l'installazione sia disponibile (qui si è preso quella più recente, per Debian 12 Bookworm) si potrà passare alla creazione di una nuova macchina virtuale utilizzando il wizard attivabile dal pulsante blu "Create VM" in alto a destra. Si otterrà allora una prima schermata, in cui verrà proposto il primo VMID libero; qui sarà sufficiente indicare un nome nella casella "Name": !Create-VM-General.png! e premendo "Next" si passerà alla seconda schermata in cui impostare l'uso della ISO appena scaricata nella casella ISO Image (che è obbligatoria e resta cerchiata rossa fintanto che non si è effettuata la scelta) utilizzando il relativo menù a tendina che presenta tutte quelle disponibili: !Create-VM-OS.png! sulla terza schermata vengono proposte le impostazioni di sistema per le emulazioni usate dalla macchina virtuale (per la scheda grafica, il tipo di macchina, di BIOS, di controller SCS per i dischi, ecc.), qui in genere a meno di esigenze particolare non c'è da cambiare nulla, e si potrà passare alla schermata successiva dove si configureranno i dischi. Il default qui è usare il primo storage disponibile, che in genere è @local@, che non è il più adatto perché le immagini dei dischi sarebbero su file, e quando è disponibile usare uno storage che accede direttamente ad un dispositivo fisico (come @local-lvm@) le prestazioni sono migliori. Pertanto si provvederà a inserire questo dal menù a tendina della casella storage. Si potrà anche indicare la dimensione del disco, ma in questo caso ci limiteremo ad accettare il default, il disco potrà infatti essere sempre ampliato in un secondo momento in maniera relativamente semplice se installeremo la macchina come indicato in seguito. !Create-VM-Disks.png! nella schermata successiva si potranno impostare il numero ed il tipo di processori, ed anche qui si possono usare i default illustrati, i valori scelti infatti potranno essere cambiati direttamente dall'interfaccia di gestione una volta creata la macchina in un qualunque momento successivo, al prezzo di un riavvio della stessa, lo stesso dicasi per la successiva schermata dove viene proposta una dimensione della RAM assegnata alla macchina virtuale. !Create-VM-CPU.png! L'ultima schermata di configurazione è quella relativa alla rete, dove si dovrà scegliere il bridge su cui attestare la prima interfaccia di rete della macchina (che dipende dalla configurazione del server Proxmox). In questo caso si potrà configurare solo una interfaccia di rete, se se ne vogliono avere più di una le si dovranno aggiungere una volta creata la macchina virtuale dall'interfaccia di gestione dell'hardware della stessa; anche in questo caso si possono accettare i defalt (eventualmente eliminando la spunta Firewall quando non si intende usare Proxmox per la relativa gestione, che comunque è disattivata di default a livello generale): !Create-VM-Network.png! Finita la serie di schermate di impostazione, si dovrà concludere la creazione della macchina virtuale sulla schermata riassuntiva finale, ma è sempre possibile viaggiare avanti ed indietro nelle scelte fatte, eventualmente modificandole, con i pulsanti "Back" e "Next", chiudendo la creazione con "Finish". Una volta fatto questo la nuova VM comparirà nell'elenco del menù a sinistra, e si potrà cliccare sulla stessa per ottenere la relativa interfaccia di configurazione: !JustCreatedVM.png! h2. L'installazione di Debian Una volta creata la macchina virtuale si potrà procedere ad eseguire una installazione di Debian, usando il CD di _netinst_ che abbiamo predisposto. Per farlo la si potrà avviare dal pulsante "Start", ed una volta partita premendo sul pulsante "Console" si aprirà una nuova finestra del browser con la relativa console a cui ci si potrà collegare. In questo caso otterremo la schermata di avvio dal CD di installazione di Debian, dato che questo all'inizio è l'unico dispositivo avviabile: !VM-NetInst-Start.png! qui si potrà selezionare la modalità di installazione, scegliendo la seconda voce, "Install" dovendo installare una macchina server sulla quale non serve l'interfaccia grafica, facendo con questo partire il programma semigrafico che esegue la procedura di installazione del sistema. Chi è pratico della stessa, può saltare i prossimi tre paragrafi, andando direttamente all'unico che ha dei requisiti specifici per l'uso con Proxmox, che è quello sul "Partizionamento del disco". h3. Scelta della localizzazione La procedura di installazione prevede una serie di passi da eseguire controllati dalle richiste delle impostazioni eseguite dall'installatore in altrettante schermate, in cui ci si sposta con le frecce e, il tabulatore, ed in cui si seleziona una scelta con l'invio. Qualora sia necessario può essere richiesto di inserire dati drettamente, o possono essere proposte dei menù di scelta su cui scorrere per selezionare quella voluta. La prima richiesta è quella della scelta della lingua che il programma userà per tutte le schermate successive; il default è l'inglese ma si potrà scegliere dall'elenco presentato di quelle disponibili l'italiano: !VM-NetInst-Lang.png! ma se si esegue questo cambiamento si otterrà comunque un avviso del fatto che alcuni dialoghi potrebbero restare non tradotti, e si potrà proseguire solo accettando esplicitamente la cosa nella richiesta successiva: !VM-NetInst-ConfirmLang.png! Verrà poi chiesto di selezionare in quale paese ci si trova (l'italiano viene infatti usato anche in Svizzera) per scegliere opportunamente il fuso orario ed altre configurazioni della localizzazione, una volta fatto questo si potrà scegliere che disposizione della tastiera usare (con predefinita quella italiana). In tutti questi passi eccetto la selezione iniziale della lingua, sarà sufficiente premere invio. !VM-NetInst-CountrySel.png! !VM-NetInst-Keyboard.png! h3. h3, Configurazione della rete Una volta scelta la lingua il passo successivo prevede la configurazione della rete, in questo caso verrà tentata una auto-configurazione che potrà avere successo se è raggiungibile un server DHCP. In genere nel caso dell'installazione di server questo non è disponibile ed è comunque preferibile effettuare una configurazione statica, per evitare dover dipendere dal funzionamento del DHCP. Per questo occorre eseguire una configurazione manuale, per cui al messaggio di fallimento dell'autoconfigurazione occorrerà proseguire con un invio, ed accettare nella schermata successiva la configurazione manuale della rete: !VM-NetInst-ManualNet.png! Con questa scelta il programma di installazione chiederà un indirizzo IP con la relativa netmask in notazione CIDR: !VM-NetInst-IPNetSetting.png! e quindi prima l'indirizzo del gateway, poi quello del DNS, poi il nome della macchina ed infine il dominio in cui si colloca: !VM-NetInst-NetGW.png! !VM-NetInst-AddrDNS.png! !VM-NetInst-Hostname.png! !VM-NetInst-Domain.png! h3. Configurazione h3.Configurazione degli accessi Completata la configurazione della rete, verrà richiesto di impostare le credenziali di accesso per l'amministratore (due volte per evitare errori di battitura): !VM-NetInst-RootPW.png! !VM-NetInst-RootPW2.png! e poi verrà richiesta la creazione di un utente normale, di cui indicareprima un nome e cognome, e poi un username, e di nuovo due volte la password (come per root): !VM-NetInst-NomeCompleto.png| !VM-NetInst-Username.png! h3. Partizionamento del disco Questo è passo più rilevante nella configurazione della macchina virtuale ad uso di Proxmox. Il programma di installazione presenta infatti diverse opzioni per un partizionamento guidato, calibrate però sulle necessità di installazione su una macchina fisica, ma queste non mai sono una scelta ottimale per una macchina virtuale in cui lo spazio disco allocabile può essere gestito su un unico disco virtuale la cui allocazione effettiva sullo spazio disco fisico viene gestita esternamente da Promox. Per questo è sempre opportuno scegliere il partizionamento manuale: !VM-NetInst-ManualPartition.png! Questa scelta avvierà la serie di schermate che consentono la gestione del partizionamento dell'unico disco (virtuale) disponibile, questo andrà prima selezionato: !VM-NetInst-DiskChoice.png! e siccome il disco inizlalmente è vuoto, andrà chiesta la creazione della tabella delle partizioni sullo stesso: !VM-NetInst-PartCreate.png! poi, selezionando lo spazio libero: !VM-NetInst-FreeSpaceChoice.png! si dovrà creare una prima partizione, che useremo per la swap, impostandone la dimensioni (4G sono ormai sempre più che sufficienti, dimensioni maggiori non hanno senso per i server che non devono supportare la sospensione su disco), occorrerà poi indicare il tipo di partizione (primaria) e la posizione nel disco della stessa (inizio): !VM-NetInst-CreateFirstPart.png! !VM-NetInst-SwapDimension.png! !VM-NetInst-PartType.png! !VM-NetInst-PartPosition.png! questi passi indicheranno come creare la partizione sul disco, ma una volta compiuti se ne dovrà indicare le modalità d'uso da parte del sistema dalla successiva schermata: !VM-NetInst-PartitionUse.png! premendo sulla scelta predefinita (che è usarla per la radice del filesystem del sistema), si otterrà un menù delle alternative su cui occorrerà spostarsi per selezionare l'utilizzo voluto (area di swap): !VM-NetInst-ChoiceSwap.png! confermando poi la scelta per terminare l'impostazione: !VM-NetInst-ConfirmSwapPart.png! A questo punto si dovrà ripetere la scelta dello spazio libero per creare una seconda partizione: !VM-NetInst-ChoiceSecondFree.png! e ripetere i passaggi precedenti, indicando di creare una nuova partizione, impostandone le dimensioni (stavolta accettando quelle proposte che prendono tutto lo spazio libero rimanente), indicando di nuovo come tipo di partizione quella primaria (il default stavolta sarebbe logica, ma va cambiato); prendendo tutto lo spazio non verrà chiesta la posizione della partizione. A questo punto si verrà di nuovo riportati sulla schermata per configurare l'uso della partizione, che proporrà l'uso della stessa per la radice del sistema, e la si potrà scegliere senza fare modifiche: !VM-NetInst-PartitionUse2.png! Fatto questo il programma di installazione ci riportertà nella schermata iniziale della gestione del partizionamento, senza più spazio disponibile e bisognerà scegliere di terminare la procedure a salvare le scelte fatte: !VM-NetInst-PartitioningTermination.png! e confermare le modifiche ai dischi: !VM-NetInst-PartitioningConfirm.png! Con questa ultima conferma inizierà l'installazione del sistema base nel disco appena partizionato, con i pacchetti disponibili nel CD di installazione: !VM-NetInst-InstallProgression.png! h2. Configurazione delle fonti aggiuntive Dato che si tratta di un CD per l'installazione di rete i pacchetti in esso presenti sono la frazione minimale necessaria a poter eseguire le fasi iniziali dell'installazione, pertanto verrà prima chiesto se si vogliono analizzare eventuali CD aggiuntivi, cosa che non serve, visto che non ne abbiamo, per cui si dovrà rispondere negativamente alla richiesta: !VM-NetInst-NoOtherInstallSupports.png! dopo di che verrà chiesto di configurare gli accessi ai mirror remoti dei pacchetti Debian; questi sono ordinati per paese dei mirror, ed una volta selezionato, verrà proposta una lista dei relativi indirizzi; in genere in testa c'è sempre @deb,debian.org@ che è l'indirizzo per fare riferimento in maniera automatica al mirror migliore, ed è sempre il caso di usarlo: !VM-NetInst-MirrorCountry.png! !VM-NetInst-MirrorChoice.png! la schermata successiva consente di indicare un eventuale proxy HTTP da usare per l'installazione, da lasciar vuoto premendo invio quando, come quasi sempre, non ce n'è bisogno, questo avvierà una seconda fase di installazione dei pacchetti dai repository appena impostati: !VM-NetInst-SoftwareInstall.png! dopo di che verrà chiesto se partecipare o mano al sondaggio anonimo di uso dei pacchetti (il default è no): !VM-NetInst-PopContest.png! h3. Selezione del software da installare e finalizzazione Una volta impostati i mirror per lo scaricamento, verrà richiesta la selezione del software aggiuntivo da installare via rete, in questo caso si dovrà selezionare soltanto il server SSH e le utilità di sistema standard, si potrà ripetere l'installazione di quanto fosse eventualmente necessario al riavvio della macchina con il comando @tasksel@: !VM-NetInst-Tasksel.png! Completata la scelta verrà effettuata l'installazione di quanto manca, mostrando una barra di progresso; una volta finita l'ultimo passo è quello di impostare il bootloader per l'avvio dal disco appena installato: !VM-NetInst-GrubChoice.png! che porterà alla schermata di selezione del disco, con una unica scelta predefinita da effettuare: !VM-NetInst-BootDisk.png! a questo punto verranno eseguite le operazioni di completamento dell'installazione: !VM-NetInst-InstallCompleting.png! completate le quali l'installazione sarà completa e si potrà riavviare la macchina: !VM-NetInst-Fine.png! attendendo che la procedura di boot si completi per arrivare alla console: !VM-Install-Completed.png!