Изучение PowerShell и работа над созданием виртуальных машин с Hyper-v. Мне было интересно, есть ли способ или идеальный способ установить / настроить гостевые операционные системы с ним?
Пока единственный вывод, который я пришел, - это скопировать .vhd / .vhdx и прикрепить их к новым виртуальным машинам. Тем не менее, я знаю, что с * nix это может вызвать проблемы со всей настройкой сети и требует ручного исправления, но я полагаю, что это будет нормально для Windows?
Изменить: Да, мне известны командлеты для Hyper-V. Я не об этом спрашиваю. Есть ли способ установить ОС на вновь созданную виртуальную машину?
Видеть http://technet.microsoft.com/en-us/magazine/jj933287.aspx для примера создания виртуальной машины и установки ОС с нуля.
Шаги: создать виртуальную машину, настроить виртуальную машину, добавить исходный ISO и дискету с unmattend.xml, а затем запустить виртуальную машину.
Как правило, установка операционной системы не является задачей гипервизора. Используя вашу PowerShell для настройки виртуальной машины, вы затем запустите процесс сборки, который также может быть написан по сценарию. До того, как я начал использовать загрузочные образы MDT pxe, у меня были файлы iso без присмотра, которые я монтировал. Как только система загрузилась, она запустила установку самостоятельно. Я предполагаю, что это то, что вам нужно.
Да. PowerShell может многое сделать с виртуальными машинами Hyper-V. Выберите из следующих CMDlets:
Add-VMDvdDrive
Add-VMFibreChannelHba
Add-VMHardDiskDrive
Add-VMMigrationNetwork
Add-VMNetworkAdapter
Add-VMNetworkAdapterAcl
Add-VMNetworkAdapterExtendedAcl
Add-VmNetworkAdapterRoutingDomainMapping
Add-VMRemoteFx3dVideoAdapter
Add-VMScsiController
Add-VMStoragePath
Add-VMSwitch
Add-VMSwitchExtensionPortFeature
Add-VMSwitchExtensionSwitchFeature
Checkpoint-VM
Compare-VM
Complete-VMFailover
Connect-VMNetworkAdapter
Connect-VMSan
Convert-VHD
Copy-VMFile
Debug-VM
Disable-VMEventing
Disable-VMIntegrationService
Disable-VMMigration
Disable-VMRemoteFXPhysicalVideoAdapter
Disable-VMResourceMetering
Disable-VMSwitchExtension
Disconnect-VMNetworkAdapter
Disconnect-VMSan
Dismount-VHD
Enable-VMEventing
Enable-VMIntegrationService
Enable-VMMigration
Enable-VMRemoteFXPhysicalVideoAdapter
Enable-VMReplication
Enable-VMResourceMetering
Enable-VMSwitchExtension
Export-VM
Export-VMSnapshot
Get-VHD
Get-VM
Get-VMBios
Get-VMComPort
Get-VMConnectAccess
Get-VMDvdDrive
Get-VMFibreChannelHba
Get-VMFirmware
Get-VMFloppyDiskDrive
Get-VMHardDiskDrive
Get-VMHost
Get-VMHostNumaNode
Get-VMHostNumaNodeStatus
Get-VMIdeController
Get-VMIntegrationService
Get-VMMemory
Get-VMMigrationNetwork
Get-VMNetworkAdapter
Get-VMNetworkAdapterAcl
Get-VMNetworkAdapterExtendedAcl
Get-VMNetworkAdapterFailoverConfiguration
Get-VmNetworkAdapterIsolation
Get-VMNetworkAdapterRoutingDomainMapping
Get-VMNetworkAdapterVlan
Get-VMProcessor
Get-VMRemoteFx3dVideoAdapter
Get-VMRemoteFXPhysicalVideoAdapter
Get-VMReplication
Get-VMReplicationAuthorizationEntry
Get-VMReplicationServer
Get-VMResourcePool
Get-VMSan
Get-VMScsiController
Get-VMSnapshot
Get-VMStoragePath
Get-VMSwitch
Get-VMSwitchExtension
Get-VMSwitchExtensionPortData
Get-VMSwitchExtensionPortFeature
Get-VMSwitchExtensionSwitchData
Get-VMSwitchExtensionSwitchFeature
Get-VMSystemSwitchExtension
Get-VMSystemSwitchExtensionPortFeature
Get-VMSystemSwitchExtensionSwitchFeature
Grant-VMConnectAccess
Import-VM
Import-VMInitialReplication
Measure-VM
Measure-VMReplication
Measure-VMResourcePool
Merge-VHD
Mount-VHD
Move-VM
Move-VMStorage
New-VFD
New-VHD
New-VM
New-VMReplicationAuthorizationEntry
New-VMResourcePool
New-VMSan
New-VMSwitch
Optimize-VHD
Remove-VM
Remove-VMDvdDrive
Remove-VMFibreChannelHba
Remove-VMHardDiskDrive
Remove-VMMigrationNetwork
Remove-VMNetworkAdapter
Remove-VMNetworkAdapterAcl
Remove-VMNetworkAdapterExtendedAcl
Remove-VMNetworkAdapterRoutingDomainMapping
Remove-VMRemoteFx3dVideoAdapter
Remove-VMReplication
Remove-VMReplicationAuthorizationEntry
Remove-VMResourcePool
Remove-VMSan
Remove-VMSavedState
Remove-VMScsiController
Remove-VMSnapshot
Remove-VMStoragePath
Remove-VMSwitch
Remove-VMSwitchExtensionPortFeature
Remove-VMSwitchExtensionSwitchFeature
Rename-VM
Rename-VMNetworkAdapter
Rename-VMResourcePool
Rename-VMSan
Rename-VMSnapshot
Rename-VMSwitch
Repair-VM
Reset-VMReplicationStatistics
Reset-VMResourceMetering
Resize-VHD
Restart-VM
Restore-VMSnapshot
Resume-VM
Resume-VMReplication
Revoke-VMConnectAccess
Save-VM
Set-VHD
Set-VM
Set-VMBios
Set-VMComPort
Set-VMDvdDrive
Set-VMFibreChannelHba
Set-VMFirmware
Set-VMFloppyDiskDrive
Set-VMHardDiskDrive
Set-VMHost
Set-VMMemory
Set-VMMigrationNetwork
Set-VMNetworkAdapter
Set-VMNetworkAdapterFailoverConfiguration
Set-VmNetworkAdapterIsolation
Set-VmNetworkAdapterRoutingDomainMapping
Set-VMNetworkAdapterVlan
Set-VMProcessor
Set-VMRemoteFx3dVideoAdapter
Set-VMReplication
Set-VMReplicationAuthorizationEntry
Set-VMReplicationServer
Set-VMResourcePool
Set-VMSan
Set-VMSwitch
Set-VMSwitchExtensionPortFeature
Set-VMSwitchExtensionSwitchFeature
Start-VM
Start-VMFailover
Start-VMInitialReplication
Stop-VM
Stop-VMFailover
Stop-VMInitialReplication
Stop-VMReplication
Suspend-VM
Suspend-VMReplication
Test-VHD
Test-VMNetworkAdapter
Test-VMReplicationConnection
Как уже упоминалось, создание, настройку и управление виртуальными машинами можно легко выполнить с помощью PowerShell.
Однако, если вам нужен больший контроль над жизненным циклом виртуальной машины, например создание / развертывание шаблонов и клонирование дисков, вам следует взглянуть на Диспетчер виртуальных машин System Center; его операции, конечно же, полностью доступны в сценариях через PowerShell.
Помимо установки с носителя с использованием файла автоматической установки, вполне возможно и, вероятно, быстрее настроить последние версии Windows полностью в автономном режиме. Вы можете создать VHD с помощью командлетов Hyper-V PowerShell. Затем вы должны установить в него образ Windows. Затем вы подключите виртуальный жесткий диск к виртуальной машине и загрузите ее.
Возможно, самый простой способ сделать это - использовать сценарий WIM2VHD:
Если вы хотите углубиться в подробности, приведенный выше сценарий построен из примитивов, имеющихся в технологиях OPK / AIK / MDT: