다음을 통해 공유


Azure Arc에서 사용하도록 설정된 Azure 로컬 VM 관리

적용 대상: Azure Local 2311.2 이상

이 문서에서는 Azure Arc에서 사용하도록 설정된 Azure 로컬 VM(가상 머신)을 관리하는 방법을 설명합니다. 게스트 관리를 사용하도록 설정하고, Azure 로컬 VM을 시작, 중지, 다시 시작, 일시 중지, 저장 또는 삭제하는 절차를 자세히 설명합니다.

필수 조건

  • 배포 및 등록된 Azure 로컬 인스턴스에 대한 액세스 Azure 로컬 인스턴스의 배포에는 Azure Arc 리소스 브리지 만들기 및 사용자 지정 위치가 포함됩니다.

    Azure의 리소스 그룹으로 이동합니다. 표시된 정보에는 사용자 지정 위치 및 Azure Local용으로 만든 Azure Arc 리소스 브리지가 포함됩니다. 구독, 리소스 그룹 및 사용자 지정 위치를 기록해 둡니다. 이 시나리오에서 나중에 사용합니다.

  • 하나 이상의 Azure 로컬 VM이 Azure 로컬 인스턴스에서 실행됩니다. 자세한 내용은 Azure 로컬 가상 머신 만들기를 참조하세요.

  • 게스트 관리를 사용하려면 Azure 로컬 VM이 공용 네트워크 연결에 액세스할 수 있어야 합니다.

게스트 관리 활성화

게스트 관리 컨텍스트에서 VM 게스트 에이전트와 Azure Connected Machine 에이전트라는 두 에이전트를 이해하는 것이 중요합니다. Azure Portal 또는 Azure CLI를 통해 만든 모든 Azure 로컬 VM은 게스트 에이전트(라고도 함 mocguestagent)를 사용하여 프로비전됩니다.

Azure 로컬 VM에서 게스트 관리를 사용하도록 설정하면 게스트 에이전트가 Azure Connected Machine 에이전트를 설치합니다. Azure Connected Machine 에이전트를 사용하여 VM에서 Azure 로컬 VM 확장을 관리합니다.

프로비전 후 VM에서 게스트 관리를 사용하도록 설정하기 위한 몇 가지 주요 고려 사항은 다음과 같습니다.

  • Azure 로컬 인스턴스가 2311.2 이상을 실행하고 있는지 확인합니다.
  • VM 프로비전 후 게스트 관리를 사용하도록 설정하는 것은 Windows Server 2012 및 Windows Server 2012 R2에서 지원되지 않습니다.
  • 게스트 관리를 사용하도록 설정하는 단계는 게스트 에이전트가 Azure 로컬 VM에서 실행되는지 여부에 따라 다릅니다.

게스트 에이전트가 실행 중인지 확인

게스트 에이전트가 Azure 로컬 VM에서 실행되고 있는지 확인하려면 다음을 수행합니다.

  1. 컴퓨터에 연결합니다.

  2. 다음 명령을 실행합니다.

    az stack-hci-vm show --name "<VM name>" --resource-group "<Resource group name>"
    

    다음은 게스트 에이전트가 실행 중임을 나타내는 샘플 출력의 코드 조각입니다. 출력의 statuses 아래에 있는 vmAgent을 찾습니다.

    "instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "Successfully established connection with mocguestagent",
            "time": "2024-01-13T00:57:39Z"
          },
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "New mocguestagent version detected 'v0.13.0-3-gd13b4794",
            "time": "2024-01-13T00:57:39Z"
          }
        ],
        "vmConfigAgentVersion": "v0.13.0-3-gd13b4794"
      }
    }
    

    게스트 에이전트는 statusescodeProvisioningState/succeeded로 나타내고 displayStatusConnected로 나타날 때 실행됩니다.

    이전 버전을 실행하는 경우, statusescodeOK로 나타내고, displayStatusActive.로 나타냅니다.

상태가 이전 출력과 일치하지 않는 경우 게스트 에이전트가 실행되고 있지 않을 때 게스트 관리 사용의 단계를 따릅니다.

게스트 에이전트가 실행 중일 때 VM에서 게스트 관리 사용

게스트 에이전트가 실행되는 Azure 로컬 VM에서 게스트 관리를 사용하도록 설정하려면 다음을 수행합니다.

  1. enable-agent 매개 변수를 true설정하는 다음 명령을 실행합니다.

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    

    게스트 관리를 사용하도록 설정하는 데 몇 분 정도 걸립니다.

  2. 게스트 관리가 사용하도록 설정되어 있는지 확인합니다. Azure Portal에서 게스트 관리가 사용하도록 설정되어 있는지 확인의 단계를 따릅니다.

