Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
재사용 가능한 VM 이미지 만들기 제 3탄!
이번 포스트는 재사용 가능한 윈도우 이미지(Windows Sysprep 이 완료된 이미지)를 이용하여 새로운 VM을 만드는 과정을 PowerShell 로 수행하는 방법을 소개해 드리려고 합니다.
그런데… PowerShell이 뭔가요? 왜 PowerShell을 이용해야 하죠? 라는 궁금증이 있으신 분들이 계실 것 같아 간략히 설명드리겠습니다.
- PowerShell 이란?
: 텍스트 기반의 화면에서 시스템 및 서비스 상태를 모니터링 할 수 있고 서비스의 동작을 제어할 수 있으며 레지스트리 값을 수정할 수 있는 환경을 제공해 줍니다. - PowerShell 을 사용하면 어떤 장점이 있죠?
: 반복적인 작업을 손쉽게 자동화 할 수 있습니다.
PowerShell 을 설치하고 구성하는 방법은 링크를 통해 확인하시기 바랍니다.
지난 포스트가 궁금하시다면 아래의 링크에서 확인해 보시기 바랍니다.
Windows Sysprep 과정을 진행할 VM을 생성하고 Sysprep 한 상태에서 시작하겠습니다. 즉, 지난 Windows Sysprep 포스트의 STEP1 - VM 구성하기, STEP2 - 재사용 가능한 윈도우용 VM 이미지 만들기(Windows Sysprep)과정에서 2. Sysprep 까지 완료한 상태라고 가정합니다.
시작하기에 앞서 Azure Portal에 로그인 하는 과정, 즉 PowerShell에 나의 구독 정보를 추가하는 과정이 필요합니다.
"Add-AzureAccount" 라는 명령어를 입력한 후, 팝업창에 정보를 입력하여 로그인을 진행하시기 바랍니다.
구독 정보를 입력한 후에, 미리 만들어둔 VM을 선택하는 과정이 필요합니다. 저는 vm-oringinal 이라는 이름을 가지는 VM을 미리 생성해 두었습니다.
"Get-AzureService -ServiceName vm-original" 명령어를 이용하여 미리만들어 둔 VM을 선택하시기 바랍니다.
VM 이미지를 캡쳐할 준비가 모두 끝나셨습니다! 이제 미리 만들어둔 VM을 중지하고, 이미지를 캡쳐해 보도록 하겠습니다.
우선 "Stop-AzureVM -ServiceName vm-original -Name vm-original" 명령어를 이용하여 VM을 중지하도록 하겠습니다.
팝업창이 뜨면 "예(Y)" 버튼을 눌러서 계속 진행하시기 바랍니다.
VM이 중지된 상태임을 확인하실 수 있습니다.
이제는 VM을 이미지로 저장해 보도록 하겠습니다.
"Save-AzureVMImage -ServiceName vm-original -Name vm-original -ImageName "vm-original" -OSState Generalized" 를 입력해 주시기 바랍니다.
잠시후, 아래와 같이 이미지가 저장되었다는 메세지를 확인하실 수 있습니다.
이제 마지막 과정만 남았습니다. 저장한 이미지를 이용하여 새로운 가상머신을 생성하는 과정입니다.
이번에는 변수를 이용하여 PowerShell을 작성해 보도록 하겠습니다. 앞에 $표시를 붙여 변수를 선언합니다.
$vmImg = Get-AzureVMImage -ImageName "vm-original"
$admin = "azureuser"
$myPwd = "비밀번호 입력"
$newVM = New-AzureVMConfig -Name "vm-copied" -InstanceSize Basic_A1 -ImageName $vmImg.ImageName
$newVM | Add-AzureProvisioningConfig -AdminUsername $admin -Password $myPwd -Windows
$newVM.ProvisionGuestAgent = $true
New-AzureVM -ServiceName vm-original -VMs $newVM -WaitForBoot -Verbose
위의 명령어를 입력하시면 Sysprep 된 이미지를 이용하여 새롭게 VM이 생성됩니다. Windows Sysprep이 잘 되었는지 여부는, Azure Portal의 가상컴퓨터 대쉬보드에서 확인하실 수 있습니다.
기존에 생성한 VM의 hostname이 아닌, 새롭게 입력한 VM의 이름과 동일한 VM이 생성 되었음을 확인하실 수 있습니다.
즉, Sysprep이 성공적으로 되었고 Sysprep된 이미지를 이용하여 Powershell로 새로운 VM도 잘 배포가 되었음을 확인하셨습니다.
긴 포스트 읽으시느라 수고 많으셨습니다. 도움이 되셨길 바랍니다.
피드백은 언제든지 댓글로 남겨주세요~!