設計 Log Analytics 工作區架構
單一 Log Analytics 工作區 對於許多使用 Azure 監視器和 Microsoft Sentinel 的環境可能便已足夠。 但許多組織會建立多個工作區,以將成本最佳化,並更符合商務需求。 本文提供一組準則,用以判斷要使用單一工作區還是多個工作區。 文中也會討論這些工作區的設定和放置,以符合您的需求,同時將成本最佳化。
注意
本文討論 Azure 監視器和 Microsoft Sentinel,因為許多客戶都必須在其設計中考慮這兩者。 大多數決策準則適用於這兩項服務。 如果您僅使用其中一項服務,則可以在評估中忽略另一項服務。
這段影片會說明 Azure 監視器記錄的基本概念與最佳做法,以及適用於設計 Azure 監視器記錄部署的設計考量:
設計策略
您的設計應該一律從單一工作區開始,以降低管理多個工作區及從中查詢資料的複雜性。 您工作區中的資料量不會造成效能限制。 多個服務和資料來源可以將資料傳送至相同的工作區。 當您識別建立更多工作區的準則時,您的設計應該使用最少工作區數目以符合您的需求。
設計工作區設定包括評估多個準則。 但其中一些準則可能會發生衝突。 例如,您可以在每個 Azure 區域中建立個別的工作區,藉此減少輸出費用。 合併到單一工作區可讓您使用定額層來減少更多費用。 獨立評估每個準則。 請考慮您的需求和優先順序,以判斷哪個設計對您的環境最有效。
設計準則
下表提供設計工作區架構時要考慮的準則。 下列各節將描述這些準則。
準則 | 描述 |
---|---|
操作和安全性資料 | 您可以選擇將 Azure 監視器的操作資料合併在 Microsoft Sentinel 安全性資料所在的相同工作區中,或將資料各別放到自己的工作區。 合併這些資料可讓您更清楚了解所有資料,但您的安全性標準可能需要將其分開,讓您的安全性小組有專用的工作區。 可能也會對每個策略產生成本影響。 |
Azure 租用戶 | 如果您有多個 Azure 租用戶,您通常會在每個租用戶中建立工作區。 數個資料來源只能將監視資料傳送至相同 Azure 租用戶中的工作區。 |
Azure 區域 | 每個工作區都位於特定 Azure 區域中。 您可能有將資料儲存在特定位置的法規或合規性需求。 |
資料擁有權 | 您可以選擇建立個別的工作區來定義資料擁有權。 例如,您可以依子公司或附屬公司建立工作區。 |
分開計費 | 將工作區放在個別的訂用帳戶中,即可將帳單寄給不同的當事人。 |
資料保留 | 您可以為每個工作區和工作區中的每個資料表設定不同的保留設定。 如果傳送資料至相同資料表的不同資源需要不同的保留設定,則需要個別的工作區。 |
定額層 | 承諾用量層可讓您在單一工作區中認可最少的每日資料量,藉此減少擷取成本。 |
舊版代理程式限制 | 舊版虛擬機器代理程式對其可連線的工作區數目有所限制。 |
資料存取控制 | 設定工作區的存取權,以及從不同資源對不同資料表和資料的存取權。 |
恢復功能 | 為了確保工作區中的資料在發生區域失敗時可供使用,您可以將資料擷取到不同區域中的多個工作區。 |
操作和安全性資料
要將 Azure 監視器的操作資料合併在 Microsoft Sentinel 安全性資料所在的相同工作區中,還是將資料個別放到自己的工作區,取決於您的安全性需求,以及您環境的潛在成本影響。
專用工作區 建立 Azure 監視器和 Microsoft Sentinel 的專用工作區,可讓您在操作與安全性小組之間區隔資料的擁有權。 此做法可能也有助於最佳化成本,因為在工作區中啟用 Microsoft Sentinel,則該工作區中的所有資料都適用 Microsoft Sentinel 定價,即使其為 Azure 監視器所收集的營運資料也一樣。
使用 Microsoft Sentinel 的工作區可免費保留資料三個月,而不是 31 天。 此案例通常會導致未使用 Microsoft Sentinel 的工作區有更高的營運資料成本。 請參閱 Azure 監視器記錄定價詳細資料。
合併工作區 將來自 Azure 監視器和 Microsoft Sentinel 的資料合併在相同工作區中,可讓您更清楚地了解所有資料,讓您可輕鬆地在查詢和活頁簿中結合資料。 如果安全性資料的存取應受限於特定小組,您可以使用資料表層級 RBAC 來防止特定使用者存取具有安全性資料的資料表,或使用資源內容來限制使用者存取工作區。
如果此設定可協助您達到提供擷取費用折扣的定額層,則可能會為您節省成本。 例如,假設組織每天擷取大約 50 GB 的營運資料和安全性資料。 將資料合併到相同的工作區允許每日 100 GB 的定額層。 該案例會提供 15% 的 Azure 監視器折扣,以及 50% 的 Microsoft Sentinel 折扣。
如果您為其他準則建立個別的工作區,則通常會建立更多工作區配對。 例如,如果您有兩個 Azure 租用戶,則可以建立四個工作區,每個租用戶各有一個營運工作區和一個安全性工作區。
- 如果您同時使用 Azure 監視器和 Microsoft Sentinel:請考慮根據安全性小組的需求或可否節省成本的結果,將資料放在各別的專用工作區。 如果合併這兩項資料能更清楚地了解合併的監視資料,或可協助您達到定額層,則請考慮此選擇。
- 如果您同時使用 Microsoft Sentinel 和適用於雲端的 Microsoft Defender:請考慮針對這兩個解決方案使用相同的工作區,將安全性資料保留在同一個地方。
Azure 租用戶
大部分的資源只能將監視資料傳送至相同 Azure 租用戶中的工作區。 使用 Azure 監視器代理程式或 Log Analytics 代理程式的虛擬機器可以將資料傳送至個別 Azure 租用戶中的工作區。 您可以將此案例視為服務提供者。
- 如果您有單一 Azure 租用戶:請為該租用戶建立單一工作區。
- 如果您有多個 Azure 租用戶:,請為每個租用戶建立工作區。 如需其他選項 (包括服務提供者的策略),請參閱多個租用戶策略。
Azure 區域
每個 Log Analytics 工作區都位於特定 Azure 區域中。 您可能有將資料保留在特定區域的法規或合規性用途。 例如,國際公司可能會在每個主要地理區域 (例如美國和歐洲) 放置一個工作區。
- 如果您有將資料保留在特定地理位置的需求:請針對具有這類需求的每個區域建立個別的工作區。
- 如果您沒有將資料保留在特定地理位置的需求:請針對所有區域使用單一工作區。
- 如果您要將資料傳送到工作區區域以外的不同地理位置或區域,無論傳送的資源是否位於 Azure 中:請考慮使用和資料相同地理位置或區域中的工作區。
另請考慮當您將資料從另一個區域中的資源傳送至工作區時,可能適用的潛在頻寬費用。 對於大多數客戶而言,這些費用通常與資料擷取成本不太相關。 這些費用通常是由於將資料從虛擬機器傳送至工作區所產生。 使用診斷設定監視來自其他 Azure 資源的資料不會產生輸出費用。
請使用 Azure 定價計算機來預估成本,並判斷您需要的區域。 如果頻寬費用很龐大,請考慮多個區域中的工作區。
- 如果頻寬費用夠龐大,足以證明額外的複雜性:請為每個具有虛擬機器的區域建立個別的工作區。
- 如果頻寬費用不夠龐大,不足以證明額外的複雜性:請針對所有區域使用單一工作區。
資料擁有權
您可能需要隔離資料,或根據擁有權定義界限。 例如,您可能有不同的子公司或附屬公司而需要界定其監視資料。
- 如果您需要資料隔離:請針對每個資料擁有者使用個別的工作區。
- 如果您不需要資料隔離:請針對所有資料擁有者使用單一工作區。
分割帳單
您可能需要分割不同合作對象之間的計費,或是對客戶或內部業務單位執行退款。 您可以使用 Azure 成本管理 + 計費,依工作區檢視費用。 您也可以使用記錄查詢來檢視 Azure 資源、資源群組或訂閱的可計費資料量。 這種方法對於您的計費需求可能便已足夠。
- 如果您不需要分割計費或執行退款:請針對所有成本擁有者使用單一工作區。
- 如果您需要分割計費或執行退款:請考慮 Azure 成本管理 + 計費或記錄查詢是否針對您的需求提供夠細微的成本報告。 如果沒有,請針對每個成本擁有者使用不同的工作區。
資料保留
您可以設定工作區的預設資料保留設定,或針對每個資料表進行不同的設定。 針對特定資料表中的不同資料集,您可能需要不同的設定。 如果是這種情況,則您必須將該資料分隔成不同的工作區,每個工作區都有唯一的保留設定。
- 如果您可以針對每個資料表中的所有資料使用相同的保留設定:請針對所有資源使用單一工作區。
- 如果您針對相同資料表中的不同資源要求不同的保留設定:請針對不同的資源使用個別的工作區。
承諾用量層
當您每日有特定的資料承諾用量時,定額層會為您的工作區擷取成本提供折扣。 您可以選擇將資料合併到單一工作區,以達到特定層的資料量。 除非您有專用叢集,否則分散於多個工作區的相同資料量並不符合相同層的資格。
如果您可以承諾每日擷取至少 100 GB,則您應該實作專用叢集,以提供額外的功能和效能。 專用叢集也可讓您將叢集中多個工作區的資料進行結合,以達到承諾用量層的層級。
- 如果您要跨所有資源每日擷取至少 100 GB:請建立專用叢集並設定適當的定額層。
- 如果您要跨資源每日擷取至少 100 GB:請考慮將其合併成單一工作區,以利用定額層。
舊版代理程式限制
您應該避免因為額外費用而將重複的資料傳送至多個工作區,但您可能已將虛擬機器連線到多個工作區。 最常見的案例是連線到 Azure 監視器和 Microsoft Sentinel 個別工作區的代理程式。
Azure 監視器代理程式和適用於 Windows 的 Log Analytics 代理程式可以連線到多個工作區。 適用於 Linux 的 Log Analytics 代理程式只能連線到單一工作區。
- 如果您使用適用於 Linux 的 Log Analytics 代理程式:請移轉至 Azure 監視器代理程式,或確保您的 Linux 電腦只需要存取單一工作區。
資料存取控制
當您將工作區的存取權授與使用者時,使用者就可以存取該工作區中的所有資料。 此存取權適用於必須存取所有資源資料的管理中心或安全性小組成員。 工作區的存取權也取決於資源內容角色型存取控制 (RBAC) 和資料表層級 RBAC。
資源內容 RBAC:根據預設,如果使用者具有 Azure 資源的讀取權限,他們就會繼承傳送至工作區之任何該資源監視資料的權限。 此存取層級可讓使用者存取其所管理資源的相關資訊,而不需要獲授工作區的明確存取權。 如果您需要封鎖此存取,可以將存取控制模式變更為需要明確的工作區權限。
- 如果您要讓使用者能夠存取其資源的資料:請保留使用資源或工作區權限的預設存取控制模式。
- 如果您要為所有使用者明確指派權限:請將存取控制模式變更為 [需要工作區權限]。
資料表層級 RBAC:您可以使用資料表層級 RBAC,授與或拒絕工作區中特定資料表的存取權。 如此一來,您就可以實作環境中特定情況所需的細微權限。
例如,您可以將 Microsoft Sentinel 所收集的特定資料表存取權授與內部稽核小組。 或者,您可以拒絕需要與其資源相關營運資料的資源擁有者存取安全性相關資料表。
- 如果您不需要依資料表進行細微的存取控制:請授權營運和安全性小組存取其資源,並允許資源擁有者針對其資源使用資源內容 RBAC。
- 如果您需要依資料表進行細微的存取控制:請使用資料表層級 RBAC 來授與或拒絕特定資料表的存取權。
如需詳細資訊,請參閱利用資源管理 Microsoft Sentinel 資料的存取權。
復原能力
為了確保工作區中的特定資料在發生區域失敗時可供使用,您可以將部分獲所有資料擷取到不同區域中的多個工作區。
此選項需要針對每個工作區分別管理其他服務和產品的整合。 即使發生失敗時,資料可在替代工作區中使用,但依賴資料的資源 (例如警示和活頁簿) 並不會知道要切換至替代工作區。 請考慮儲存重要資源的 ARM 範本,並在 Azure DevOps 中設定替代工作區,或儲存為在容錯移轉時可快速啟用的已停用原則。
使用多個工作區
許多設計包括多個工作區。 例如,中央安全性作業小組可能會使用自己的 Microsoft Sentinel 工作區來管理集中式成品,例如分析規則或活頁簿。
Azure 監視器和 Microsoft Sentinel 都包括多項功能,可協助您跨工作區分析此資料。 如需詳細資訊,請參閱
為每個工作區命名時,建議您在名稱中包括有意義的指標,以便輕鬆地識別每個工作區的用途。
多個租用戶策略
具有多個 Azure 租用戶的環境 (包括 Microsoft 服務提供者 (MSP)、獨立軟體廠商 (ISV) 及大型企業),通常需要管理中心小組能夠存取其他租用戶中工作區的策略。 每個租用戶可能代表個別的客戶或不同的業務單位。
注意
對於身為雲端解決方案提供者 (CSP) 方案成員的合作夥伴和服務提供者而言,Azure 監視器中的 Log Analytics 是 Azure CSP 訂用帳戶中,其中一個可用的 Azure 服務。
下列各節將描述此功能的兩個基本策略。
分散式結構
在分散式架構中,系統會在每個 Azure 租用戶中建立 Log Analytics 工作區。 此選項是監視虛擬機器以外的 Azure 服務時,唯一可供您使用的選項。
有兩個選項可讓服務提供者系統管理員存取客戶租用戶中的工作區:
- 使用 Azure Lighthouse 來存取每個客戶租用戶。 服務提供者管理員會包含在服務提供者租用戶的 Microsoft Entra 使用者群組中。 此群組會在每個客戶的上線過程中獲授存取權。 這些系統管理員可接著從自身的服務提供者租用戶中,存取每個客戶的工作區,而無須個別登入每個客戶的租用戶。 如需詳細資訊,請參閱大規模監視客戶資源。
- 從服務提供者中新增個別使用者,以作為 Microsoft Entra 來賓使用者 (B2B)。 客戶租用戶系統管理員會管理每個服務提供者系統管理員的個別存取權。 服務提供者系統管理員必須在 Azure 入口網站中登入每個租用戶的目錄,才能存取這些工作區。
此策略的優點如下:
- 可以從所有類型的資源來收集記錄。
- 客戶可以使用 Azure 委派的資源管理來確認特定權限等級。 或者,客戶可以使用自己的 Azure RBAC 來管理記錄存取權。
- 每個客戶對於其工作區都可以有不同的設定,例如保留和資料上限。
- 基於法規與合規性而隔離客戶。
- 每個工作區的費用會包含在客戶訂閱的帳單中。
此策略的缺點如下:
- 使用 Azure 監視器活頁簿等工具來集中視覺化和分析客戶租用戶間的資料,可能會產生較慢的體驗。 在分析超過 50 個工作區之間的資料時,此情況格外明顯。
- 如果客戶未上線進行 Azure 委派的資源管理,則必須在客戶目錄中佈建服務提供者系統管理員。 此需求會使服務提供者較難以同時管理許多客戶租用戶。
集中式
會在服務提供者的訂用帳戶中建立單一工作區。 此選項只能從客戶虛擬機器收集資料。 安裝在虛擬機器上的代理程式會設定為將其記錄傳送到此中央工作區。
此策略的優點如下:
- 管理許多客戶很容易。
- 服務提供者對於記錄和各種成品 (例如函式和儲存的查詢) 都具備完整的擁有權。
- 服務提供者可以跨其所有客戶執行分析。
此策略的缺點如下:
- 只能從具有代理程式的虛擬機器收集記錄。 不適用於 PaaS、SaaS 或 Azure Service Fabric 資料來源。
- 由於客戶的資料會共用單一工作區,因此很難在客戶之間分隔資料。 查詢必須使用電腦的完整網域名稱或 Azure 訂閱識別碼。
- 來自所有客戶的所有資料都會儲存在相同區域中,帳單只有一份,而且有相同的保留和組態設定。
混合式
在混合式模型中,每個租用戶都有自己的工作區, 並使用一項機制,將資料提取到中央位置以供報告和分析之用。 此資料可能包含少量的資料類型或活動摘要 (例如每日統計資料)。
下列兩個選項可讓您在集中位置內實作記錄:
- 集中式工作區:服務提供者會在其租用戶中建立工作區,並使用運用查詢 API 搭配記錄擷取 API 的指令碼,將租用戶工作區的資料帶到這個中央位置。 另一個選項是使用 Azure Logic Apps 將資料複製到中央工作區。
- Power BI:租用戶工作區會利用 Log Analytics 工作區與 Power BI 之間的整合,將資料匯出至 Power BI。
下一步
- 深入了解如何在工作區中設計及設定資料存取。
- 取得 Microsoft Sentinel 的範例工作區架構。
- 以下是為 Log Analytics 工作區設計適當結構的影片:ITOps Talk:Log Analytics工作區設計的深入探討