게스트 에이전트가 실행되고 있지 않을 때 VM에서 게스트 관리를 사용하도록 설정

게스트 에이전트는 상태가 Connecting 때와 상태가 null인 경우의 두 가지 시나리오에서 실행되지 않습니다. 다음 섹션에서는 이러한 시나리오와 해당 단계에 대해 설명합니다.

연결로 표시되는 상태

이 샘플 출력 코드 조각은 Connecting상태를 보여 줍니다.

"instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/InProgress",
            "displayStatus": "Connecting",
            "level": "Info",
            "message": "Waiting for connection with mocguestagent",
            "time": "2024-01-19T01:41:15Z"
          }
        ]
      }
    },

statuses이/가 code을/를 ProvisioningState/InProgress로 나타내고 displayStatus이/가 Connecting로 나타내는 경우, 게스트 에이전트가 실행되지 않습니다.

이전 버전을 실행하는 경우, statusescodeOK로, displayStatusActive로, messageSuccessfully started HyperV listener로 나타냅니다.

다음 단계를 수행합니다.

  1. OS별 단계를 사용하여 VM에 연결합니다. 관리자 권한으로 Azure PowerShell을 실행합니다.

  2. 다음 명령 중 하나를 실행하여 OS 유형에 따라 VM에서 게스트 에이전트를 사용하도록 설정합니다.

    Linux에 대해 다음 명령을 사용합니다.

    sudo -- sh -c 'mkdir /mociso && mount -L mocguestagentprov /mociso && bash /mociso/install.sh && umount /mociso && rm -df /mociso && eject LABEL=mocguestagentprov'
    

    Windows용으로 다음 명령을 사용합니다.

    $d=Get-Volume -FileSystemLabel mocguestagentprov;$p=Join-Path ($d.DriveLetter+':\') 'install.ps1';powershell $p
    

    게스트 에이전트의 성공적인 설치를 보여 주는 Linux VM에 대한 샘플 출력은 다음과 같습니다.

    게스트 에이전트가 VM에서 성공적으로 사용하도록 설정되었음을 보여 주는 스크린샷

  3. 컴퓨터 중 하나에 연결합니다. 다음 명령을 실행하여 게스트 관리를 사용하도록 설정합니다.

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    
  4. 게스트 관리가 사용하도록 설정되어 있는지 확인합니다. Azure Portal에서 게스트 관리가 사용하도록 설정되어 있는지 확인의 단계를 따릅니다.

null로 표시되는 상태

다음 샘플 출력 코드 조각은 null 상태를 보여 줍니다. 이 상태는 게스트 에이전트에 필요한 iso 누락되었음을 나타냅니다.

"instanceView": {
      "vmAgent": {
        "statuses": []
      }
    },

다음 단계를 수행합니다.

  1. 컴퓨터에 연결합니다.

  2. 다음 명령을 실행합니다.

    az stack-hci-vm update --name "<VM Name>" --resource-group "<Resource group name>" --enable-vm-config-agent true
    

    enable-vm-config-agent 매개변수가 게스트 에이전트에 필요한 iso을 탑재합니다.

  3. 몇 분 정도 기다렸다가 명령을 다시 실행합니다 az stack-hci-vm show . 상태가 표시 Connecting되면 연결로 표시되는 상태의 단계를 따릅니다.

Azure Portal에서 게스트 관리가 사용하도록 설정되어 있는지 확인합니다.

  1. Azure Portal로 이동합니다.

  2. Azure 로컬>가상 머신으로 이동한 다음 게스트 관리를 사용하도록 설정한 VM을 선택합니다.

  3. 개요 페이지의 속성 탭에서 구성으로 이동합니다. 게스트 관리에는 사용(연결됨)이 표시되어야 합니다.

    게스트 관리가 사용하도록 설정되어 있는지 확인하기 위한 영역을 보여 주는 Azure Portal의 스크린샷

VM 속성 보기

Azure 로컬 인스턴스에 대한 VM 속성을 보려면 Azure Portal에서 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 속성을 보려는 VM의 이름을 선택합니다.

    가상 머신 목록에서 선택한 가상 머신의 스크린샷

  3. 개요 페이지에서 속성 탭을 선택하여 VM의 속성을 봅니다.

    선택한 Azure 로컬 가상 머신의 속성 스크린샷

VM 시작

VM을 시작하려면 Azure Portal에서 Azure 로컬 인스턴스에 대해 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 실행되고 있지 않고 시작하려는 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 시작을 선택합니다.

    개요 페이지에서 가상 머신을 시작하는 단추의 스크린샷.

  4. 확인 대화 상자에서 예를 선택합니다.

  5. VM이 시작되었는지 확인합니다.

VM 다시 시작

VM을 다시 시작하려면 Azure Portal에서 Azure 로컬 인스턴스에 대해 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 중지되고 다시 시작하려는 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 다시 시작을 선택합니다.

    개요 페이지에서 가상 머신을 다시 시작하는 단추의 스크린샷.

  4. 확인 대화 상자에서 예를 선택합니다.

  5. VM이 다시 시작되었는지 확인합니다.

가상 머신 중지

VM을 중지하려면 Azure 로컬 인스턴스에 대한 Azure Portal에서 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 실행 중이고 중지하려는 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 중지를 선택합니다.

    개요 페이지에서 가상 머신을 중지하는 단추의 스크린샷.

  4. 확인 대화 상자에서 예를 선택합니다.

  5. VM이 중지되었는지 확인합니다.

VM 일시 중지

VM을 일시 중지하면 VM을 사용하지 않을 때 컴퓨팅 리소스를 저장하는 데 유용합니다. VM을 일시 중지하면 CPU 작업이 중지됩니다.

실행 중인 VM만 일시 중지할 수 있습니다. VM을 일시 중지한 후 나중에 다시 시작할 수 있습니다.

VM을 일시 중지하려면 Azure Portal에서 Azure 로컬 인스턴스에 대해 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 현재 실행 중이고 일시 중지하려는 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 일시 중지를 선택합니다.

    개요 페이지에서 가상 머신을 일시 중지하는 단추의 스크린샷.

  4. 확인 대화 상자에서 예를 선택합니다.

  5. VM의 상태가 일시 중지됨으로 변경되었는지 확인합니다.

VM 저장

VM을 저장하면 현재 상태가 디스크에 저장되고 VM이 중지됩니다. VM을 저장하여 메모리 및 CPU 리소스를 확보합니다. 실행 중인 VM만 저장할 수 있습니다.

VM을 저장하려면 Azure Portal에서 Azure 로컬 인스턴스에 대한 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 현재 실행 중인 VM과 저장하려는 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 저장을 선택합니다.

    개요 페이지에서 가상 머신을 저장하기 위한 단추의 스크린샷.

  4. 확인 대화 상자에서 예를 선택합니다.

  5. VM의 상태가 저장됨으로 변경되었는지 확인합니다.

VM 삭제

VM을 삭제해도 VM과 연결된 모든 리소스가 삭제되지는 않습니다. 예를 들어 VM과 연결된 데이터 디스크 및 네트워크 인터페이스는 삭제되지 않습니다. 이러한 리소스를 별도로 찾아서 삭제해야 합니다.

VM을 삭제하려면 Azure 로컬 인스턴스에 대한 Azure Portal에서 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. 가상 머신 목록에서 시스템에서 제거할 VM을 선택합니다.

  3. VM에 대한 개요 페이지의 명령 모음에서 삭제를 선택합니다.

  4. 확인 대화 상자에서 예를 선택합니다.

    가상 머신 삭제에 대한 경고의 스크린샷.

  5. 이 VM이 배포된 리소스 그룹으로 이동합니다. 리소스 그룹의 리소스 목록에서 VM이 제거되었는지 확인합니다.

  6. 네트워크 인터페이스 및 데이터 디스크와 같은 연결된 리소스를 찾아 삭제합니다. 삭제되지 않은 이 VM과 연결된 리소스를 보려면 숨겨진 형식 표시 를 선택해야 할 수 있습니다.

    가상 머신과 연결된 숨겨진 유형의 리소스 스크린샷

로컬 계정 암호 변경

다음 단계에 따라 Azure 로컬 인스턴스에 배포된 Azure 로컬 VM의 로컬 계정 암호를 변경합니다. 단계는 Windows 및 Linux VM에 대해 다릅니다.

Windows VM의 로컬 계정 암호 변경

  1. Azure 로컬 VM에 로그인합니다.

  2. 다음 Azure PowerShell 명령을 실행합니다.

    # Define the username
    $username = "AccountName"
    
    # Prompt the user to enter the new password
    $newPassword = Read-Host -AsSecureString "Enter the new password for $username"
    
    # Prompt the user to re-enter the new password for verification
    $verifyPassword = Read-Host -AsSecureString "Re-enter the new password for verification"
    
    # Convert the secure strings to plain text for comparison
    $plainPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($newPassword))
    $plainVerifyPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($verifyPassword))
    
    # Check if the passwords match, and change the password if they match. Fail if the passwords don't match.
    if ($plainPassword -eq $plainVerifyPassword) {
        $account = [ADSI]"WinNT://./$username,user"
        $account.SetPassword($plainPassword)
        $account.SetInfo()
    
        Write-Host "Password for user $username has been reset successfully." -ForegroundColor Green
    } else {
        Write-Host "The passwords do not match. Please try again." -ForegroundColor Red
    }    
    

