다음을 통해 공유


Azure 정책 관리 및 Azure Arc Linux 및 Windows 서버에 Azure 모니터링 에이전트 확장 배포

이 문서에서는 Azure Arc 지원 서버를 사용하여 온-프레미스 또는 다른 클라우드에 있든 관계없이 Azure 외부의 VM에 Azure 정책을 할당하는 방법에 대한 지침을 제공합니다. 이 기능을 사용하면 이제 Azure Policy를 사용하여 Azure Arc 지원 서버의 운영 체제에서 설정을 감사할 수 있습니다. 설정을 준수하지 않는 경우 수정 작업을 트리거할 수도 있습니다.

이 경우 Azure Arc 연결 컴퓨터에 Log Analytics 에이전트가 설치된 경우 감사할 정책을 할당합니다. 그렇지 않은 경우 확장 기능을 사용하여 Azure VM에 수준을 지정하는 등록 환경인 VM에 자동으로 배포합니다. 이 방법을 사용하여 모든 서버가 Azure Monitor, 클라우드용 Microsoft Defender, Microsoft Sentinel 등과 같은 서비스에 온보딩되도록 할 수 있습니다.

Azure Portal, ARM(Azure Resource Manager) 템플릿 또는 PowerShell 스크립트를 사용하여 Azure 구독 또는 리소스 그룹에 정책을 할당할 수 있습니다. 다음 절차에서는 ARM 템플릿을 사용하여 기본 제공 정책을 할당합니다.

중요

이 문서의 절차에서는 온-프레미스나 다른 클라우드에서 실행 중인 VM 또는 서버를 이미 배포하고 Azure Arc에 연결했다고 가정합니다. 그렇지 않은 경우 다음 정보가 이를 자동화하는 데 도움이 될 수 있습니다.

Azure Monitor 지원 OS 설명서를 검토하고 이러한 절차에 사용하는 VM이 지원되는지 확인합니다. Linux VM의 경우 Linux 배포판과 커널을 모두 확인하여 지원되는 구성을 사용하고 있는지 확인합니다.

필수 조건

  1. Azure Arc Jumpstart 리포지토리를 복제합니다.

    git clone https://github.com/microsoft/azure_arc
    
  2. 앞서 설명한 대로 이 가이드는 이미 VM 또는 서버를 Azure Arc에 배포하고 연결한 지점에서 시작합니다. 다음 스크린샷에서는 GCP(Google Cloud Platform) 서버가 Azure Arc와 연결되었으며 Azure에서 리소스로 표시됩니다.

    Azure Arc 지원 서버의 리소스 그룹 스크린샷

    Azure Arc 지원 서버의 연결 상태 스크린샷

  3. Azure CLI 설치 또는 업데이트. Azure CLI는 버전 2.7 이상을 실행해야 합니다. az --version을 사용하여 현재 설치된 버전을 확인합니다.

  4. Azure 서비스 주체를 만듭니다.

    VM이나 운영 체제 미설치 서버를 Azure Arc에 연결하려면 기여자 역할이 할당된 Azure 서비스 주체가 필요합니다. 이를 만들려면 Azure 계정에 로그인하고 다음 명령을 실행합니다. Azure Cloud Shell에서 이 명령을 실행할 수도 있습니다.

    az login
    az account set -s <Your Subscription ID>
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
    

    예를 들어 다음과 같습니다.

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
    

    출력은 다음과 같습니다.

    {
      "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "displayName": "http://AzureArcServers",
      "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

    참고

    서비스 주체의 범위를 특정 Azure 구독 및 리소스 그룹으로 지정하는 것이 좋습니다.

Log Analytics 작업 영역도 배포해야 합니다. ARM 템플릿 매개 변수 파일을 편집하고 작업 영역의 이름과 위치를 제공하여 배포를 자동화할 수 있습니다.

ARM 템플릿 매개 변수 파일의 스크린샷

ARM 템플릿을 배포하려면 배포 폴더로 이동하여 다음 명령을 실행합니다.

az deployment group create --resource-group <Name of the Azure resource group> \
--template-file <The `log_analytics-template.json` template file location> \
--parameters <The `log_analytics-template.parameters.json` template file location>

Azure Arc 연결 컴퓨터에 정책 할당

모든 필수 구성 요소가 설정된 후 Azure Arc 연결 컴퓨터에 정책을 할당할 수 있습니다. Log Analytics 작업 영역뿐만 아니라 구독 ID를 제공하도록 매개 변수 파일을 편집합니다.

다른 ARM 템플릿 매개 변수 파일의 스크린샷

  1. 배포를 시작하려면 다음 명령을 사용합니다.

    az policy assignment create --name 'Enable Azure Monitor for VMs' \
    --scope '/subscriptions/<Your subscription ID>/resourceGroups/<Name of the Azure resource group>' \
    --policy-set-definition '55f3eceb-5573-4f18-9695-226972c6d74a' \
    -p <The *policy.json* template file location> \
    --assign-identity --location <Azure Region>
    

    policy-set-definition 플래그는 이니셔티브 Enable Azure Monitor 정의 ID를 가리킵니다.

  2. 이니셔티브가 할당된 후 정의된 범위에 할당을 적용하는 데 약 30분이 걸립니다. 그런 다음 Azure Policy는 Azure Arc 연결 컴퓨터에 대해 평가 주기를 시작하고 Log Analytics 에이전트 구성이 아직 배포되지 않았으므로 비규격으로 인식합니다. 이를 확인하려면 정책 섹션 아래의 Azure Arc 연결 컴퓨터로 이동합니다.

    비규격 Azure Policy 상태의 스크린샷

  3. 이제 비규격 리소스에 수정 작업을 할당하여 규격 상태로 전환합니다.

    AAzure Policy 수정 작업을 만드는 스크린샷

  4. 수정할 정책에서 [미리 보기] Linux Azure Arc 머신에 Log Analytics 에이전트 배포를 선택하고 수정을 선택합니다. 이 수정 작업은 Azure Policy에 DeployIfNotExists 효과를 실행하고 Azure Arc 확장 관리 기능을 사용하여 VM에 Log Analytics 에이전트를 배포하도록 지시합니다.

    수정 작업 내의 Azure Policy 수정 작업 스크린샷

  5. 수정 작업을 할당하면 정책이 다시 평가됩니다. GCP의 서버가 규격을 준수하며 Log Analytics 에이전트가 Azure Arc 컴퓨터에 설치되어 있다고 표시해야 합니다.

    수정 작업 구성의 스크린샷

    규격 Azure Policy 상태의 스크린샷

환경 정리

환경을 정리하려면 다음 단계를 완료합니다.

  1. 각 가이드의 분해 지침에 따라 각 환경에서 가상 머신을 제거합니다.

  2. Azure CLI에서 다음 스크립트를 실행하여 Azure Policy 할당을 제거합니다.

    az policy assignment delete --name 'Enable Azure Monitor for VMs' --resource-group <resource-group>
    
  3. Azure CLI에서 다음 스크립트를 실행하여 Log Analytics 작업 영역을 제거합니다. Log Analytics 작업 영역을 만들 때 사용한 작업 영역 이름을 제공합니다.

    az monitor log-analytics workspace delete --resource-group <Name of the Azure resource group> --workspace-name <Log Analytics workspace Name> --yes