적용 대상: Azure Local 2311.2 이상의 하이퍼컨버지드 배포
이 문서에서는 Azure 로컬 인스턴스에서 만든 VM 이미지부터 시작하여 Azure Arc에서 사용하도록 설정된 Azure 로컬 VM(가상 머신)을 만드는 방법을 설명합니다. Azure CLI, Azure Portal 또는 Azure Resource Manager 템플릿을 사용하여 Azure 로컬 VM을 만들 수 있습니다.
Azure 로컬 리소스 정보
다음 작업을 수행하려면 Azure 로컬 리소스 페이지를 사용하십시오.
- VM 이미지, 디스크, 네트워크 인터페이스와 같은 Azure 로컬 VM 리소스를 만들고 관리합니다.
- Azure 로컬 인스턴스와 연결된 Azure Arc 리소스 브리지 및 사용자 지정 위치를 보고 액세스합니다.
- VM을 프로비전 및 관리합니다.
VM을 만드는 절차는 다음 섹션에서 설명합니다.
필수 조건
Azure 로컬 VM을 만들기 전에 다음 필수 구성 요소가 완료되었는지 확인합니다.
- 적절한 RBAC 역할 및 권한이 할당된 Azure 구독에 액세스합니다. 자세한 내용은 Azure 로컬 VM 관리에 대한 RBAC 역할을 참조하세요.
- VM을 프로비전하려는 리소스 그룹에 액세스합니다.
- Azure Local에서 하나 이상의 VM 이미지에 액세스합니다. 이러한 VM 이미지는 다음 절차 중 하나를 통해 만들 수 있습니다.
- VM을 프로비전하는 데 사용할 Azure Local에 대한 사용자 지정 위치입니다. 사용자 지정 위치는 Azure Local의 개요 페이지에도 표시됩니다.
클라이언트를 사용하여 Azure Local에 연결하는 경우 Azure CLI 클라이언트를 통해 Azure Local에 연결을 참조하세요.
Azure Local과 연결된 논리 네트워크에서 만든 네트워크 인터페이스에 액세스합니다. 고정 IP가 있는 네트워크 인터페이스 또는 동적 IP 할당이 있는 네트워크 인터페이스를 선택할 수 있습니다. 자세한 내용은 네트워크 인터페이스를 만드는 방법을 참조하세요.
Azure 로컬 VM 만들기
다음 단계에 따라 Azure 로컬에 VM을 만듭니다.
참고
- VM 프로비전 중에 두 개의 DVD 드라이브가 만들어지고 Azure 로컬 VM에서 사용됩니다. 프로비전 중에 사용되는 ISO 파일은 VM을 성공적으로 만든 후 제거됩니다. 그러나 VM에 대해 빈 드라이브가 표시되는 것을 볼 수 있습니다.
- Windows VM에서 이러한 드라이브를 삭제하려면 Device Manager를 사용하여 드라이브를 제거합니다. 사용 중인 Linux 버전에 따라 Linux VM에 대해 삭제할 수도 있습니다.
Azure Local에 연결된 az CLI를 실행하는 클라이언트에서 다음 단계를 수행합니다.
로그인 및 구독 설정
Azure 로컬의 컴퓨터에 연결합니다.
로그인합니다. 유형:
az login --use-device-code구독을 설정합니다.
az account set --subscription <Subscription ID>
Windows VM 만들기
만든 네트워크 인터페이스의 유형에 따라 고정 IP 또는 동적 IP 할당이 있는 네트워크 인터페이스가 있는 VM을 만들 수 있습니다.
참고
VM에 대해 고정 IP가 있는 네트워크 인터페이스가 둘 이상 필요한 경우 VM을 만들기 전에 지금 하나 이상의 인터페이스를 만듭니다. VM이 프로비전된 후 고정 IP를 사용하여 네트워크 인터페이스를 추가하는 것은 지원되지 않습니다.
여기서는 지정된 스토리지 경로에서 특정 메모리 및 프로세서 수를 사용하는 VM을 만듭니다.
일부 매개 변수를 설정합니다.
$vmName ="local-vm" $subscription = "<Subscription ID>" $resource_group = "local-rg" $customLocationName = "local-cl" $customLocationID ="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customLocationName" $location = "eastus" $computerName = "mycomputer" $userName = "local-user" $password = "<Password for the VM>" $imageName ="ws22server" $nicName ="local-vnic" $storagePathName = "local-sp" $storagePathId = "/subscriptions/<Subscription ID>/resourceGroups/local-rg/providers/Microsoft.AzureStackHCI/storagecontainers/local-sp"VM 만들기에 대한 매개 변수는 다음과 같이 테이블로 표시됩니다.
매개 변수 설명 이름 Azure 로컬에 대해 만든 VM의 이름입니다. Azure 리소스에 대한 규칙을 따르는 이름을 제공해야 합니다. admin-username Azure Local에 배포하는 VM의 사용자에 대한 사용자 이름입니다. 관리자 암호 Azure Local에 배포하는 VM의 사용자에 대한 암호입니다. image-name VM을 프로비전하는 데 사용되는 VM 이미지의 이름입니다. 위치 지정된 az locations에 따라 Azure 지역 예를 들어 다음과eastuswesteurope같습니다.resource-group VM을 만드는 리소스 그룹의 이름입니다. 관리 편의를 위해 Azure Local과 동일한 리소스 그룹을 사용하는 것이 좋습니다. 구독 Azure Local이 배포되어 있는 구독의 이름 또는 ID입니다. Azure Local의 VM에 사용하는 또 다른 구독일 수 있습니다. 사용자 지정 위치 이 VM을 만드는 Azure Local과 연결된 사용자 지정 위치를 제공하는 데 사용합니다. 인증 유형 VM에 사용할 인증 유형입니다. 허용되는 값은 all,password및ssh. 기본값은 Linux용 Windows 및 SSH 공개 키의 암호입니다.all인증을 활성화하여ssh및password인증을 모두 사용하십시오.닉스 VM과 연결된 네트워크 인터페이스의 이름 또는 ID입니다. 게스트 관리를 사용하려면 VM을 만들 때 네트워크 인터페이스가 하나 이상 있어야 합니다. memory-mb VM에 할당된 메모리(메가바이트)입니다. 지정하지 않으면 기본값이 사용됩니다. 프로세서 VM에 할당된 프로세서 수입니다. 지정하지 않으면 기본값이 사용됩니다. storage-path-id VM 구성 및 데이터가 저장되는 연결된 스토리지 경로입니다. proxy-configuration 이 선택적 매개 변수를 사용하여 VM에 대한 프록시 서버를 구성합니다. 자세한 내용은 프록시가 구성된 VM 만들기를 참조하세요. 다음 명령을 실행하여 해당 VM을 만듭니다.
신뢰할 수 있는 시작 Azure 로컬 VM을 만들려면 다음을 수행합니다.
보안 부팅을 사용하도록 설정하고, 가상 TPM을 사용하도록 설정하고, 보안 유형을 선택할 추가 플래그를 지정합니다. 보안 유형을 신뢰할 수 있는 시작으로 지정하는 경우 보안 부팅 및 vTPM을 사용하도록 설정해야 합니다. 그렇지 않으면 신뢰할 수 있는 시작 VM 만들기가 실패합니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --enable-secure-boot true --enable-vtpm true --security-type "TrustedLaunch"VM이 만들어지면 VM의 보안 유형이
Trusted launch확인하려면 다음을 수행합니다.클러스터 노드 중 하나에서 다음 cmdlet을 실행하여 VM의 소유자 노드를 찾습니다.
Get-ClusterGroup $vmNameVM의 소유자 노드에서 다음 cmdlet을 실행합니다.
(Get-VM $vmName).GuestStateIsolationTypeTrustedLaunch값이 반환되는지 확인합니다.
표준 Azure 로컬 VM을 만들려면 다음을 수행합니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId
출력에서 provisioningState가 succeeded로 표시되면 VM이 성공적으로 생성됩니다.
참고
만든 VM에는 기본적으로 게스트 관리가 사용하도록 설정되어 있습니다. 어떤 이유로든 VM을 만드는 동안 게스트 관리가 실패하는 경우 Azure 로컬 VM에서 게스트 관리 사용 의 단계에 따라 VM을 만든 후 사용하도록 설정할 수 있습니다.
이 예제에서는 플래그를 사용하여 --storage-path-id 스토리지 경로를 지정하고 워크로드 데이터(VM, VM 이미지, 비 OS 데이터 디스크 포함)가 지정된 스토리지 경로에 배치되도록 했습니다.
플래그를 지정하지 않으면 워크로드(VM, VM 이미지, 비 OS 데이터 디스크)가 고가용성 스토리지 경로에 자동으로 배치됩니다.
Windows Server 2012 및 Windows Server 2012 R2 이미지에 대한 추가 매개 변수
Windows Server 2012 및 Windows Server 2012 R2 이미지를 사용하여 VM을 만들 때 VM을 만들려면 다음 추가 매개 변수를 지정합니다.
-
--enable-agent: 이 매개 변수를trueVM에서 Azure Connected Machine 에이전트를 온보딩하도록 설정합니다. -
--enable-vm-config-agent: 이 매개 변수를false로 설정하여, 호스트를 통해 Hyper-V 소켓 채널로 VM의 VM 에이전트 온보딩을 방지합니다. Windows Server 2012 및 Windows Server 2012 R2는 Hyper-V 소켓을 지원하지 않습니다. Hyper-V 소켓을 지원하는 최신 이미지 버전에서 VM 에이전트는 VM에서 Azure Connected Machine 에이전트를 온보딩하는 데 사용됩니다. Hyper-V 소켓에 대한 자세한 내용은 통합 서비스 만들기를 참조하세요.
Linux VM 만들기
Linux VM을 만들려면 Windows VM을 만드는 데 사용한 것과 동일한 명령을 사용합니다.
- 지정된 갤러리 이미지는 Linux 이미지여야 합니다.
- 사용자 이름 및 암호는 매개 변수와
authentication-type-all함께 작동합니다. - SSH 키의 경우 매개 변수를
ssh-key-values.와authentication-type-all함께 전달해야 합니다.
중요합니다
VM을 만드는 동안 프록시 서버를 설정하는 것은 Ubuntu Server VM에 대해 지원됩니다.
프록시가 구성된 VM 만들기
이 선택적 매개 변수 프록시 구성 을 사용하여 VM에 대한 프록시 서버를 구성합니다.
VM에 대한 프록시 구성은 Azure 연결된 컴퓨터 에이전트의 온보딩에만 적용되며 게스트 VM 운영 체제 내에서 환경 변수로 설정됩니다. VM의 브라우저 및 애플리케이션이 이 프록시 구성에서 모두 사용하도록 설정되지는 않습니다.
따라서 VM 내에서 설정된 환경 변수를 참조하지 않는 경우 애플리케이션에 대한 프록시 구성을 구체적으로 설정해야 할 수 있습니다.
프록시 서버 뒤에 VM을 만드는 경우 다음 명령을 실행합니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --proxy-configuration http_proxy="<Http URL of proxy server>" https_proxy="<Https URL of proxy server>" no_proxy="<URLs which bypass proxy>" cert_file_path="<Certificate file path for your machine>"
다음 매개 변수를 입력할 수 있습니다.proxy-server-configuration
| 매개 변수 | 설명 |
|---|---|
| http_proxy | 프록시 서버에 대한 HTTP URL입니다. URL의 예는 다음과 같습니다http://proxy.example.com:3128. |
| https_proxy | 프록시 서버에 대한 HTTPS URL입니다. 서버는 다음 예제 http://proxy.example.com:3128와 같이 HTTP 주소를 계속 사용할 수 있습니다. |
| no_proxy | 프록시를 바이패스할 수 있는 URL입니다. 일반적인 예는 다음과 같습니다 localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,100.0.0.0/8. |
| cert_file_path | 프록시 서버와의 트러스트를 설정하는 데 사용되는 인증서 파일을 선택합니다. 예는 C:\Users\Palomino\proxycert.crt입니다. |
예시 명령은 다음과 같습니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --proxy-configuration http_proxy="http://ubuntu:ubuntu@192.168.200.200:3128" https_proxy="http://ubuntu:ubuntu@192.168.200.200:3128" no_proxy="localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,100.0.0.0/8,s-cluster.test.contoso.com" cert_file_path="C:\ClusterStorage\UserStorage_1\server.crt"
프록시 인증의 경우 다음과 같이 URL에 결합된 사용자 이름과 암호를 전달할 수 있습니다"http://username:password@proxyserver.contoso.com:3128".
Arc 게이트웨이가 구성된 VM 만들기
Azure 로컬 VM에 Arc 게이트웨이를 구성하려면 게스트 관리를 사용하도록 설정된 VM을 만들고 선택적 매개 변수 --gateway-id를 전달합니다. Arc 게이트웨이는 프록시 구성을 사용하거나 사용하지 않고 사용할 수 있습니다. 기본적으로 Arc 트래픽만 Arc 프록시를 통해 리디렉션됩니다.
VM 애플리케이션 또는 서비스에서 Arc 게이트웨이를 사용하도록 하려면 Arc 프록시를 사용하도록 VM 내의 프록시를 구성합니다. VM 내에서 설정된 환경 변수를 참조하지 않는 애플리케이션의 경우 필요에 따라 프록시를 지정합니다.
중요합니다
Arc 게이트웨이에서 관리되지 않는 엔드포인트용 트래픽은 엔터프라이즈 프록시 또는 방화벽을 통해 라우팅됩니다.
Windows VM의 경우 다음 엔드포인트를 허용합니다. https://agentserviceapi.guestconfiguration.azure.comhttps://<azurelocalregion>-gas.guestconfiguration.azure.com
Linux VM의 경우 다음 엔드포인트를 허용합니다. https://agentserviceapi.guestconfiguration.azure.comhttps://<azurelocalregion>-gas.guestconfiguration.azure.comhttps://packages.microsoft.com
프록시 서버 뒤에서 Arc 게이트웨이를 사용하도록 설정된 VM을 만들려면 다음 명령을 실행합니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --gateway-id $gw --proxy-configuration http_proxy="<Http URL of proxy server>" https_proxy="<Https URL of proxy server>" no_proxy="<URLs which bypass proxy>" cert_file_path="<Certificate file path for your machine>"
다음 매개 변수를 입력할 수 있습니다.proxy-server-configurationArc gateway
| 매개 변수 | 설명 |
|---|---|
| gateway-id | Arc 게이트웨이의 리소스 ID입니다. 게이트웨이 리소스 ID 예제는 다음과 같습니다. /subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.HybridCompute/gateways/$gwid |
| http_proxy | 프록시 서버에 대한 HTTP URL입니다. URL의 예는 다음과 같습니다http://proxy.example.com:3128. |
| https_proxy | 프록시 서버에 대한 HTTPS URL입니다. 서버는 다음 예제 http://proxy.example.com:3128와 같이 HTTP 주소를 계속 사용할 수 있습니다. |
| no_proxy | 프록시를 바이패스할 수 있는 URL입니다. 일반적인 예는 다음과 같습니다 localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,100.0.0.0/8. |
예시 명령은 다음과 같습니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --gateway-id $gw --proxy-configuration http_proxy="http://ubuntu:ubuntu@192.168.200.200:3128" https_proxy="http://ubuntu:ubuntu@192.168.200.200:3128" no_proxy="localhost,127.0.0.1,.svc,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,100.0.0.0/8,s-cluster.test.contoso.com"
프록시 서버 없이 Arc 게이트웨이를 사용하도록 설정된 VM을 만들려면 다음 명령을 실행합니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --gateway-id $gw
다음 매개 변수를 입력할 수 있습니다.Arc gateway
| 매개 변수 | 설명 |
|---|---|
| gateway-id | Arc 게이트웨이의 리소스 ID입니다. 게이트웨이 리소스 ID 예제는 다음과 같습니다. /subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.HybridCompute/gateways/$gwid |
예시 명령은 다음과 같습니다.
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId --gateway-id $gw
관리 ID를 사용하여 Azure 로컬 VM 인증
Azure CLI 또는 Azure Portal을 통해 Azure 로컬에서 VM을 만들 때 VM의 수명 동안 지속되는 시스템 할당 관리 ID도 생성됩니다.
Azure Local의 VM은 Arc 지원 서버에서 확장되며 시스템 할당 관리 ID를 사용하여 Microsoft Entra ID 기반 인증을 지원하는 다른 Azure 리소스에 액세스할 수 있습니다. 예를 들어 VM은 시스템 할당 관리 ID를 사용하여 Azure Key Vault에 액세스할 수 있습니다.
자세한 내용은 시스템 할당 관리 ID 를 참조하고 Azure Arc 지원 서버를 사용하여 Azure 리소스에 대해 인증합니다.
다음 단계
- Azure 로컬 VM을 삭제합니다.
- VM 확장을 설치하고 관리합니다.
- Azure 로컬 VM 문제 해결
- Azure 로컬 VM 관리에 대한 자주 묻는 질문 .