Linux VM의 로컬 계정 암호 변경

Bash가 다른 디렉터리에 있는 경우 그에 따라 #!/bin/bash 줄을 변경해야 합니다.

  1. Azure 로컬 VM에 로그인합니다.

  2. Bash가 설치된 위치에서 다음 스크립트를 실행합니다.

    #!/bin/bash
    
    # Define the username
    username="AccountName"
    
    # Prompt the user to enter the new password
    echo -n "Enter the new password for $username: "
    read -s newPassword
    echo
    
    # Prompt the user to re-enter the new password for verification
    echo -n "Re-enter the new password for verification: "
    read -s verifyPassword
    echo
    
    # Check if the passwords match
    if [ "$newPassword" == "$verifyPassword" ]; then
        # Reset the password for the local account
        echo "$username:$newPassword" | sudo chpasswd
        echo -e "\e[32mPassword for user $username has been reset successfully.\e[0m"
    else
        echo -e "\e[31mThe passwords do not match. Please try again.\e[0m"
    fi
    

Azure 로컬 VM의 실시간 마이그레이션 수행

Azure 로컬 노드에서 Azure 로컬 VM의 실시간 마이그레이션은 장애 조치(failover) 클러스터 관리자 또는 Windows Admin Center와 같은 온-프레미스 도구를 통해 지원됩니다. VM 스토리지의 실시간 마이그레이션은 지원되지 않습니다.

