Gedelegeerde resources op schaal bewaken

Als serviceprovider hebt u mogelijk onboarding van meerdere klanttenants naar Azure Lighthouse gedaan. Met Azure Lighthouse kunnen serviceproviders bewerkingen op schaal uitvoeren op verschillende tenants tegelijk, waardoor beheertaken efficiënter worden.

In dit onderwerp wordt beschreven hoe u Azure Monitor-logboeken op een schaalbare manier kunt gebruiken in de tenants van klanten die u beheert. Hoewel we in dit onderwerp verwijzen naar serviceproviders en klanten, zijn deze richtlijnen ook van toepassing op ondernemingen die Azure Lighthouse gebruiken om meerdere tenants te beheren.

Notitie

Zorg ervoor dat gebruikers in uw beherende tenants de benodigde rollen hebben gekregen voor het beheren van Log Analytics-werkruimten in uw gedelegeerde klantabonnementen.

Log Analytics-werkruimten maken

Als u gegevens wilt verzamelen, moet u Log Analytics-werkruimten maken. Deze Log Analytics-werkruimten zijn unieke omgevingen voor gegevens die worden verzameld door Azure Monitor. Elke werkruimte heeft een eigen gegevensopslagplaats en -configuratie, en gegevensbronnen en oplossingen worden zo geconfigureerd dat de bijbehorende gegevens in een bepaalde werkruimte worden opgeslagen.

U wordt aangeraden deze werkruimten rechtstreeks in de tenants van de klant te maken. Op deze manier blijven hun gegevens in hun tenants in plaats van te worden geëxporteerd naar uw tenants. Door de werkruimten in de tenants van de klant te maken, kunt u resources of services die worden ondersteund door Log Analytics, gecentraliseerd bewaken, waardoor u meer flexibiliteit krijgt over de typen gegevens die u bewaakt. Werkruimten die zijn gemaakt in tenants van klanten zijn vereist om informatie te verzamelen uit diagnostische instellingen.

Tip

Elk Automation-account dat wordt gebruikt voor toegang tot gegevens vanuit een Log Analytics-werkruimte, moet worden gemaakt in dezelfde tenant als de werkruimte.

U kunt een Log Analytics-werkruimte maken met behulp van de Azure Portal, met behulp van Azure Resource Manager-sjablonen of met behulp van Azure PowerShell.

Belangrijk

Als alle werkruimten worden gemaakt in tenants van klanten, moeten de Microsoft.Insights-resourceproviders ook worden geregistreerd in een abonnement in de beherende tenant. Als uw beherende tenant geen bestaand Azure-abonnement heeft, kunt u de resourceprovider handmatig registreren met behulp van de volgende PowerShell-opdrachten:

$ManagingTenantId = "your-managing-Azure-AD-tenant-id"

# Authenticate as a user with admin rights on the managing tenant
Connect-AzAccount -Tenant $ManagingTenantId

# Register the Microsoft.Insights resource providers Application Ids
New-AzADServicePrincipal -ApplicationId 1215fb39-1d15-4c05-b2e3-d519ac3feab4 -Role Contributor
New-AzADServicePrincipal -ApplicationId 6da94f3c-0d67-4092-a408-bb5d1cb08d2d -Role Contributor
New-AzADServicePrincipal -ApplicationId ca7f3f0b-7d91-482c-8e09-c5d840d0eac5 -Role Contributor

Beleidsregels implementeren die gegevens vastleggen

Zodra u uw Log Analytics-werkruimten hebt gemaakt, kunt u Azure Policy implementeren in uw klanthiërarchieën, zodat diagnostische gegevens naar de juiste werkruimte in elke tenant worden verzonden. Het exacte beleid dat u implementeert, kan variëren, afhankelijk van de resourcetypen die u wilt bewaken.

Zie Zelfstudie: Beleid maken en beheren om naleving af te dwingen voor meer informatie over het maken van beleidsregels. Dit communityhulpprogramma biedt een script waarmee u beleidsregels kunt maken voor het bewaken van de specifieke resourcetypen die u kiest.

Wanneer u hebt bepaald welk beleid u wilt implementeren, kunt u dit op schaal implementeren in uw gedelegeerde abonnementen.

De verzamelde gegevens analyseren

Nadat u uw beleid hebt geïmplementeerd, worden gegevens geregistreerd in de Log Analytics-werkruimten die u in elke tenant van de klant hebt gemaakt. Als u inzicht wilt krijgen in alle beheerde klanten, kunt u hulpprogramma's zoals Azure Monitor Workbooks gebruiken om informatie uit meerdere gegevensbronnen te verzamelen en te analyseren.

Query's uitvoeren op gegevens in werkruimten van klanten

U kunt logboekquery's uitvoeren om gegevens op te halen in Log Analytics-werkruimten in verschillende tenants van klanten door een samenvoeging te maken die meerdere werkruimten bevat. Door de kolom TenantID op te geven, kunt u zien welke resultaten bij welke tenants horen.

Met de volgende voorbeeldquery wordt een samenvoeging gemaakt in de tabel AzureDiagnostics in werkruimten in twee afzonderlijke tenants van klanten. In de resultaten worden de kolommen Category, ResourceGroup en TenantID weergegeven.

union AzureDiagnostics,
workspace("WS-customer-tenant-1").AzureDiagnostics,
workspace("WS-customer-tenant-2").AzureDiagnostics
| project Category, ResourceGroup, TenantId

Zie Een logboekquery maken in meerdere werkruimten en apps in Azure Monitor voor meer voorbeelden van query's in meerdere Log Analytics-werkruimten.

Belangrijk

Als u een Automation-account gebruikt om gegevens uit een Log Analytics-werkruimte op te vragen, moet dat Automation-account worden gemaakt in dezelfde tenant als de werkruimte.

Waarschuwingen voor klanten weergeven

U kunt waarschuwingen voor gedelegeerde abonnementen weergeven in de tenants van de klant die u beheert.

Vanuit uw beherende tenant kunt u waarschuwingen voor activiteitenlogboeken maken, weergeven en beheren in de Azure Portal of via API's en beheerhulpprogramma's.

Als u waarschuwingen automatisch wilt vernieuwen voor meerdere klanten, gebruikt u een Azure Resource Graph-query om te filteren op waarschuwingen. U kunt de query vastmaken aan uw dashboard en alle juiste klanten en abonnementen selecteren. In de onderstaande query worden bijvoorbeeld waarschuwingen voor ernst 0 en 1 weergegeven, die elke 60 minuten worden vernieuwd.

alertsmanagementresources
| where type == "microsoft.alertsmanagement/alerts"
| where properties.essentials.severity =~ "Sev0" or properties.essentials.severity =~ "Sev1"
| where properties.essentials.monitorCondition == "Fired"
| where properties.essentials.startDateTime > ago(60m)
| project StartTime=properties.essentials.startDateTime,name,Description=properties.essentials.description, Severity=properties.essentials.severity, subscriptionId
| sort by tostring(StartTime)

Volgende stappen