共用方式為


使用容器深入解析收集 Syslog

容器深入解析提供從 Azure Kubernetes Service (AKS) 叢集中的 Linux 節點收集 Syslog 事件的功能。 這包括從控制平面元件 (例如 kubelet) 收集記錄的功能。 客戶也可以使用 Syslog 來監視安全性和健康情況事件,通常是將 syslog 內嵌至 Microsoft Sentinel 等 SIEM 系統中。

必要條件

如何啟用 Syslog

從 Azure 入口網站

瀏覽至您的叢集。 開啟叢集的 [深入解析] 索引標籤。 開啟 [監視器設定] 面板。 按一下 [編輯收集設定],然後核取 [啟用 Syslog 收集] 核取方塊

Screen recording of syslog being enabled from the Azure portal through the Monitor Settings panel in Container Insights.

使用 Azure CLI 命令

建立新的 AKS 叢集時,在 Azure CLI 中使用下列命令啟用 syslog 收集。

az aks create -g syslog-rg -n new-cluster --enable-managed-identity --node-count 1 --enable-addons monitoring --enable-msi-auth-for-monitoring --enable-syslog --generate-ssh-key

在 Azure CLI 中使用下列命令,在現有的 AKS 叢集上啟用 syslog 收集。

az aks enable-addons -a monitoring --enable-msi-auth-for-monitoring --enable-syslog -g syslog-rg -n existing-cluster

使用 ARM 範本

還可以使用 ARM 範本來啟用 syslog 收集

  1. GitHub 內容檔案中下載範本,並將其儲存為 existingClusterOnboarding.json

  2. GitHub 內容檔案中下載參數檔案,並將其儲存為 existingClusterParam.json

  3. 編輯參數檔案中的值:

    • aksResourceId:針對 AKS 叢集,使用 [AKS Overview] \(AKS 概觀\) 頁面中的值。
    • aksResourceLocation:針對 AKS 叢集,使用 [AKS Overview] \(AKS 概觀\) 頁面中的值。
    • workspaceResourceId:使用 Log Analytics 工作區的資源識別碼。
    • resourceTagValues:比對為叢集與 DCR 名稱其現有 Container insights 延伸模組資料收集規則 (DCR) 所指定的現有標記值。 該名稱將會是 MSCI-<clusterName>-<clusterRegion>,而且此資源會在 AKS 叢集資源群組中建立。 若這是第一次上線,則您可以設定任意標記值。
    • enableSyslog:設定為 true
    • syslogLevels:由要收集的 syslog 層級組成的陣列。 預設收集所有層級。
    • syslogFacilities:由要收集的 syslog 設施組成的陣列。 預設收集所有設施

注意

Syslog 層級和設施自訂目前只透過 ARM 範本提供。

部署範本

使用任何有效的方法來部署 Resource Manager 範本,以參數檔案部署範本。 如需不同方法的範例,請參閱部署樣本範本

使用 Azure PowerShell 部署

New-AzResourceGroupDeployment -Name OnboardCluster -ResourceGroupName <ResourceGroupName> -TemplateFile .\existingClusterOnboarding.json -TemplateParameterFile .\existingClusterParam.json

可能需要幾分鐘的時間才能完成設定變更。 完成時,類似下列範例的訊息會包含以下結果:

provisioningState       : Succeeded

使用 Azure CLI 進行部署

az login
az account set --subscription "Subscription Name"
az deployment group create --resource-group <ResourceGroupName> --template-file ./existingClusterOnboarding.json --parameters @./existingClusterParam.json

可能需要幾分鐘的時間才能完成設定變更。 完成時,類似下列範例的訊息會包含以下結果:

provisioningState       : Succeeded

如何存取 Syslog 資料

使用內建活頁簿進行存取

若要快速取得 syslog 資料的快照集,客戶可以使用內建 Syslog 活頁簿。 可透過兩種方式存取內建活頁簿。

選項 1 - 容器深入解析中的 [報表] 索引標籤。 瀏覽至您的叢集。 開啟叢集的 [深入解析] 索引標籤。 開啟 [報表] 索引標籤,然後尋找 Syslog 活頁簿。

Video of Syslog workbook being accessed from Container Insights Reports tab.

選項 2 - AKS [瀏覽至您的叢集] 中的 [活頁簿] 索引標籤。 開啟叢集的 [活頁簿] 索引標籤,並尋找 Syslog 活頁簿。

Video of Syslog workbook being accessed from cluster workbooks tab.

使用 Grafana 儀表板進行存取

客戶可以使用適用於 Grafana 的 Syslog 儀表板來取得其 Syslog 資料的概觀。 對於建立新的 Azure 受控 Grafana 執行個體的客戶,預設可使用此儀表板。 具有現有執行個體或執行自己執行個體的客戶可以從 Grafana 市集匯入 Syslog 儀表板

注意

您需要對包含 Azure 受控 Grafana 執行個體的訂用帳戶具有「監視讀取器」角色,才能從容器深入解析存取 syslog。

Screenshot of Syslog Grafana dashboard.

使用記錄查詢進行存取

Syslog 資料會儲存在 Log Analytics 工作區上的 Syslog 資料表中。 可以在 Log Analytics 中建立自己的記錄查詢,以分析此資料或使用任何預先建置的查詢

Screenshot of Syslog query loaded in the query editor in the Azure Monitor Portal UI.

您可以透過 [監視器] 功能表中的 [記錄] 功能表開啟 Log Analytics,以存取所有叢集的 Syslog 資料,或從 AKS 叢集的功能表存取該叢集的 Syslog 資料。

Screenshot of Query editor with Syslog query.

範例查詢

下表提供擷取 Syslog 記錄的不同記錄查詢範例。

查詢 描述
Syslog 所有 Syslog
Syslog | where SeverityLevel == "error" 所有具有錯誤嚴重性的 Syslog 記錄
Syslog | summarize AggregatedValue = count() by Computer 依電腦分類的 Syslog 記錄數
Syslog | summarize AggregatedValue = count() by Facility 按設施分類的 Syslog 記錄數
Syslog | where ProcessName == "kubelet" 來自 kubelet 流程的所有 Syslog 記錄
Syslog | where ProcessName == "kubelet" and SeverityLevel == "error" 來自 kubelet 流程的 Syslog 記錄及錯誤

編輯 Syslog 收集設定

若要修改 Syslog 收集的設定,請修改啟用時建立的資料收集規則 (DCR)

從 Azure 入口網站的 [監視器] 功能表中,選取 [資料收集規則]

Screenshot of Data Collection Rules tab in the Azure Monitor portal UI.

選取 DCR,然後選擇 [檢視資料來源]。 選取 Linux Syslog 資料來源,以檢視 Syslog 收集詳細資料。

注意

啟用 syslog 時,會自動建立 DCR。 DCR 遵循命名慣例 MSCI-<WorkspaceRegion>-<ClusterName>

Screenshot of Data Sources tab for Syslog data collection rule.

針對要收集的每個設施,選取最小記錄層級。

Screenshot of Configuration panel for Syslog data collection rule.

下一步

設定之後,客戶可以開始將 Syslog 資料傳送至所選的工具

閱讀更多內容

在此共享這項功能的意見反應:https://forms.office.com/r/BBvCjjDLTS