Modifiche hyperV

This commit is contained in:
Giuseppe De Franceschi 2025-08-27 09:40:15 +02:00
parent 986c06a9b2
commit c2f10918ce
2 changed files with 262 additions and 101 deletions

View File

@ -0,0 +1,147 @@
---
id: Gestione
sidebar_position: 0
title: Gestione VM Hyper-V
sidebar_label: Gestione VM Hyper-V
pagination_prev: null
hide_table_of_contents: true
---
### 🖥️ Gestione VM Hyper-V
🎨 Guida passo-passo per configurare e gestire macchine virtuali Hyper-V
💡 **Lobiettivo:** avere un ambiente pronto per import/export VM e gestione dischi senza errori
Questa guida è pensata per sviluppatori e amministratori di sistema che necessitano di un ambiente Hyper-V organizzato e efficiente per la gestione delle macchine virtuali.
---
#### 1⃣ Requisiti
* **PowerShell 7+** (necessario per gestione caratteri e compatibilità)
* Installazione da terminale amministratore su Windows:
````powershell
winget install --id Microsoft.Powershell --source winget
````
:::warning
Se è presente una versione precedente di PowerShell, si consiglia di rimuoverla prima di installare la versione 7+. Le versioni precedenti potrebbero causare problemi di gestione dei caratteri e di compatibilità con lo script.
:::
* **Percorso dello script `VmManage.ps1`**: Lo script è progettato per facilitare le operazioni di **Import** ed **Export** delle VM.
* Il percorso di rete dello script è: `` \\tecnopack.local\sviluppo\Virtuale_Machines\Virtual_Machine-Hyper-V\VMScript\VmManage.ps1 ``.
---
#### 2⃣ Creazione dei Commutatori Virtuali (Virtual Switch)
* #### Rimozione Sicura Virtual Switch
* Apri PowerShell come Amministratore.
* Elenca gli switch esistenti (opzionale ma consigliato), Questo ti permette di vedere quali switch verranno eliminati.
````powershell
Get-VMSwitch
````
* Spegni le VM.
* Esegui il comando di rimozione.
````powershell
Get-VMSwitch | Remove-VMSwitch -Force
````
* Verifica la rimozione (opzionale).
Esegui di nuovo il comando per elencare gli switch. Se tutto è andato a buon fine, non dovrebbe restituire alcun risultato.
````powershell
Get-VMSwitch
````
#### Per consentire alle macchine virtuali di connettersi alla rete, è fondamentale creare uno o più commutatori virtuali.
1. Aprire la console di gestione Hyper-V
2. Dal menu a destra, selezionare **Gestione Commutatori Virtuali...**
* **Commutatore 1: Wifi**
* <img src="/img/screenshots/hyperv/switch_wifi.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* **Tipo:** Esterno wifi
* **Collegato a:** scheda WiFi del PC host
* Permette alle VM di connettersi alla rete wireless.
* **Commutatore 2: Lan**
* <img src="/img/screenshots/hyperv/switch_lan.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* **Tipo:** Esterno
* **Collegato a:** scheda di rete fisica del PC host
* Permette alle VM di connettersi alla rete cablata.
:::tip
Dopo aver creato i commutatori, le VM potranno scegliere tra Wifi o Lan durante la configurazione della scheda di rete virtuale.
:::
---
#### 3⃣ Impostazioni Hyper-V
* **Percorso dello script `VmManage.ps1`**: Lo script è progettato per facilitare le operazioni di **Import** ed **Export** delle VM.
* Il percorso di rete dello script è: `` \\tecnopack.local\sviluppo\Virtuale_Machines\Virtual_Machine-Hyper-V\VMScript\VmManage.ps1 ``.
Per mantenere l'organizzazione e prevenire problemi futuri con i percorsi di default, si raccomanda di configurare le impostazioni di Hyper-V.
* **Cartella principale VM:** `` D:\VMs ``
* **Dischi virtuali:** `` D:\VMs<Nome_VM>\Virtual Hard Disks ``
* **Configurazioni VM:** `` D:\VMs<Nome_VM>\Virtual Machines ``
:::tip
**Si consiglia vivamente di impostare questi percorsi personalizzati *prima* di creare qualsiasi macchina virtuale** per garantire una migliore organizzazione e facilitare la gestione futura. Modificare questi percorsi dopo aver creato le VM può essere più complesso.
:::
---
#### 4⃣ 🚀 Uso dello script `VmManage.ps1`
Lo script `VmManage.ps1` è uno strumento utile per automatizzare le operazioni di **esportazione** e **importazione** di macchine virtuali Hyper-V.
##### 4.1 Preparazione
1. **Copiare** La cartella`VMScript` in locale sul tuo PC, ad esempio `` Documenti ``.
2. **Aprire PowerShell 7 come Amministratore**.
3. **Navigare** nella cartella dove è stato copiato lo script: [9, 10]
````powershell
cd ~/Documenti\VMScript
````
##### 4.2 Avvio dello script
Eseguire lo script dal terminale PowerShell:
````powershell
.\VmManage.ps1
````
<img src="/img/screenshots/hyperv/Script1.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
Lo script presenterà delle opzioni o guiderà l'utente attraverso le seguenti funzionalità:
<img src="/img/screenshots/hyperv/Script1.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* Per Export E (Esportazione di una VM):
* <img src="/img/screenshots/hyperv/ScriptE.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* Lo script spegne la macchina virtuale selezionata.
* Copia i file della VM in una cartella con un timestamp (data e ora dell'esportazione), utile per versioning e backup.
* Una volta completata la copia, riavvia la VM allo stato precedente.
* Questa funzione è utile per creare backup o per preparare una VM per il trasferimento.
* Per Import I (Importazione di una VM):
* <img src="/img/screenshots/hyperv/ScriptI.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* Permette di importare una VM precedentemente esportata.
* Durante il processo, lo script chiederà di specificare un nuovo nome per la VM da importare.
* Richiederà anche di indicare la cartella di destinazione dove verranno salvati i file della nuova VM.
* Prima di procedere, lo script controlla lo spazio disponibile su disco per assicurarsi che ci sia sufficiente spazio per l'importazione.
##### 4.3 Note pratiche
* Sempre avviare PowerShell come Amministratore per evitare errori di permessi durante l'esecuzione dello script o la gestione delle VM.
* Organizzare le VM e i dischi nelle cartelle consigliate per mantenere ordine e facilitare la gestione.
* Durante l'importazione, scegliere un nome chiaro e descrittivo per la nuova VM per identificarla facilmente.
--------------------------------------------------------------------------------
💡 Suggerimenti rapidi:
* ✅ Sempre seguire i percorsi consigliati per mantenere l'ambiente organizzato.
* ✅ Avviare PowerShell come amministratore per tutte le operazioni di gestione VM.
* ✅ Tenere uno spazio sufficiente su disco per le VM e le operazioni di import/export.
* ✅ Nominare VM e cartelle in modo chiaro e descrittivo.
--------------------------------------------------------------------------------
🔗 Risorse utili: Documentazione Hyper-V
* [Documentazione ufficiale Hyper-V di Microsoft: Per approfondire gli argomenti e risolvere problemi specifici.](https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/)

View File

@ -1,8 +1,8 @@
---
id: Gestione
id: Gestione1
sidebar_position: 0
title: Gestione VM Hyper-V
sidebar_label: Gestione VM Hyper-V
title: Gestione VM Hyper-V1
sidebar_label: Gestione VM Hyper-V1
pagination_prev: null
hide_table_of_contents: true
---
@ -17,131 +17,145 @@ Questa guida è pensata per sviluppatori e amministratori di sistema che necessi
---
#### 1⃣ Requisiti
### 0⃣ Installazione e Rimozione di Hyper-V
* **PowerShell 7+** (necessario per gestione caratteri e compatibilità)
* Installazione da terminale amministratore su Windows:
````powershell
Prima di iniziare, è fondamentale avere un'installazione pulita di Hyper-V.
#### **Installazione di Hyper-V (se non presente)**
1. Apri **PowerShell come Amministratore**.
2. Esegui il comando seguente per installare tutti i componenti di Hyper-V:
```powershell
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All -All -NoRestart
```
3. Al termine, **riavvia il computer** per completare l'installazione.
#### **Rimozione di versioni precedenti o corrotte (Opzionale)**
Se sospetti un'installazione problematica, puoi eseguire una pulizia completa.
1. Apri **PowerShell come Amministratore**.
2. Esegui il comando per disabilitare e rimuovere tutte le funzionalità di Hyper-V:
```powershell
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All -NoRestart
```
:::danger Attenzione
Questo comando rimuove tutti i componenti di Hyper-V. Sarà necessario un riavvio per completare la disinstallazione.
:::
---
### 1⃣ Requisiti Software
* **PowerShell 7+**
È necessario per la piena compatibilità con gli script e una corretta gestione dei caratteri.
* Installazione da un terminale amministratore:
```powershell
winget install --id Microsoft.Powershell --source winget
````
```
:::warning
Se è presente una versione precedente di PowerShell, si consiglia di rimuoverla prima di installare la versione 7+. Le versioni precedenti potrebbero causare problemi di gestione dei caratteri e di compatibilità con lo script.
:::
* **Percorso dello script `VmManage.ps1`**: Lo script è progettato per facilitare le operazioni di **Import** ed **Export** delle VM.
* Il percorso di rete dello script è: `` \\tecnopack.local\sviluppo\Virtuale_Machines\Virtual_Machine-Hyper-V\VMScript\VmManage.ps1 ``.
* **Script `VmManage.ps1`**
Questo strumento facilita le operazioni di import ed export.
* **Percorso di rete:** `\\tecnopack.local\sviluppo\Virtuale_Machines\Virtual_Machine-Hyper-V\VMScript\VmManage.ps1`
---
#### 2⃣ Creazione dei Commutatori Virtuali (Virtual Switch)
### 2⃣ Configurazione dei Commutatori Virtuali (Virtual Switch)
* #### Rimozione Sicura Virtual Switch
I commutatori virtuali sono essenziali per connettere le VM alla rete.
* Apri PowerShell come Amministratore.
* Elenca gli switch esistenti (opzionale ma consigliato), Questo ti permette di vedere quali switch verranno eliminati.
````powershell
#### **Rimozione sicura dei Virtual Switch esistenti**
Per evitare conflitti, è consigliabile rimuovere le configurazioni precedenti.
1. Apri **PowerShell come Amministratore**.
2. Elenca gli switch esistenti per verificarli:
```powershell
Get-VMSwitch
````
* Spegni le VM.
* Esegui il comando di rimozione.
````powershell
Get-VMSwitch | Remove-VMSwitch -Force
````
* Verifica la rimozione (opzionale).
Esegui di nuovo il comando per elencare gli switch. Se tutto è andato a buon fine, non dovrebbe restituire alcun risultato.
````powershell
Get-VMSwitch
````
#### Per consentire alle macchine virtuali di connettersi alla rete, è fondamentale creare uno o più commutatori virtuali.
```
3. Assicurati che tutte le VM siano spente.
4. Rimuovi tutti gli switch con un singolo comando:
```powershell
Get-VMSwitch | Remove-VMSwitch -Force
```
1. Aprire la console di gestione Hyper-V
2. Dal menu a destra, selezionare **Gestione Commutatori Virtuali...**
* **Commutatore 1: Wifi**
* <img src="/img/screenshots/hyperv/switch_wifi.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* **Tipo:** Esterno wifi
* **Collegato a:** scheda WiFi del PC host
* Permette alle VM di connettersi alla rete wireless.
#### **Creazione dei nuovi Commutatori**
1. Apri **Gestione Hyper-V** dal menu Start.
2. Nel pannello Azioni a destra, clicca su **Gestione commutatori virtuali...**.
* **Commutatore 2: Lan**
* <img src="/img/screenshots/hyperv/switch_lan.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* **Tipo:** Esterno
* **Collegato a:** scheda di rete fisica del PC host
* Permette alle VM di connettersi alla rete cablata.
* **Commutatore 1: Wifi**
* **Tipo:** Esterno
* **Scheda di rete:** Seleziona la tua scheda di rete Wi-Fi.
* **Scopo:** Permette alle VM di connettersi tramite la rete wireless.
<br/>
<img src="/img/screenshots/hyperv/switch_wifi.jpg" alt="Configurazione Commutatore Wifi" style={{ maxWidth: '60%', borderRadius: '8px' }} />
* **Commutatore 2: LAN**
* **Tipo:** Esterno
* **Scheda di rete:** Seleziona la tua scheda di rete cablata (Ethernet).
* **Scopo:** Permette alle VM di connettersi tramite la rete cablata.
<br/>
<img src="/img/screenshots/hyperv/switch_lan.jpg" alt="Configurazione Commutatore LAN" style={{ maxWidth: '60%', borderRadius: '8px' }} />
---
### 3⃣ Impostazioni dei Percorsi di Hyper-V
Una corretta organizzazione dei file previene problemi futuri. Imposta questi percorsi **prima** di creare o importare VM.
* **Dischi rigidi virtuali:** `D:\VMs`
* **Macchine virtuali:** `D:\VMs`
:::tip
Dopo aver creato i commutatori, le VM potranno scegliere tra Wifi o Lan durante la configurazione della scheda di rete virtuale.
Usare una cartella radice unica come `D:\VMs` per dischi e configurazioni semplifica il backup e la gestione. Hyper-V creerà automaticamente sottocartelle con i nomi delle VM.
:::
---
#### 3⃣ Impostazioni Hyper-V
### 4⃣ 🚀 Utilizzo dello script `VmManage.ps1`
* **Percorso dello script `VmManage.ps1`**: Lo script è progettato per facilitare le operazioni di **Import** ed **Export** delle VM.
* Il percorso di rete dello script è: `` \\tecnopack.local\sviluppo\Virtuale_Machines\Virtual_Machine-Hyper-V\VMScript\VmManage.ps1 ``.
Questo script automatizza le operazioni di esportazione e importazione.
Per mantenere l'organizzazione e prevenire problemi futuri con i percorsi di default, si raccomanda di configurare le impostazioni di Hyper-V.
#### **4.1 Preparazione**
* **Cartella principale VM:** `` D:\VMs ``
* **Dischi virtuali:** `` D:\VMs<Nome_VM>\Virtual Hard Disks ``
* **Configurazioni VM:** `` D:\VMs<Nome_VM>\Virtual Machines ``
1. Copia l'intera cartella `VMScript` in una directory locale (es. `Documenti`).
2. Apri **PowerShell 7 come Amministratore**.
3. Naviga nella cartella dove hai copiato lo script:
```powershell
cd ~\Documenti\VMScript
```
:::tip
**Si consiglia vivamente di impostare questi percorsi personalizzati *prima* di creare qualsiasi macchina virtuale** per garantire una migliore organizzazione e facilitare la gestione futura. Modificare questi percorsi dopo aver creato le VM può essere più complesso.
#### **4.2 Abilitazione ed Esecuzione dello Script**
Per motivi di sicurezza, PowerShell blocca l'esecuzione di script di default. Per abilitare l'esecuzione solo per la sessione corrente, esegui questo comando:
```powershell
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
```
:::info Nota
Questo comando imposta il criterio di esecuzione solo per la finestra di PowerShell corrente. Una volta chiusa, la policy tornerà al suo valore predefinito. È una pratica sicura per eseguire script attendibili.
:::
---
Ora, esegui lo script:
#### 4⃣ 🚀 Uso dello script `VmManage.ps1`
Lo script `VmManage.ps1` è uno strumento utile per automatizzare le operazioni di **esportazione** e **importazione** di macchine virtuali Hyper-V.
##### 4.1 Preparazione
1. **Copiare** La cartella`VMScript` in locale sul tuo PC, ad esempio `` Documenti ``.
2. **Aprire PowerShell 7 come Amministratore**.
3. **Navigare** nella cartella dove è stato copiato lo script: [9, 10]
````powershell
cd ~/Documenti\VMScript
````
##### 4.2 Avvio dello script
Eseguire lo script dal terminale PowerShell:
````powershell
```powershell
.\VmManage.ps1
````
<img src="/img/screenshots/hyperv/Script1.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
Lo script presenterà delle opzioni o guiderà l'utente attraverso le seguenti funzionalità:
<img src="/img/screenshots/hyperv/Script1.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
```
Lo script mostrerà un menu interattivo per scegliere l'operazione.
<img src="/img/screenshots/hyperv/Script1.jpg" alt="Menu principale dello script" style={{ maxWidth: '70%', borderRadius: '8px' }} />
* Per Export E (Esportazione di una VM):
* <img src="/img/screenshots/hyperv/ScriptE.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* Lo script spegne la macchina virtuale selezionata.
* Copia i file della VM in una cartella con un timestamp (data e ora dell'esportazione), utile per versioning e backup.
* Una volta completata la copia, riavvia la VM allo stato precedente.
* Questa funzione è utile per creare backup o per preparare una VM per il trasferimento.
* Per Import I (Importazione di una VM):
* <img src="/img/screenshots/hyperv/ScriptI.jpg" alt="Commutatore Wifi" style={{ maxWidth: '50%', marginTop: '1rem', borderRadius: '8px' }} />
* Permette di importare una VM precedentemente esportata.
* Durante il processo, lo script chiederà di specificare un nuovo nome per la VM da importare.
* Richiederà anche di indicare la cartella di destinazione dove verranno salvati i file della nuova VM.
* Prima di procedere, lo script controlla lo spazio disponibile su disco per assicurarsi che ci sia sufficiente spazio per l'importazione.
Export (E): Spegne la VM, ne crea una copia in una cartella con timestamp (es. VM_Export_2023-10-27_10-30-00), e la riavvia. Ideale per creare backup sicuri.
<img src="/img/screenshots/hyperv/ScriptE.jpg" alt="Processo di Esportazione" style={{ maxWidth: '70%', borderRadius: '8px' }} />
##### 4.3 Note pratiche
* Sempre avviare PowerShell come Amministratore per evitare errori di permessi durante l'esecuzione dello script o la gestione delle VM.
* Organizzare le VM e i dischi nelle cartelle consigliate per mantenere ordine e facilitare la gestione.
* Durante l'importazione, scegliere un nome chiaro e descrittivo per la nuova VM per identificarla facilmente.
Import (I): Ti guida nell'importazione di una VM, chiedendoti un nuovo nome e la cartella di destinazione. Controlla lo spazio su disco prima di iniziare.
<img src="/img/screenshots/hyperv/ScriptI.jpg" alt="Processo di Importazione" style={{ maxWidth: '70%', borderRadius: '8px' }} />
--------------------------------------------------------------------------------
💡 Suggerimenti rapidi:
* ✅ Sempre seguire i percorsi consigliati per mantenere l'ambiente organizzato.
* ✅ Avviare PowerShell come amministratore per tutte le operazioni di gestione VM.
* ✅ Tenere uno spazio sufficiente su disco per le VM e le operazioni di import/export.
* ✅ Nominare VM e cartelle in modo chiaro e descrittivo.
4.3 Note Pratiche
✅ Esegui sempre PowerShell come Amministratore.
--------------------------------------------------------------------------------
🔗 Risorse utili: Documentazione Hyper-V
* [Documentazione ufficiale Hyper-V di Microsoft: Per approfondire gli argomenti e risolvere problemi specifici.](https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/)
✅ Mantieni i percorsi delle VM organizzati come configurato al punto 3.
✅ Scegli nomi chiari e descrittivi per le VM importate.
🔗 Risorse Utili
Documentazione ufficiale Hyper-V di Microsoft: Per approfondimenti e risoluzione di problemi.