Azure Virtual Machines에서 Azure Arc 지원 서버 평가
Azure Arc 지원 서버는 온-프레미스나 다른 클라우드에서 실행되는 서버를 Azure에 연결하는 데 도움이 되도록 설계되었습니다. 일반적으로 이러한 VM에서는 동일한 기능을 모두 기본적으로 사용할 수 있으므로 Azure Virtual Machines를 Azure Arc에 연결하지 않습니다. Azure VM은 이미 Azure Resource Manager, VM 확장, 관리 ID 및 Azure Policy에 표현되어 있습니다. Azure VM에 Azure Arc 지원 서버를 설치하려고 하면 지원되지 않는다는 오류 메시지가 표시됩니다.
프로덕션 시나리오를 위해 Azure VM에 Azure Arc 지원 서버를 설치할 수는 없지만 평가 및 테스트 목적으로만 Azure VM에서 실행되도록 Azure Arc 지원 서버를 구성할 수 있습니다. 이 문서에서는 테스트 목적으로 온-프레미스 서버처럼 보이도록 Azure VM을 준비하는 방법을 안내합니다.
참고 항목
이 문서의 단계는 Azure 클라우드에서 호스트되는 가상 머신을 대상으로 합니다. Azure Arc 지원 서버는 Azure Stack Hub 또는 Azure Stack Edge에서 실행되는 가상 머신에서 지원되지 않습니다.
필수 조건
- 사용자 계정은 가상 머신 기여자 역할에 할당됩니다.
- Azure 가상 머신이 Azure Arc 지원 서버에서 지원하는 운영 체제를 실행하고 있습니다. Azure VM이 없는 경우 단순 Windows VM 또는 단순 Ubuntu Linux 18.04 LTS VM을 배포할 수 있습니다.
- Azure VM은 아웃바운드 통신을 통해 Microsoft 다운로드 센터에서 Windows용 Azure Connected Machine 에이전트 패키지를 다운로드하고 Microsoft 패키지 리포지토리에서 Linux를 다운로드할 수 있습니다. 인터넷에 대한 아웃바운드 연결이 IT 보안 정책에 따라 제한되는 경우 에이전트 패키지를 수동으로 다운로드하여 Azure VM의 폴더에 복사할 수 있습니다.
- VM에 대한 상승된 권한(즉, 관리자 또는 루트 권한)이 있고 VM에 대한 RDP 또는 SSH 액세스 권한이 있는 계정입니다.
- Azure Arc 지원 서버에 Azure VM을 등록하고 관리하려면 리소스 그룹에서 Azure Connected Machine 리소스 관리자 또는 기여자 역할의 구성원이어야 합니다.
계획
Azure Arc 지원 서버로 Azure VM 관리를 시작하려면 Azure Arc 지원 서버를 설치하고 구성하기 전에 Azure VM을 다음과 같이 변경해야 합니다.
Azure Monitor 에이전트와 같이 Azure VM에 배포된 모든 VM 확장을 제거합니다. Azure Arc 지원 서버는 Azure VM과 동일한 많은 확장을 지원하지만 Azure Connected Machine 에이전트는 VM에 이미 배포된 VM 확장을 관리할 수 없습니다.
Azure Windows 또는 Linux 게스트 에이전트를 사용하지 않도록 설정합니다. Azure VM 게스트 에이전트는 Azure Connected Machine Agent와 유사한 용도로 사용됩니다. 두 에이전트 간의 충돌을 방지하려면 Azure VM 에이전트를 사용하지 않도록 설정해야 합니다. 사용하지 않도록 설정되면 VM 확장 또는 일부 Azure 서비스를 사용할 수 없습니다.
IMDS(Azure Instance Metadata Service)에 대한 액세스를 거부하는 보안 규칙을 만듭니다. IMDS는 애플리케이션이 리소스 ID 및 위치를 포함하여 Azure에서 VM의 표현에 대한 정보를 얻기 위해 호출할 수 있는 REST API입니다. 또한 IMDS는 컴퓨터에 할당된 모든 관리 ID에 대한 액세스 권한을 제공합니다. Azure Arc 지원 서버는 자체 IMDS 구현을 제공하고 VM의 Azure Arc 표현에 대한 정보를 반환합니다. 두 IMDS 엔드포인트를 모두 사용할 수 있고 앱이 둘 중에서 선택해야 하는 상황을 피하려면 Azure Arc 지원 서버의 IMDS 구현만 사용할 수 있도록 Azure VM IMDS에 대한 액세스를 차단합니다.
이렇게 변경한 후에는 Azure VM이 Azure 외부 머신이나 서버처럼 동작하며, Azure Arc 지원 서버를 설치하고 평가하는 데 필요한 시작점에 있습니다.
VM에서 Azure Arc 지원 서버를 구성하면 Azure에 VM의 두 가지 표현이 표시됩니다. 하나는 Microsoft.Compute/virtualMachines
리소스 유형의 Azure VM 리소스이고 다른 하나는 Microsoft.HybridCompute/machines
리소스 유형의 Azure Arc 리소스입니다. 공유 물리적 호스트 서버에서 게스트 운영 체제 관리를 방지한 결과 두 리소스에 대해 생각하는 가장 좋은 방법은 Azure VM 리소스이며 사용자 VM에 대한 가상 하드웨어입니다. 이를 통해 전원 상태를 제어하고 해당 SKU, 네트워크 및 스토리지 구성에 대한 정보를 볼 수 있습니다. Azure Arc 리소스는 해당 VM의 게스트 운영 체제를 관리하며, 확장을 설치하고 Azure Policy에 대한 준수 데이터를 확인하고 Azure Arc 지원 서버에서 지원되는 다른 작업을 완료하는 데 사용될 수 있습니다.
Azure VM 다시 구성
참고 항목
Windows의 경우 환경 변수를 설정하여 Azure VM 설치에서 ARC를 재정의합니다.
[System.Environment]::SetEnvironmentVariable("MSFT_ARC_TEST",'true', [System.EnvironmentVariableTarget]::Machine)
Azure VM에서 VM 확장을 제거합니다.
Azure Portal에서 Azure VM 리소스로 이동한 다음 왼쪽 창에서 확장을 선택합니다. VM에 설치된 확장이 있는 경우 각 확장을 개별적으로 선택한 다음 제거를 선택합니다. 2단계를 진행하기 전에 모든 확장이 제거를 마칠 때까지 기다립니다.
Azure VM 게스트 에이전트를 사용하지 않도록 설정합니다.
Azure VM 게스트 에이전트를 사용하지 않도록 설정하려면 원격 데스크톱 연결(Windows) 또는 SSH(Linux)를 사용하여 VM에 연결하고 다음 명령을 실행하여 게스트 에이전트를 사용하지 않도록 설정합니다.
Windows의 경우 다음 PowerShell 명령을 실행합니다.
Set-Service WindowsAzureGuestAgent -StartupType Disabled -Verbose Stop-Service WindowsAzureGuestAgent -Force -Verbose
Linux의 경우 다음 명령을 실행합니다.
sudo systemctl stop walinuxagent sudo systemctl disable walinuxagent
Azure IMDS 엔드포인트에 대한 액세스를 차단합니다.
참고 항목
169.254.169.254 및 169.254.169.253에는 아래 구성을 적용해야 합니다. 이는 각각 Azure 및 Azure Stack HCI의 IMDS에 사용되는 엔드포인트입니다.
서버에 계속 연결되어 있는 동안 다음 명령을 실행하여 Azure IMDS 엔드포인트에 대한 액세스를 차단합니다. Windows의 경우 다음 PowerShell 명령을 실행합니다.
New-NetFirewallRule -Name BlockAzureIMDS -DisplayName "Block access to Azure IMDS" -Enabled True -Profile Any -Direction Outbound -Action Block -RemoteAddress 169.254.169.254
Linux의 경우 TCP 포트 80을 통해
169.254.169.254/32
에 대한 아웃바운드 액세스를 차단하는 가장 좋은 방법은 배포 문서를 참조하세요. 일반적으로 기본 제공 방화벽을 사용하여 아웃바운드 액세스를 차단하지만 iptables 또는 nftables를 사용하여 일시적으로 차단할 수도 있습니다.Azure VM에서 Ubuntu를 실행하는 경우 다음 단계를 수행하여 UFW(복잡하지 않은 방화벽)를 구성합니다.
sudo ufw --force enable sudo ufw deny out from any to 169.254.169.254 sudo ufw default allow incoming
Azure VM이 Red Hat 또는 SLES(SUSE Linux Enterprise Server)를 실행 중인 경우 다음 단계를 수행하여 firewalld를 구성합니다.
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -d 169.254.169.254 -j REJECT sudo firewall-cmd --reload
다른 배포판의 경우 방화벽 문서를 참조하거나 다음 명령을 사용하여 일반 iptables 규칙을 구성합니다.
sudo iptables -I OUTPUT 1 -d 169.254.169.254 -j REJECT
참고 항목
영구 iptables 솔루션을 사용하지 않는 한 다시 부팅할 때마다 iptables 구성을 설정해야 합니다.
Azure Connected Machine 에이전트를 설치하고 구성합니다.
이제 Azure Arc 지원 서버 평가를 시작할 수 있는 VM이 준비되었습니다. Azure Connected Machine 에이전트를 설치하고 구성하려면 Azure Portal을 사용하여 하이브리드 머신 연결을 참조하고, 단계에 따라 설치 스크립트를 생성하여 스크립팅된 메서드로 설치합니다.
참고 항목
Azure VM에서 인터넷에 대한 아웃바운드 연결이 제한된 경우 에이전트 패키지를 수동으로 다운로드할 수 있습니다. 에이전트 패키지를 Azure VM에 복사하고 원본 폴더를 참조하도록 Azure Arc 지원 서버 설치 스크립트를 수정합니다.
단계 중 하나를 누락한 경우 설치 스크립트는 Azure VM에서 실행 중임을 감지하고 오류와 함께 종료합니다. 1~3단계를 완료했는지 확인한 다음 스크립트를 다시 실행합니다.
Azure Arc 연결 확인
에이전트를 설치하고 Azure Arc 지원 서버에 등록되도록 구성한 후에는 Azure Portal로 이동하여 서버가 성공적으로 연결되었는지 확인합니다. Azure Portal에서 머신을 확인합니다.
다음 단계
Azure에서 필수 보안 관리 및 모니터링 기능의 구성을 간소화하기 위해 Azure Arc 지원 서버에 대해 많은 머신을 계획하고 사용하도록 설정하는 방법을 알아봅니다.
Windows 또는 Linux 컴퓨터를 위한 Automation, KeyVault 등의 기타 Azure 서비스와 함께 배포를 단순화하는 데 사용할 수 있는 지원되는 Azure VM 확장에 대해 알아봅니다.
테스트를 마쳤으면 Azure Connected Machine 에이전트를 제거합니다.