Condividi tramite


Gestire i criteri di Azure e distribuire l'estensione agente di monitoraggio di Azure nei server Linux e Windows abilitati per Azure Arc

Questo articolo illustra come usare i server abilitati per Azure Arc per assegnare i criteri di Azure a macchine virtuali esterne ad Azure, che si trovano in locale o in altri cloud. Con questa funzionalità è ora possibile usare Criteri di Azure per controllare le impostazioni nel sistema operativo di un server abilitato per Azure Arc. Se un'impostazione non è conforme, è possibile anche applicare un'attività di correzione.

In questo caso, si assegnerà un criterio per controllare se nel computer connesso ad Azure Arc è installato l'agente di Log Analytics. Se l'agente non è installato, è possibile usare la funzionalità delle estensioni per distribuirlo automaticamente nella macchina virtuale, un'esperienza di registrazione a livello delle macchine virtuali di Azure. Questo approccio può essere usato per assicurarsi che tutti i server siano collegati a servizi quali Monitoraggio di Azure, Microsoft Defender for Cloud, Microsoft Sentinel e così via.

È possibile usare il portale di Azure, un modello di Azure Resource Manager (modello ARM) o uno script di PowerShell per assegnare i criteri alle sottoscrizioni o ai gruppi di risorse di Azure. Le procedure seguenti usano un modello di ARM per assegnare i criteri predefiniti.

Importante

Le procedure descritte in questo articolo presuppongono che siano già state distribuite le macchine virtuali o i server in esecuzione in locale o in altri cloud e che siano stati connessi ad Azure Arc. In caso contrario, le informazioni seguenti possono risultare utili per automatizzare questa procedura.

Consultare la documentazione del sistema operativo supportato da Monitoraggio di Azure e assicurarsi che le macchine virtuali usate per queste procedure siano supportate. Per le macchine virtuali Linux, controllare sia la distribuzione Linux sia il kernel per assicurarsi di usare una configurazione supportata.

Prerequisiti

  1. Clonare il repository delle risorse introduttive per Azure Arc.

    git clone https://github.com/microsoft/azure_arc
    
  2. Come accennato, questa guida inizia dal punto in cui le macchine virtuali o i server sono già stati distribuiti e connessi in Azure Arc. Negli screenshot seguenti un server Google Cloud Platform (GCP) è stato connesso ad Azure Arc ed è visibile come risorsa in Azure.

    Screenshot di un gruppo di risorse per un server abilitato per Azure Arc.

    Screenshot di uno stato connesso per un server abilitato per Azure Arc.

  3. Installare o aggiornare l'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando di Azure deve essere la versione 2.7 o successiva. Usare az --version per verificare la versione attualmente installata

  4. Creare un'entità servizio di Azure.

    Per connettere una macchina virtuale o un server bare metal ad Azure Arc, è necessario che un'entità servizio di Azure sia assegnata con il ruolo Collaboratore. Per crearla, accedere all'account Azure ed eseguire il comando seguente. È possibile eseguire il comando anche in 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>"
    

    Ad esempio:

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

    L'output sarà simile al seguente:

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

    Nota

    È fortemente consigliabile impostare l'ambito dell'entità servizio su una sottoscrizione e su un gruppo di risorse di Azure specifici.

Sarà inoltre necessario aver distribuito un'area di lavoro Log Analytics. È possibile automatizzare la distribuzione modificando il file dei parametri del modello di ARM e specificare un nome e una posizione per l'area di lavoro.

Screenshot di un file di parametri del modello di Resource Manager.

Per distribuire il modello di ARM, passare alla cartella di distribuzione ed eseguire il comando seguente:

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>

Assegnare i criteri ai computer connessi ad Azure Arc

Dopo aver impostato tutti i prerequisiti, è possibile assegnare i criteri ai computer connessi ad Azure Arc. Modificare il file dei parametri per specificare l'ID sottoscrizione e l'area di lavoro Log Analytics.

Screenshot di un altro file di parametri del modello di Resource Manager.

  1. Per avviare la distribuzione, usare il comando seguente:

    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>
    

    Il flag policy-set-definition punta all'ID di definizione Enable Azure Monitor dell'iniziativa.

  2. Dopo l'assegnazione dell'iniziativa, occorrono circa 30 minuti perché l'assegnazione sia applicata all'ambito definito. Criteri di Azure avvia quindi il ciclo di valutazione sul computer connesso ad Azure Arc e lo riconosce come non conforme in quanto ancora privo della configurazione dell'agente di Log Analytics. Per verificare questo problema, passare al computer connesso ad Azure Arc nella sezione Criteri.

    Screenshot di uno stato di Criteri di Azure non conforme.

  3. A questo punto assegnare un'attività di correzione alla risorsa non conforme per impostare uno stato di conformità.

    Screenshot della creazione di un'attività di correzione Criteri di Azure.

  4. In Criterio da correggere, scegliere [Anteprima] Distribuisci agente di Log Analytics su computer Azure Arc Linux e selezionare Correggi. Questa attività di correzione indica a Criteri di Azure di eseguire l'effetto DeployIfNotExists e di usare le funzionalità di gestione delle estensioni Azure Arc per distribuire l'agente di Log Analytics nella macchina virtuale.

    Screenshot di un'azione di correzione Criteri di Azure all'interno di un'attività di correzione.

  5. Dopo aver assegnato l'attività di correzione, i criteri verranno nuovamente valutati. Il server in GCP dovrebbe a questo punto essere conforme e l'agente di Log Analytics dovrebbe risultare installato nel computer Azure Arc.

    Screenshot di una configurazione dell'attività di correzione.

    Screenshot di uno stato di Criteri di Azure conforme.

Pulire l'ambiente

Completare la procedura seguente per pulire l'ambiente.

  1. Rimuovere le macchine virtuali da ogni ambiente attenendosi alle istruzioni di ciascuna guida.

  2. Rimuovere l'assegnazione di Criteri di Azure eseguendo lo script seguente nell'interfaccia della riga di comando di Azure.

    az policy assignment delete --name 'Enable Azure Monitor for VMs' --resource-group <resource-group>
    
  3. Rimuovere l'area di lavoro Log Analytics eseguendo lo script seguente nell'interfaccia della riga di comando di Azure. Specificare il nome dell'area di lavoro usato per la creazione dell'area di lavoro Log Analytics.

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