Progetto

Generale

Profilo

ProxmoxDebianInstall » Cronologia » Versione 10

Simone Piccardi, 20-05-2024 12:40

1 1 Simone Piccardi
h1. Installare una macchina virtuale Debian su Proxmox
2
3
"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. 
4
5
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/
6
7
h2. La creazione di una macchina virtuale su Proxmox.
8
9
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). 
10
11
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.
12
13
!ProxmoxLocalStorage.png!
14
15
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.
16
17
!ISO-DownloadFromURL.png!
18
19
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:
20
21
<pre>
22
cd /var/lib/vz/template/iso/
23
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso
24
</pre>
25
26
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":
27
28
!Create-VM-General.png!
29
30
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:
31
32
!Create-VM-OS.png!
33
34
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.
35
36
!Create-VM-Disks.png!
37
38
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. 
39
40
!Create-VM-CPU.png!
41
42
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): 
43
44
!Create-VM-Network.png!
45
46
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:
47
48 2 Simone Piccardi
!JustCreatedVM.png!
49
50
h2. L'installazione di Debian
51
52 8 Simone Piccardi
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: 
53 2 Simone Piccardi
54
!VM-NetInst-Start.png!
55
56 8 Simone Piccardi
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". 
57 1 Simone Piccardi
58 8 Simone Piccardi
h3. Scelta della localizzazione
59
60
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:
61
62 3 Simone Piccardi
!VM-NetInst-Lang.png!
63
64 8 Simone Piccardi
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: 
65 3 Simone Piccardi
66
!VM-NetInst-ConfirmLang.png!
67
68 8 Simone Piccardi
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.
69 1 Simone Piccardi
70
!VM-NetInst-CountrySel.png!
71
!VM-NetInst-Keyboard.png!
72
73 3 Simone Piccardi
74 9 Simone Piccardi
h3. Configurazione della rete
75 8 Simone Piccardi
76
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:
77
78 3 Simone Piccardi
!VM-NetInst-ManualNet.png!
79
80 8 Simone Piccardi
Con questa scelta il programma di installazione chiederà un indirizzo IP con la relativa netmask in notazione CIDR:
81 3 Simone Piccardi
82
!VM-NetInst-IPNetSetting.png!
83 1 Simone Piccardi
84 8 Simone Piccardi
e quindi prima l'indirizzo del gateway, poi quello del DNS, poi il nome della macchina ed infine  il dominio in cui si colloca:
85 4 Simone Piccardi
86 3 Simone Piccardi
!VM-NetInst-NetGW.png!
87
!VM-NetInst-AddrDNS.png!
88
!VM-NetInst-Hostname.png!
89 1 Simone Piccardi
!VM-NetInst-Domain.png!
90 4 Simone Piccardi
91 9 Simone Piccardi
h3. Configurazione degli accessi
92 8 Simone Piccardi
93 4 Simone Piccardi
Completata la configurazione della rete, verrà richiesto di impostare le credenziali di accesso per l'amministratore (due volte per evitare errori di battitura):
94 1 Simone Piccardi
95 4 Simone Piccardi
!VM-NetInst-RootPW.png!
96 1 Simone Piccardi
!VM-NetInst-RootPW2.png!
97
98 4 Simone Piccardi
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):
99 1 Simone Piccardi
100 10 Simone Piccardi
!VM-NetInst-NomeCompleto.png!
101 4 Simone Piccardi
!VM-NetInst-Username.png!
102 1 Simone Piccardi
103 8 Simone Piccardi
h3. Partizionamento del disco
104 4 Simone Piccardi
105 8 Simone Piccardi
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:
106
107 4 Simone Piccardi
!VM-NetInst-ManualPartition.png!
108 1 Simone Piccardi
109 8 Simone Piccardi
Questa scelta avvierà la serie di schermate che consentono la gestione del partizionamento dell'unico disco (virtuale) disponibile, questo andrà prima selezionato:
110 4 Simone Piccardi
111
!VM-NetInst-DiskChoice.png!
112
113 8 Simone Piccardi
e siccome il disco inizlalmente è vuoto, andrà chiesta la creazione della tabella delle partizioni sullo stesso:
114 1 Simone Piccardi
115 4 Simone Piccardi
!VM-NetInst-PartCreate.png!
116 5 Simone Piccardi
117 8 Simone Piccardi
poi, selezionando lo spazio libero:
118 1 Simone Piccardi
119
!VM-NetInst-FreeSpaceChoice.png!
120
121 8 Simone Piccardi
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):
122 5 Simone Piccardi
123
!VM-NetInst-CreateFirstPart.png!
124 1 Simone Piccardi
!VM-NetInst-SwapDimension.png!
125 5 Simone Piccardi
!VM-NetInst-PartType.png!
126
!VM-NetInst-PartPosition.png!
127 1 Simone Piccardi
128 8 Simone Piccardi
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:
129 6 Simone Piccardi
130
!VM-NetInst-PartitionUse.png!
131 8 Simone Piccardi
132
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):
133
134 6 Simone Piccardi
!VM-NetInst-ChoiceSwap.png!
135
136 8 Simone Piccardi
confermando poi la scelta per terminare l'impostazione:
137 6 Simone Piccardi
138
!VM-NetInst-ConfirmSwapPart.png!
139
140 8 Simone Piccardi
A questo punto si dovrà ripetere la scelta dello spazio libero per creare una seconda partizione:
141 1 Simone Piccardi
142
!VM-NetInst-ChoiceSecondFree.png!
143
144 8 Simone Piccardi
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:
145 1 Simone Piccardi
146 6 Simone Piccardi
!VM-NetInst-PartitionUse2.png!
147
148 8 Simone Piccardi
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:
149 6 Simone Piccardi
150
!VM-NetInst-PartitioningTermination.png!
151
152
e confermare le modifiche ai dischi:
153
154
!VM-NetInst-PartitioningConfirm.png!
155
156
Con questa ultima conferma inizierà l'installazione del sistema base nel disco appena partizionato, con i pacchetti disponibili nel CD di installazione:
157 1 Simone Piccardi
158 6 Simone Piccardi
!VM-NetInst-InstallProgression.png!
159 1 Simone Piccardi
160
161 8 Simone Piccardi
h2. Configurazione delle fonti aggiuntive
162
163
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:
164
165 6 Simone Piccardi
!VM-NetInst-NoOtherInstallSupports.png!
166
167 8 Simone Piccardi
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:
168 6 Simone Piccardi
169
!VM-NetInst-MirrorCountry.png!
170
!VM-NetInst-MirrorChoice.png!
171
172
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:
173
174 7 Simone Piccardi
!VM-NetInst-SoftwareInstall.png!
175
176
dopo di che verrà chiesto se partecipare o mano al sondaggio anonimo di uso dei pacchetti (il default è no):
177
178
!VM-NetInst-PopContest.png!
179
180 8 Simone Piccardi
h3. Selezione del software da installare e finalizzazione
181 7 Simone Piccardi
182 8 Simone Piccardi
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@:
183
184 7 Simone Piccardi
!VM-NetInst-Tasksel.png!
185
186 8 Simone Piccardi
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:
187 7 Simone Piccardi
188
!VM-NetInst-GrubChoice.png!
189
190
che porterà alla schermata di selezione del disco, con una unica scelta predefinita da effettuare:
191
192
!VM-NetInst-BootDisk.png!
193
194
a questo punto verranno eseguite le operazioni di completamento dell'installazione:
195
196
!VM-NetInst-InstallCompleting.png!
197
198
completate le quali l'installazione sarà completa e si potrà riavviare la macchina:
199
200
!VM-NetInst-Fine.png!
201
202
attendendo che la procedura di boot si completi per arrivare alla console:
203
204
!VM-Install-Completed.png!