적용 대상: ✔️ Windows ✔️ 유연한 확장 집합 ✔️ 균일한 확장 집합
빠르고 일관된 방식으로 VM(가상 머신)을 구성하려면 Windows용 사용자 지정 스크립트 확장을 사용할 수 있습니다. 이 자습서에서는 다음 방법을 알아봅니다.
- 사용자 지정 스크립트 확장을 사용하여 IIS를 설치합니다.
- 사용자 지정 스크립트 확장을 사용하는 VM을 만듭니다.
- 확장이 적용된 후 실행 중인 IIS 사이트를 봅니다.
Azure Cloud Shell 시작
Azure Cloud Shell은 이 문서의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 여기에는 계정과 함께 사용하도록 미리 설치되고 구성된 일반적인 Azure 도구가 있습니다.
Cloud Shell을 열려면 코드 블록의 오른쪽 위 모서리에서 Cloudhell 열기 를 선택합니다. 또한 https://shell.azure.com/powershell 로 이동하여 별도의 브라우저 탭에서 Cloud Shell을 시작할 수 있습니다. 복사를 선택하여 코드 블록을 복사하여 Cloud Shell에 붙여넣고, Enter 키를 눌러 실행합니다.
사용자 지정 스크립트 확장 개요
사용자 지정 스크립트 확장은 Azure VM에서 스크립트를 다운로드하고 실행합니다. 이 확장은 배포 후 구성, 소프트웨어 설치 또는 기타 구성 또는 관리 작업에 유용합니다. Azure Storage 또는 GitHub에서 스크립트를 다운로드하거나 확장 런타임에 Azure Portal에 스크립트를 제공할 수 있습니다.
사용자 지정 스크립트 확장은 Azure Resource Manager 템플릿과 통합되며 Azure CLI, PowerShell, Azure Portal 또는 Azure Virtual Machine REST API를 사용하여 실행할 수 있습니다.
Linux 및 Windows VM 모두에서 사용자 지정 스크립트 확장을 사용할 수 있습니다.
가상 머신 만들기
Get-Credential을 사용하여 VM의 관리자 사용자 이름 및 암호를 설정합니다.
$cred = Get-Credential
이제 New-AzVM을 사용하여 VM을 만들 수 있습니다. 다음 예제에서는 EastUS 위치에 myVM이라는 VM을 만듭니다. 아직 없는 경우 리소스 그룹 myResourceGroupAutomate 및 지원 네트워크 리소스가 만들어집니다. 웹 트래픽을 허용하기 위해 cmdlet은 포트 80도 엽니다.
New-AzVm `
-ResourceGroupName "myResourceGroupAutomate" `
-Name "myVM" `
-Location "East US" `
-VirtualNetworkName "myVnet" `
-SubnetName "mySubnet" `
-SecurityGroupName "myNetworkSecurityGroup" `
-PublicIpAddressName "myPublicIpAddress" `
-OpenPorts 80 `
-Credential $cred
리소스 및 VM을 만드는 데 몇 분 정도 걸립니다.
IIS 설치 자동화
Set-AzVMExtension을 사용하여 사용자 지정 스크립트 확장을 설치합니다. 확장이 IIS 웹 서버를 설치하기 위해 powershell Add-WindowsFeature Web-Server
를 실행하고, 그 다음 Default.htm 페이지를 업데이트하여 VM의 호스트 이름을 표시합니다.
Set-AzVMExtension -ResourceGroupName "myResourceGroupAutomate" `
-ExtensionName "IIS" `
-VMName "myVM" `
-Location "EastUS" `
-Publisher Microsoft.Compute `
-ExtensionType CustomScriptExtension `
-TypeHandlerVersion 1.8 `
-SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}'
웹 사이트 테스트
Get-AzPublicIPAddress를 사용하여 부하 분산 장치의 공용 IP 주소를 가져옵니다. 다음 예제에서는 이전에 만든 myPublicIPAddress
에 대한 IP 주소를 가져옵니다.
Get-AzPublicIPAddress `
-ResourceGroupName "myResourceGroupAutomate" `
-Name "myPublicIPAddress" | select IpAddress
그런 다음 웹 브라우저에 공용 IP 주소를 입력할 수 있습니다. 다음 예제와 같이 부하 분산 장치가 트래픽을 분산하는 VM의 호스트 이름을 포함하여 웹 사이트가 표시됩니다.
다음 단계
이 자습서에서는 VM에 IIS 설치를 자동화했습니다. 당신은 다음을 배우셨습니다:
- 사용자 지정 스크립트 확장을 사용하여 IIS를 설치합니다.
- 사용자 지정 스크립트 확장을 사용하는 VM을 만듭니다.
- 확장이 적용된 후 실행 중인 IIS 사이트를 봅니다.
사용자 지정 VM 이미지를 만드는 방법을 알아보려면 다음 자습서로 진행하세요.