Azure CLI를 사용하여 Azure VM 확장 사용
이 문서에서는 Azure CLI를 사용하여 Linux 또는 Windows 하이브리드 컴퓨터에 Azure Arc 지원 서버에서 지원하는 VM 확장을 배포, 업그레이드, 업데이트 및 제거하는 방법을 보여 줍니다.
참고 항목
Azure Arc 지원 서버는 Azure 가상 머신에 대한 VM 확장의 배포와 관리를 지원하지 않습니다. Azure VM에 관해서는 다음 VM 확장 개요 문서를 참조하세요.
사전 요구 사항
Azure Cloud Shell에서 Bash 환경을 사용합니다. 자세한 내용은 Azure Cloud Shell의 Bash에 대한 빠른 시작을 참조하세요.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치합니다. Windows 또는 macOS에서 실행 중인 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 로그인을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI에서 확장 사용을 참조하세요.
az version을 실행하여 설치된 버전과 종속 라이브러리를 찾습니다. 최신 버전으로 업그레이드하려면 az upgrade를 실행합니다.
Azure CLI 확장 설치
ConnectedMachine 명령은 Azure CLI의 일부로 제공되지 않습니다. Azure CLI를 사용하여 Azure에 연결하고 Azure Arc 지원 서버에서 관리하는 하이브리드 서버에서 VM 확장을 관리하기 전에 ConnectedMachine 확장을 로드해야 합니다. 이러한 관리 작업은 워크스테이션에서 수행할 수 있으며 Azure Arc 지원 서버에서 실행할 필요가 없습니다.
다음 명령을 실행하여 가져옵니다.
az extension add --name connectedmachine
확장 사용
Azure Arc 지원 서버에서 VM 확장을 사용하려면 az connectedmachine extension create를 --machine-name
, --extension-name
, --location
, --type
, settings
, --publisher
매개 변수와 함께 사용합니다.
다음 예에서는 Azure Arc 지원 서버에서 Log Analytics VM 확장을 사용하도록 설정합니다.
az connectedmachine extension create --machine-name "myMachineName" --name "OmsAgentForLinux or MicrosoftMonitoringAgent" --location "regionName" --settings '{\"workspaceId\":\"myWorkspaceId\"}' --protected-settings '{\"workspaceKey\":\"myWorkspaceKey\"}' --resource-group "myResourceGroup" --type-handler-version "1.13" --type "OmsAgentForLinux or MicrosoftMonitoringAgent" --publisher "Microsoft.EnterpriseCloud.Monitoring"
다음 예제에서는 Azure Arc 지원 서버에서 사용자 지정 스크립트 확장을 사용하도록 설정합니다.
az connectedmachine extension create --machine-name "myMachineName" --name "CustomScriptExtension" --location "regionName" --type "CustomScriptExtension" --publisher "Microsoft.Compute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -gt 10000 }\\\"\"}" --type-handler-version "1.10" --resource-group "myResourceGroup"
다음 예제에서는 Azure Arc 지원 서버에서 Key Vault VM 확장을 사용하도록 설정합니다.
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.KeyVault" --type "KeyVaultForLinux or KeyVaultForWindows" --name "KeyVaultForLinux or KeyVaultForWindows" --settings '{"secretsManagementSettings": { "pollingIntervalInS": "60", "observedCertificates": ["observedCert1"] }, "authenticationSettings": { "msiEndpoint": "http://localhost:40342/metadata/identity" }}'
다음 예에서는 Azure Arc 지원 Windows 서버에서 Microsoft Antimalware 확장을 사용하도록 설정합니다.
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.Security" --type "IaaSAntimalware" --name "IaaSAntimalware" --settings '"{\"AntimalwareEnabled\": \"true\"}"'
다음 예제에서는 Azure Arc 지원 Windows 서버에서 Datadog 확장을 사용하도록 설정합니다.
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Datadog.Agent" --type "DatadogWindowsAgent" --settings '{"site": "us3.datadoghq.com"}' --protected-settings '{"api_key": "YourDatadogAPIKey" }'
설치된 확장 나열
Azure Arc 지원 서버의 VM 확장 목록을 가져오려면 az connectedmachine extension list를 --machine-name
및 --resource-group
매개 변수와 함께 사용합니다.
예시:
az connectedmachine extension list --machine-name "myMachineName" --resource-group "myResourceGroup"
기본적으로 Azure CLI 명령의 출력은 JSON(JavaScript Object Notation)으로 제공됩니다. 예를 들어 기본 출력을 목록이나 테이블로 변경하려면 az config set core.output=table을 사용합니다. 출력 형식을 1번 변경하기 위해 명령에 --output
을 추가할 수도 있습니다.
다음 예제에서는 az connectedmachine extension -list
명령에서의 부분 JSON 출력을 표시합니다.
[
{
"autoUpgradingMinorVersion": "false",
"forceUpdateTag": null,
"id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/SVR01/extensions/DependencyAgentWindows",
"location": "regionName",
"name": "DependencyAgentWindows",
"namePropertiesInstanceViewName": "DependencyAgentWindows",
확장 구성 업데이트
사용자 지정 스크립트 확장 및 Log Analytics 에이전트 VM 확장과 같은 일부 VM 확장을 Arc 지원 서버에 설치하려면 구성 설정이 필요합니다. 확장 구성을 업그레이드하려면 az connectedmachine extension update를 사용합니다.
다음 예에서는 사용자 지정 스크립트 확장을 구성하는 방법을 보여 줍니다.
az connectedmachine extension update --name "CustomScriptExtension" --type "CustomScriptExtension" --publisher "Microsoft.HybridCompute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -lt 100 }\\\"\"}" --type-handler-version "1.10" --machine-name "myMachine" --resource-group "myResourceGroup"
확장 업그레이드
지원되는 VM 확장의 새 버전이 릴리스되면 해당 최신 릴리스로 업그레이드할 수 있습니다. VM 확장을 업그레이드하려면 --machine-name
, --resource-group
및 --extension-targets
매개 변수와 함께 az connectedmachine upgrade-extension을 사용합니다.
--extension-targets
매개 변수의 경우 확장과 사용 가능한 최신 버전을 지정해야 합니다. 확장 기능에 사용할 수 있는 최신 버전을 확인하려면 Azure Portal에서 선택한 Arc 지원 서버의 확장 기능 페이지를 방문하거나 az vm extension image list를 실행합니다. 게시자 및 형식(마침표로 구분)과 각 확장의 대상 버전으로 정의되어 쉼표로 구분된 확장 목록을 제공하여 단일 업그레이드 요청에 여러 확장을 지정할 수 있습니다.
최신 버전을 사용할 수 있는 Windows용 Log Analytics 에이전트 확장을 업그레이드하려면 다음 명령을 실행합니다.
az connectedmachine upgrade-extension --machine-name "myMachineName" --resource-group "myResourceGroup" --extension-targets '{"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent":{"targetVersion":"1.0.18053.0"}}'
az connectedmachine extension list 명령을 실행하여 언제든지 설치된 VM 확장 버전을 검토할 수 있습니다. typeHandlerVersion
속성 값은 확장의 버전을 나타냅니다.
확장 제거
Azure Arc 지원 서버에서 설치된 VM 확장을 제거하려면 az connectedmachine extension delete를 --extension-name
, --machine-name
, --resource-group
매개 변수와 함께 사용합니다.
예를 들어, Linux용 Log Analytics VM 확장을 제거하려면 다음 명령을 실행합니다.
az connectedmachine extension delete --machine-name "myMachineName" --name "OmsAgentForLinux" --resource-group "myResourceGroup"
다음 단계
Azure Portal 또는 Azure Resource Manager 템플릿에서 Azure PowerShell을 사용하여 VM 확장을 배포, 관리 및 제거할 수 있습니다.
문제 해결 정보는 VM 확장 문제 해결 가이드에서 찾을 수 있습니다.
명령에 대한 자세한 내용은 Azure CLI VM 확장 개요 문서를 참조하세요.