Überwachen von delegierten Ressourcen in beliebigem Umfang

Als Dienstanbieter haben Sie möglicherweise mehrere Kundenmandanten in Azure Lighthouse integriert. Azure Lighthouse ermöglicht Dienstanbietern das gleichzeitige Ausführen von skalierbaren Vorgängen für mehrere Mandanten, wodurch Verwaltungsaufgaben effizienter werden.

In diesem Thema erfahren Sie, wie Sie Azure Monitor-Protokolle für alle von Ihnen verwalteten Mandanten auf skalierbare Weise verwenden. Zwar beziehen wir uns in diesem Thema auf Dienstanbieter und Kunden, doch gelten diese Anweisungen auch für Unternehmen, die Azure Lighthouse zum Verwalten mehrerer Mandanten verwenden.

Hinweis

Sorgen Sie dafür, dass Benutzern in Ihren Verwaltungsmandanten die erforderlichen Rollen für die Verwaltung von Log Analytics-Arbeitsbereichen für Ihre delegierten Kundenabonnements zugeteilt wurden.

Erstellen von Log Analytics-Arbeitsbereichen

Um Daten zu sammeln, müssen Sie Log Analytics-Arbeitsbereiche erstellen. Diese Log Analytics-Arbeitsbereiche sind einzigartige Umgebungen für Daten, die von Azure Monitor gesammelt werden. Jeder Arbeitsbereich verfügt über ein eigenes Datenrepository und eine eigene Konfiguration. Datenquellen und Lösungen sind so konfiguriert, dass die zugehörigen Daten in einem bestimmten Arbeitsbereich gespeichert werden.

Es wird empfohlen, diese Arbeitsbereiche direkt in den Kundenmandanten zu erstellen. Auf diese Weise verbleiben die Daten in den Mandanten und werden nicht in Ihren Mandanten exportiert. Das Erstellen von Arbeitsbereichen in Kundenmandanten ermöglicht auch eine zentrale Überwachung aller Ressourcen und Dienste, die von Log Analytics unterstützt werden, sodass Sie flexibler auswählen können, welche Datentypen Sie überwachen möchten. Arbeitsbereiche sind in Kundenmandanten erforderlich, um Informationen gemäß den Diagnoseeinstellungen zu sammeln.

Tipp

Alle Automation-Konten, die für den Zugriff auf Daten aus einem Log Analytics-Arbeitsbereich verwendet werden, müssen im gleichen Mandanten wie der Arbeitsbereich erstellt werden.

Sie können einen Log Analytics-Arbeitsbereich im Azure-Portal, mithilfe von Azure Resource Manager-Vorlagen oder mit Azure PowerShell erstellen.

Wichtig

Wenn alle Arbeitsbereiche in den Mandanten von Kunden erstellt werden, müssen die Microsoft.Insights-Ressourcenanbieter auch für ein Abonnement im Verwaltungsmandanten registriert werden. Wenn Ihr Verwaltungsmandant nicht über ein vorhandenes Azure-Abonnement verfügt, können Sie den Ressourcenanbieter manuell registrieren, indem Sie die folgenden PowerShell-Befehle verwenden:

$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

Bereitstellen von Richtlinien zum Protokollieren von Daten

Sobald Sie Ihre Log Analytics-Arbeitsbereiche erstellt haben können Sie Azure Policy über alle Kundenhierarchien hinweg bereitstellen, sodass Diagnosedaten an den entsprechenden Arbeitsbereich in jedem Mandanten gesendet werden. Welche Richtlinien Sie genau bereitstellen, hängt von den Ressourcentypen ab, die Sie überwachen möchten.

Weitere Informationen zum Erstellen von Richtlinien finden Sie im Tutorial: Erstellen und Verwalten von Richtlinien zur Konformitätserzwingung. Dieses Communitytool stellt ein Skript bereit, das Sie beim Erstellen von Richtlinien zum Überwachen der von Ihnen ausgewählten spezifischen Ressourcentypen unterstützt.

Wenn Sie festgelegt haben, welche Richtlinien Sie bereitstellen möchten, können Sie diese in großem Stil für Ihre delegierten Abonnements bereitstellen.

Analysieren der gesammelten Daten

Nachdem Sie Ihre Richtlinien bereitgestellt haben, werden Daten in die Log Analytics-Arbeitsbereiche protokolliert, die Sie in den jeweiligen Kundenmandanten erstellt haben. Um Einblicke in alle verwalteten Kunden zu erhalten, können Sie mithilfe von Tools wie Azure Monitor-Arbeitsmappen Informationen aus mehreren Datenquellen erfassen und analysieren.

Abfragen von Daten in mehreren Benutzerarbeitsbereichen

Sie können Protokollabfragen ausführen, um Daten in Log Analytics-Arbeitsbereichen in verschiedenen Mandanten von Kunden abzurufen, indem Sie eine Union erstellen, die mehrere Arbeitsbereiche umfasst. Wenn Sie die TenantID-Spalte einschließen, sehen Sie, welche Ergebnisse zu welchen Mandanten gehören.

Mit der folgenden Beispielabfrage wird arbeitsbereichsübergreifend eine Union für die AzureDiagnostics-Tabelle in zwei separaten Mandanten von Kunden erstellt. In den Ergebnissen werden die Spalten „Category“, „ResourceGroup“ und „TenantID“ angezeigt.

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

Weitere Beispiele für Abfragen über mehrere Log Analytics-Arbeitsbereiche hinweg finden Sie unter Erstellen einer Protokollabfrage über mehrere Arbeitsbereiche und Apps in Azure Monitor.

Wichtig

Wenn Sie ein Automationskonto verwenden, das zum Abfragen von Daten aus einem Log Analytics-Arbeitsbereich genutzt wird, muss dieses Automationskonto im gleichen Mandanten erstellt werden wie der Arbeitsbereich.

Anzeigen von Warnungen für mehrere Kunden

Sie können Warnungen für delegierte Abonnements in den von Ihnen verwalteten Kundenmandanten anzeigen.

Von Ihrem verwaltenden Mandanten aus können Sie Aktivitätsprotokollwarnungen im Azure-Portal oder über APIs und Verwaltungstools erstellen, anzeigen und verwalten.

Filtern Sie die Warnungen mit einer Azure Resource Graph-Abfrage, um die Warnungen für mehrere Kunden zu aktualisieren. Sie können die Abfrage an Ihr Dashboard anheften und alle zugehörigen Kunden und Abonnements auswählen. Mit der folgenden Abfrage werden z. B. Warnungen mit den Schweregraden 0 und 1 angezeigt, die alle 60 Minuten aktualisiert werden.

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)

Nächste Schritte