Azure-beleid beheren en de azure-bewakingsagentextensie implementeren op Azure Arc Linux- en Windows-servers

Dit artikel bevat richtlijnen voor het gebruik van servers met Azure Arc om Azure-beleid toe te wijzen aan VM's buiten Azure, ongeacht of deze zich on-premises of in andere clouds bevinden. Met deze functie kunt u nu Azure Policy gebruiken om instellingen in het besturingssysteem van een server met Azure Arc te controleren. Als een instelling niet compatibel is, kunt u ook een hersteltaak activeren.

In dit geval wijst u een beleid toe om te controleren of de Met Azure Arc verbonden machine de Log Analytics-agent heeft geïnstalleerd. Zo niet, dan gebruikt u de functie extensies om deze automatisch te implementeren op de VM, een inschrijvingservaring die wordt toegewezen aan Azure-VM's. Deze aanpak kan worden gebruikt om ervoor te zorgen dat al uw servers onboarding uitvoeren op services zoals Azure Monitor, Microsoft Defender for Cloud, Microsoft Sentinel, enzovoort.

U kunt de Azure Portal, een Azure Resource Manager-sjabloon (ARM-sjabloon) of PowerShell-script gebruiken om beleid toe te wijzen aan Azure-abonnementen of -resourcegroepen. In de volgende procedures wordt een ARM-sjabloon gebruikt om ingebouwd beleid toe te wijzen.

Belangrijk

In de procedures in dit artikel wordt ervan uitgegaan dat u al VM's of servers hebt geïmplementeerd die on-premises of in andere clouds worden uitgevoerd en dat u deze hebt verbonden met Azure Arc. Als u dat nog niet hebt gedaan, kunt u de volgende informatie gebruiken om dit te automatiseren.

Raadpleeg de documentatie van het door Azure Monitor ondersteunde besturingssysteem en zorg ervoor dat de VM's die u voor deze procedures gebruikt, worden ondersteund. Voor Linux-VM's controleert u zowel de Linux-distributie als de kernel om er zeker van te zijn dat u een ondersteunde configuratie gebruikt.

Vereisten

  1. Kloon de Azure Arc Jumpstart-opslagplaats.

    git clone https://github.com/microsoft/azure_arc
    
  2. Zoals vermeld, begint deze handleiding op het punt waar u vm's of servers al hebt geïmplementeerd en verbonden met Azure Arc. In de volgende schermafbeeldingen is een Google Cloud Platform-server (GCP) verbonden met Azure Arc en is deze zichtbaar als een resource in Azure.

    Een schermopname van een resourcegroep voor een server met Azure Arc.

    Een schermopname van een verbonden status voor een server met Azure Arc.

  3. Azure CLI installeren of bijwerken. Azure CLI moet versie 2.7 of hoger uitvoeren. Gebruik az --version om de huidige geïnstalleerde versie te controleren.

  4. Maak een Azure-service-principal.

    Als u een VM of bare-metalserver wilt verbinden met Azure Arc, is een Azure-service-principal vereist die is toegewezen met de rol Inzender. Als u deze wilt maken, meldt u zich aan bij uw Azure-account en voert u de volgende opdracht uit. U kunt deze opdracht ook uitvoeren 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>"
    

    Bijvoorbeeld:

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

    De uitvoer moet er ongeveer als volgt uitzien:

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

    Notitie

    We raden u ten zeerste aan om het bereik van de service-principal te bepalen voor een specifiek Azure-abonnement en een specifieke resourcegroep.

U moet ook een Log Analytics-werkruimte hebben geïmplementeerd. U kunt de implementatie automatiseren door het bestand met arm-sjabloonparameters te bewerken en een naam en locatie voor uw werkruimte op te geven.

Een schermopname van een BESTAND met ARM-sjabloonparameters.

Als u de ARM-sjabloon wilt implementeren, gaat u naar de implementatiemap en voert u de volgende opdracht uit:

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>

Beleid toewijzen aan met Azure Arc verbonden machines

Nadat alle vereisten zijn ingesteld, kunt u beleid toewijzen aan de met Azure Arc verbonden machines. Bewerk het parameterbestand om uw abonnements-id en de Log Analytics-werkruimte op te geven.

Een schermopname van een ander ARM-sjabloonparameterbestand.

  1. Gebruik de volgende opdracht om de implementatie te starten:

    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>
    

    De policy-set-definition vlag verwijst naar de id van de initiatiefdefinitie Enable Azure Monitor .

  2. Nadat het initiatief is toegewezen, duurt het ongeveer 30 minuten voordat de toewijzing is toegepast op het gedefinieerde bereik. Azure Policy start vervolgens de evaluatiecyclus op de met Azure Arc verbonden machine en herkent deze als niet-compatibel omdat de configuratie van de Log Analytics-agent nog steeds niet is geïmplementeerd. Als u dit wilt controleren, gaat u naar de met Azure Arc verbonden machine in de sectie Beleid .

    Een schermopname van de status van een niet-conforme Azure Policy.

  3. Wijs nu een hersteltaak toe aan de niet-compatibele resource om in een compatibele status te plaatsen.

    Een schermopname van het maken van een Azure Policy hersteltaak.

  4. Kies onder Te herstellen beleidde optie [Preview] Log Analytics-agent implementeren op Linux Azure Arc-machines en selecteer Herstellen. Deze hersteltaak geeft Azure Policy de opdracht om het DeployIfNotExists effect uit te voeren en de beheermogelijkheden van de Azure Arc-extensie te gebruiken om de Log Analytics-agent op de VM te implementeren.

    Een schermopname van een Azure Policy herstelactie binnen een hersteltaak.

  5. Nadat u de hersteltaak hebt toegewezen, wordt het beleid opnieuw geëvalueerd. Hier moet worden aangegeven dat de server op GCP compatibel is en dat de Log Analytics-agent is geïnstalleerd op de Azure Arc-machine.

    Een schermopname van de configuratie van een hersteltaak.

    Een schermopname van de status van een compatibele Azure Policy.

Uw omgeving opschonen

Voer de volgende stappen uit om uw omgeving op te schonen.

  1. Verwijder de virtuele machines uit elke omgeving door de instructies voor verwijderen uit elke handleiding te volgen.

  2. Verwijder de Azure Policy-toewijzing door het volgende script uit te voeren in Azure CLI.

    az policy assignment delete --name 'Enable Azure Monitor for VMs' --resource-group <resource-group>
    
  3. Verwijder de Log Analytics-werkruimte door het volgende script uit te voeren in Azure CLI. Geef de naam van de werkruimte op die u hebt gebruikt bij het maken van de Log Analytics-werkruimte.

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