Hantera Azure-principer och distribuera Azure Monitoring Agent-tillägget till Azure Arc Linux- och Windows-servrar

Den här artikeln innehåller vägledning om hur du använder Azure Arc-aktiverade servrar för att tilldela Azure-principer till virtuella datorer utanför Azure, oavsett om de är lokala eller i andra moln. Med den här funktionen kan du nu använda Azure Policy för att granska inställningar i operativsystemet på en Azure Arc-aktiverad server. Om en inställning inte är kompatibel kan du också utlösa en reparationsuppgift.

I det här fallet tilldelar du en princip för att granska om den Azure Arc-anslutna datorn har Log Analytics-agenten installerad. Annars använder du tilläggsfunktionen för att automatiskt distribuera den till den virtuella datorn, en registreringsupplevelse som jämnar ut till virtuella Azure-datorer. Den här metoden kan användas för att se till att alla dina servrar är registrerade på tjänster som Azure Monitor, Microsoft Defender för molnet, Microsoft Sentinel och så vidare.

Du kan använda Azure Portal, en Azure Resource Manager-mall (ARM-mall) eller Ett PowerShell-skript för att tilldela principer till Azure-prenumerationer eller resursgrupper. Följande procedurer använder en ARM-mall för att tilldela inbyggda principer.

Viktigt

Procedurerna i den här artikeln förutsätter att du redan har distribuerat virtuella datorer eller servrar som körs lokalt eller i andra moln och att du har anslutit dem till Azure Arc. Om du inte har gjort det kan följande information hjälpa dig att automatisera detta.

Läs dokumentationen om operativsystemet som stöds av Azure Monitor och se till att de virtuella datorer som du använder för dessa procedurer stöds. För virtuella Linux-datorer kontrollerar du både Linux-distributionen och kerneln för att se till att du använder en konfiguration som stöds.

Förutsättningar

  1. Klona Azure Arc Jumpstart-lagringsplatsen.

    git clone https://github.com/microsoft/azure_arc
    
  2. Som nämnts börjar den här guiden vid den punkt där du redan har distribuerat och anslutit virtuella datorer eller servrar till Azure Arc. I följande skärmbilder har en GCP-server (Google Cloud Platform) anslutits till Azure Arc och visas som en resurs i Azure.

    En skärmbild av en resursgrupp för en Azure Arc-aktiverad server.

    En skärmbild av en ansluten status för en Azure Arc-aktiverad server.

  3. Installera eller uppdatera Azure CLI. Azure CLI bör köra version 2.7 eller senare. Använd az --version för att kontrollera din aktuella installerade version.

  4. Skapa ett huvudnamn för Azure-tjänsten.

    För att ansluta en virtuell dator eller bare metal-server till Azure Arc krävs Azure-tjänstens huvudnamn som tilldelats rollen Deltagare. Om du vill skapa det loggar du in på ditt Azure-konto och kör följande kommando. Du kan också köra det här kommandot i 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>"
    

    Exempel:

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

    Resultatet bör se ut så här:

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

    Anteckning

    Vi rekommenderar starkt att du omfångsbegränsar tjänstens huvudnamn till en specifik Azure-prenumeration och resursgrupp.

Du måste också ha en Log Analytics-arbetsyta distribuerad. Du kan automatisera distributionen genom att redigera ARM-mallparameterfilen och ange ett namn och en plats för din arbetsyta.

En skärmbild av en ARM-mallparameterfil.

Om du vill distribuera ARM-mallen navigerar du till distributionsmappen och kör följande kommando:

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>

Tilldela principer till Azure Arc-anslutna datorer

När alla förutsättningar har angetts kan du tilldela principer till de Azure Arc-anslutna datorerna. Redigera parameterfilen för att ange ditt prenumerations-ID samt Log Analytics-arbetsytan.

En skärmbild av en annan ARM-mallparameterfil.

  1. Starta distributionen med följande kommando:

    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>
    

    Flaggan policy-set-definition pekar på initiativdefinitionens Enable Azure Monitor ID.

  2. När initiativet har tilldelats tar det cirka 30 minuter innan tilldelningen tillämpas på det definierade omfånget. Azure Policy startar sedan utvärderingscykeln mot den Azure Arc-anslutna datorn och identifierar den som inkompatibel eftersom log analytics-agentkonfigurationen fortfarande inte har distribuerats. Om du vill kontrollera detta går du till den Azure Arc-anslutna datorn under avsnittet Principer .

    En skärmbild av statusen inkompatibel Azure Policy.

  3. Tilldela nu en reparationsuppgift till den inkompatibla resursen för att försättas i ett kompatibelt tillstånd.

    En skärmbild av hur du skapar en Azure Policy reparationsåtgärd.

  4. Under Princip för att åtgärda väljer du [Förhandsversion] Distribuera Log Analytics-agenten till Linux Azure Arc-datorer och väljer Åtgärda. Den här reparationsuppgiften instruerar Azure Policy att köra DeployIfNotExists effekten och använda hanteringsfunktionerna för Azure Arc-tillägget för att distribuera Log Analytics-agenten på den virtuella datorn.

    En skärmbild av en Azure Policy reparationsåtgärd i en reparationsåtgärd.

  5. När du har tilldelat reparationsuppgiften utvärderas principen igen. Den bör visa att servern på GCP är kompatibel och att Log Analytics-agenten är installerad på Azure Arc-datorn.

    En skärmbild av konfigurationen av en reparationsuppgift.

    En skärmbild av en kompatibel Azure Policy status.

Rensa din miljö

Utför följande steg för att rensa miljön.

  1. Ta bort de virtuella datorerna från varje miljö genom att följa borttagningsanvisningarna från varje guide.

  2. Ta bort Azure Policy tilldelningen genom att köra följande skript i Azure CLI.

    az policy assignment delete --name 'Enable Azure Monitor for VMs' --resource-group <resource-group>
    
  3. Ta bort Log Analytics-arbetsytan genom att köra följande skript i Azure CLI. Ange namnet på arbetsytan som du använde när du skapade Log Analytics-arbetsytan.

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