Monitorování delegovaných prostředků ve velkém měřítku

Jako poskytovatel služeb jste možná do služby Azure Lighthouse onboardovali několik tenantů zákazníků. Azure Lighthouse umožňuje poskytovatelům služeb provádět operace ve velkém měřítku napříč několika tenanty najednou, což zefektivňuje úlohy správy.

V tomto tématu se dozvíte, jak škálovatelným způsobem používat protokoly služby Azure Monitor napříč tenanty zákazníků, které spravujete. I když v tomto tématu odkazujeme na poskytovatele služeb a zákazníky, platí tyto pokyny také pro podniky, které ke správě více tenantů používají Azure Lighthouse.

Poznámka

Ujistěte se, že uživatelé ve vašich spravovaných tenantech mají udělené role potřebné ke správě pracovních prostorů služby Log Analytics ve vašich delegovaných zákaznických předplatných.

Vytváření pracovních prostorů služby Log Analytics

Abyste mohli shromažďovat data, budete muset vytvořit pracovní prostory služby Log Analytics. Tyto pracovní prostory služby Log Analytics představují jedinečná prostředí pro data shromažďovaná službou Azure Monitor. Každý pracovní prostor má své vlastní úložiště a konfiguraci dat a zdroje dat a řešení jsou nakonfigurovány tak, aby ukládaly data do konkrétního pracovního prostoru.

Tyto pracovní prostory doporučujeme vytvořit přímo v tenantech zákazníka. Díky tomu zůstanou jejich data v tenantech a neexportují se do vašeho. Vytváření pracovních prostorů v tenantech zákazníků umožňuje centralizované monitorování všech prostředků nebo služeb podporovaných službou Log Analytics a poskytuje větší flexibilitu v tom, jaké typy dat monitorujete. Pracovní prostory vytvořené v tenantech zákazníka se vyžadují ke shromažďování informací z nastavení diagnostiky.

Tip

Každý účet Automation používaný pro přístup k datům z pracovního prostoru služby Log Analytics musí být vytvořený ve stejném tenantovi jako pracovní prostor.

Pracovní prostor služby Log Analytics můžete vytvořit pomocí Azure Portal, šablon Azure Resource Manager nebo pomocí Azure PowerShell.

Důležité

Pokud jsou všechny pracovní prostory vytvořené v tenantech zákazníka, poskytovatelé prostředků Microsoft.Insights musí být také zaregistrovaní v předplatném ve spravovaném tenantovi. Pokud váš tenant pro správu nemá existující předplatné Azure, můžete poskytovatele prostředků zaregistrovat ručně pomocí následujících příkazů PowerShellu:

$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

Nasazení zásad, které protokoluje data

Po vytvoření pracovních prostorů služby Log Analytics můžete nasadit Azure Policy napříč hierarchiemi zákazníků, aby se diagnostická data odesílala do příslušného pracovního prostoru v každém tenantovi. Přesné zásady, které nasadíte, se můžou lišit v závislosti na typech prostředků, které chcete monitorovat.

Další informace o vytváření zásad najdete v tématu Kurz: Vytváření a správa zásad k vynucování dodržování předpisů. Tento nástroj komunity poskytuje skript, který vám pomůže vytvořit zásady pro monitorování konkrétních typů prostředků, které zvolíte.

Když určíte, které zásady se mají nasadit, můžete je nasadit do delegovaných předplatných ve velkém měřítku.

Analýza shromážděných dat

Po nasazení zásad se data budou protokolovat v pracovních prostorech služby Log Analytics, které jste vytvořili v každém tenantovi zákazníka. Pokud chcete získat přehled o všech spravovaných zákaznících, můžete pomocí nástrojů, jako jsou sešity služby Azure Monitor , shromažďovat a analyzovat informace z více zdrojů dat.

Dotazování dat napříč pracovními prostory zákazníka

Vytvořením sjednocení, které zahrnuje více pracovních prostorů, můžete spouštět dotazy na protokoly a načítat data z pracovních prostorů služby Log Analytics v různých tenantech zákazníků. Zahrnutím sloupce TenantID uvidíte, které výsledky patří ke kterým tenantům.

Následující ukázkový dotaz vytvoří sjednocení tabulky AzureDiagnostics napříč pracovními prostory ve dvou samostatných tenantech zákazníka. Ve výsledcích se zobrazí sloupce Category (Kategorie), ResourceGroup (Skupina prostředků) a TenantID (ID tenanta).

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

Další příklady dotazů napříč několika pracovními prostory služby Log Analytics najdete v tématu Vytvoření dotazu protokolu napříč několika pracovními prostory a aplikacemi ve službě Azure Monitor.

Důležité

Pokud používáte účet Automation používaný k dotazování dat z pracovního prostoru služby Log Analytics, musí se tento účet Automation vytvořit ve stejném tenantovi jako pracovní prostor.

Zobrazení upozornění napříč zákazníky

Výstrahy pro delegovaná předplatná můžete zobrazit v tenantech zákazníků, které spravujete.

Ze svého spravovaného tenanta můžete vytvářet, zobrazovat a spravovat upozornění protokolu aktivit v Azure Portal nebo prostřednictvím rozhraní API a nástrojů pro správu.

Pokud chcete automaticky aktualizovat upozornění u více zákazníků, vyfiltrujte upozornění pomocí dotazu Azure Resource Graph. Dotaz můžete připnout na řídicí panel a vybrat všechny příslušné zákazníky a předplatná. Například následující dotaz zobrazí upozornění závažnosti 0 a 1, která se aktualizují každých 60 minut.

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)

Další kroky