[[Windows]] Hypervisor zur [[virtualisierung|Virtualisierung]] von Betriebssystemen. Es ist in Microsoft Server Betriebssystemen und in Windows (ab Professional) enthalten kann aber auch iun der Home Edition installiert werden. Siehe [[scvmm|SCVMM]] Auf einem Windows Server gibt es eine eigene Hyper-V Rolle. Microsoft möchte außerdem dass man den "[[scvmm|System Center Virtual machine manager]]" bezahl.. ähm ich meine benutzt :P =====Switches===== In HYPER-V gibt es 3 Arten von virtuellen [[switch|Switches]]. Mehr dazu [[https://getlabsdone.com/how-to-configure-hyper-v-virtual-switches/|hier]]. ====External virtual switch==== **Erlaubt virtuellen Maschinen den Zugriff auf das gesamte Netzwerk**. Der Typ extern muss immer an einen physikalischen Netzwerkadapter (NIC) gebunden werden, wobei **pro NIC nur ein externes Netz möglich** ist. ====Internal virtual switch==== Verbundene Hosts **können sowohl untereinander als auch mit VMs kommunizieren, die bereits mit einem internen virtuellen Switch verbunden sind**. VMs können **nicht auf Netzwerkressourcen zugreifen, die nicht mit dem internen virtuellen Switch verbunden sind**. Darüber hinaus können VMs in einem internen virtuellen Switch-Netzwerk **nicht auf das Internet zugreifen**. ====Private virtual switch==== VMs können miteinander kommunizieren, aber nicht mit Ressourcen außerhalb des privaten virtuellen Switches kommunizieren. In diesem Setup kann das Host-Betriebssystem nicht mit VMs kommunizieren, die in einem privaten virtuellen Switch-Netzwerk vorhanden sind. VMs haben keinen Zugriff auf das Internet. =====Powershell===== New-VM -Name "new 2" -MemoryStartupBytes 1GB -NewVHDPath d:\vhd\base.vhdx -NewVHDSizeBytes 40GB New-VM -Name "new 3" -MemoryStartupBytes 1GB -VHDPath d:\vhd\BaseImage.vhdx New-VM -Name "new 4" -MemoryStartupBytes 2GB -Credential (Get-Credential) -ComputerName HostServer01 Get-VM [] Start-VM Stop-VM Save-VM Get-VM -Name | Checkpoint-VM -SnapshotName Get-VMSwitch Get-VM "VM01" | Get-VMNetworkAdapter | Connect-VMNetworkAdapter -SwitchName "NewSwitch" Wenn eine Maschine hängt kann man den Service neu starten. Get-Service vmms | Restart-Service Neue VM erstellen $VMName = "VMNAME" $VM = @{ Name = $VMName MemoryStartupBytes = 2147483648 Generation = 2 NewVHDPath = "C:\Virtual Machines\$VMName\$VMName.vhdx" NewVHDSizeBytes = 53687091200 BootDevice = "VHD" Path = "C:\Virtual Machines\$VMName" SwitchName = (Get-VMSwitch).Name } New-VM @VM =====USB Passtru===== Mark disk as offline in disk manager (if option is missing, disk is too small) in hyper-v machine settings add scsi controller and a physical drive. =====Windows 10 Home Installer===== @echo off echo Checking for permissions >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system" echo Permission check result: %errorlevel% REM --> If error flag set, we do not have admin. if '%errorlevel%' NEQ '0' ( echo Requesting administrative privileges... goto UACPrompt ) else ( goto gotAdmin ) :UACPrompt echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs" echo Running created temporary "%temp%\getadmin.vbs" timeout /T 2 "%temp%\getadmin.vbs" exit /B :gotAdmin if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" ) pushd "%CD%" CD /D "%~dp0" echo Batch was successfully started with admin privileges echo . cls GOTO:menu :menu Title Hyper-V Installer echo Backup wird dringend empfohlen! echo um u.a. Hyper-V spurenlos und sicher zu entfernen. echo -------------------------------------------------- echo Was soll das Setup tun? echo 1 Installieren echo 2 Deinstallieren echo 3 Beenden set /p uni= Option in Zahl eintippen: if %uni% ==1 goto :in if %uni% ==2 goto :un if %uni% ==3 goto :ex :in cls Title Install Hyper-V pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL /NoRestart goto :remenu :un cls Title Uninstall Hyper-V pushd "%~dp0" Dism /online /disable-feature /featurename:Microsoft-Hyper-V-All /NoRestart dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /remove-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt goto :remenu :remenu cls echo Möchten Sie den Computer jetzt neu starten? echo 1 Ja echo 2 Nein set /p uni= Option in Zahl eintippen: if %uni% ==1 goto :re if %uni% ==2 goto :ex :re shutdown /r /t 0 /f goto :ex :ex exit =====Links===== * [[https://www.youtube.com/watch?v=cQl_3HmB9gw|Hyper-V - Grundlegendes zu virtuellen Maschinen]] * [[https://www.youtube.com/watch?v=0yzkWo8Z-FA|Hyper-V Networking - Youtube]] * [[https://www.youtube.com/watch?v=jdk6xCNmydU|Managing and Configuring Hyper-V Virtual Switches -- Default, Internal, External, and Private]] * [[https://www.youtube.com/watch?v=CvRwTJCScQY|Hyper-V Cluster auf Windows Server 2016 - Youtube]] * [[https://youtu.be/nu8dfQFuGzs|Advanced topics]] * [[https://www.altaro.com/hyper-v/best-practices-hyper-v-performance/|95 best practices]]