Hyper-V 및 Windows PowerShell 사용Working with Hyper-V and Windows PowerShell

Hyper-V 배포, 가상 컴퓨터 만들기 및 이러한 가상 컴퓨터 관리의 기본 사항을 살펴보았으므로 이제 PowerShell 사용하여 이러한 다양한 작업을 자동화할 수 있는 방법을 살펴보겠습니다.Now that you have walked through the basics of deploying Hyper-V, creating virtual machines and managing these virtual machines, let’s explore how you can automate many of these activities with PowerShell.

Hyper-V 명령 목록 반환Return a list of Hyper-V commands

  1. Windows 시작 단추를 클릭하고 PowerShell을 입력합니다.Click on the Windows start button, type PowerShell.
  2. 다음 명령을 실행하여 Hyper-V PowerShell 모듈과 함께 사용할 수 있는 검색 가능한 PowerShell 명령 목록을 표시합니다.Run the following command to display a searchable list of PowerShell commands available with the Hyper-V PowerShell Module.
Get-Command -Module hyper-v | Out-GridView

다음과 같이 표시됩니다.You get something like this:

  1. 특정 PowerShell 명령에 대한 자세한 내용을 보려면 Get-Help를 사용하세요.To learn more about a particular PowerShell command use Get-Help. 예를 들어 다음 명령을 실행하면 Get-VM Hyper-V 명령에 대한 정보가 반환됩니다.For instance running the following command returns information about the Get-VM Hyper-V command.
Get-Help Get-VM

결과는 명령을 구성하는 방법, 필수 및 선택적 매개 변수가 무엇인지 및 사용할 수 있는 별칭을 보여 줍니다.The output shows you how to structure the command, what the required and optional parameters are, and the aliases that you can use.

가상 컴퓨터 목록 반환Return a list of virtual machines

Get-VM 명령을 사용하여 가상 컴퓨터 목록을 반환합니다.Use the Get-VM command to return a list of virtual machines.

  1. PowerShell에서 다음 명령을 실행합니다.In PowerShell, run the following command:
Get-VM

다음과 같이 표시됩니다.This displays something like this:

  1. 전원이 켜진 가상 컴퓨터 목록만 반환하려면 Get-VM 명령에 필터를 추가합니다.To return a list of only powered on virtual machines add a filter to the Get-VM command. 필터는 Where-Object 명령을 사용하여 추가할 수 있습니다.A filter can be added by using the Where-Object command. 필터링에 대한 자세한 내용은 Using the Where-Object(Where-Object 사용) 설명서를 참조하세요.For more information on filtering see the Using the Where-Object documentation.
Get-VM | where {$_.State -eq 'Running'}
  1. 꺼져 있는 상태의 모든 가상 컴퓨터를 나열하려면 다음 명령을 실행합니다.To list all virtual machines in a powered off state, run the following command. 이 명령은 'Running'에서 'Off'로 변경된 필터를 사용한 2단계의 명령 복사본입니다.This command is a copy of the command from step 2 with the filter changed from 'Running' to 'Off'.
Get-VM | where {$_.State -eq 'Off'}

가상 컴퓨터 시작 및 종료Start and shut down virtual machines

  1. 특정 가상 컴퓨터를 시작하려면 가상 컴퓨터의 이름으로 다음 명령을 실행합니다.To start a particular virtual machine, run the following command with name of the virtual machine:
Start-VM -Name <virtual machine name>
  1. 현재 전원이 꺼진 모든 가상 컴퓨터를 시작하려면 해당 컴퓨터 목록을 가져오고 Start-VM 명령에 목록을 파이프합니다.To start all currently powered off virtual machines, get a list of those machines and pipe the list to the Start-VM command:
Get-VM | where {$_.State -eq 'Off'} | Start-VM
  1. 실행 중인 모든 가상 컴퓨터를 종료하려면 다음을 실행합니다.To shut down all running virtual machines, run this:
Get-VM | where {$_.State -eq 'Running'} | Stop-VM

VM 검사점 만들기Create a VM checkpoint

PowerShell을 사용하여 검사점을 만들려면 Get-VM 명령을 사용하여 가상 컴퓨터를 선택하고 이를 Checkpoint-VM 명령에 파이프합니다.To create a checkpoint using PowerShell, select the virtual machine using the Get-VM command and pipe this to the Checkpoint-VM command. 마지막으로 -SnapshotName을 사용하여 검사점에 이름을 지정합니다.Finally give the checkpoint a name using -SnapshotName. 전체 명령은 다음과 같습니다.The complete command looks like the following:

Get-VM -Name <VM Name> | Checkpoint-VM -SnapshotName <name for snapshot>

새 가상 컴퓨터 만들기Create a new virtual machine

다음 예제는 PowerShell ISE(통합 스크립팅 환경)에서 새 가상 컴퓨터를 만드는 방법을 보여 줍니다.The following example shows how to create a new virtual machine in the PowerShell Integrated Scripting Environment (ISE). 이는 간단한 예이며 추가 PowerShell 기능 및 고급 VM 배포를 포함하도록 확장할 수 있습니다.This is a simple example and could be expanded on to include additional PowerShell features and more advanced VM deployments.

  1. 시작 시에 PowerShell ISE를 열려면 PowerShell ISE를 입력합니다.To open the PowerShell ISE click on start, type PowerShell ISE.
  2. 다음 코드를 실행하여 가상 컴퓨터를 만듭니다.Run the following code to create a virtual machine. New-VM 명령에 대한 자세한 내용은 New-VM 설명서를 참조하세요.See the New-VM documentation for detailed information on the New-VM command.
 $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

요약 및 참조Wrap up and References

이 문서는 몇 가지 샘플 시나리오 뿐 아니라 Hyper-V PowerShell 모듈을 살펴보는 몇 가지 간단한 단계를 보여 주었습니다.This document has shown some simple steps to explorer the Hyper-V PowerShell module as well as some sample scenarios. Hyper-V PowerShell 모듈에 대한 자세한 내용은 Windows PowerShell 참조의 Hyper-V Cmdlet을 참조하세요.For more information on the Hyper-V PowerShell module, see the Hyper-V Cmdlets in Windows PowerShell reference.