코어 및 메모리 변경

코어 및 메모리를 변경하려면 Azure 로컬 인스턴스에 대한 Azure Portal에서 다음 단계를 수행합니다.

  1. Azure 로컬 리소스로 이동한 다음 가상 머신으로 이동합니다.

  2. VM 목록에서 코어와 메모리를 수정하려는 VM을 선택하고 이동합니다.

  3. 설정에서 크기를 선택합니다. 가상 프로세서 수 또는 메모리(MB) 값을 편집하여 VM의 코어 또는 메모리 크기를 변경합니다. 메모리의 경우 크기만 변경할 수 있습니다. VM을 만든 후에는 메모리 유형을 변경할 수 없습니다.

    VM의 코어 및 메모리 크기를 변경하는 창의 스크린샷.

동적 메모리 변경

CLI를 사용하여 VM의 동적 메모리를 변경하여 다음 매개 변수를 지정할 수 있습니다.

--hardware-profile vm-size="Custom" processors=1 memory-mb=1024 maximum-memory-mb=2048 minimum-memory-mb=1024 target-memory-buffer=20

minimum-memory-mb 보다 작거나 같 memory-mbmaximum-memory-mb 같거나 같음입니다memory-mb.

샘플 스크립트는 다음과 같습니다.

az stack-hci-vm create --name "my_dynmemory" -g my_registration" --admin-username "admin" --admin-password "" --custom-___location "/subscriptions/my_subscription/resourceGroups/my_registration/providers/Microsoft.ExtendedLocation/customLocations/my_customlocation" --___location "eastus2euap" --image "/subscriptions/my_subscription/resourceGroups/my_registration/microsoft.azurestackhci/marketplacegalleryimages/2022-datacenter-azure-edition-core-01" --hardware-profile vm-size="Custom" processors=1 memory-mb=1024 maximum-memory-mb=2048 minimum-memory-mb=1024 target-memory-buffer=20 --enable-agent true --nics "dynnic"

게스트 관리 기능 지원

다음 OS(운영 체제)는 게스트 관리 사용을 지원합니다.

윈도우 운영 체제

  • Windows Server 2025
  • 윈도우 서버 2022
  • Windows Server2019
  • Windows Server 2016
  • Windows 10
  • 윈도우 11

리눅스 운영 체제