儲存空間直接存取的效能歷程記錄

適用於︰Windows Server 2022、Windows Server 2019

效能歷程記錄是一項新功能,可 讓儲存空間直接存取 系統管理員輕鬆存取主機伺服器、磁片磁碟機、磁片區、虛擬機器等的歷程記錄計算、記憶體、網路和儲存體度量。 系統會自動收集效能歷程記錄,並儲存在叢集上長達一年。

重要

這項功能是 Windows Server 2019 的新功能。 Windows Server 2016 中無法使用。

開始使用

Windows Server 2019 中的儲存空間直接存取預設會收集效能歷程記錄。 您不需要安裝、設定或啟動任何專案。 不需要網際網路連線、不需要 System Center,而且不需要外部資料庫。

若要以圖形方式查看叢集的效能歷程記錄,請使用 Windows 管理員 中心

Performance history in Windows Admin Center

若要以程式設計方式查詢及處理它,請使用新的 Get-ClusterPerf Cmdlet。 請參閱 PowerShell 中的使用量。

收集的內容

針對 7 種類型的物件收集效能歷程記錄:

Types of objects

每個物件類型都有許多數列:例如, ClusterNode.Cpu.Usage 會針對每部伺服器收集。

如需針對每個物件類型收集的內容以及如何解譯它們的詳細資料,請參閱下列子主題:

Object 數列
磁碟機 針對磁片磁碟機收集的內容
網路介面卡 為網路介面卡收集的內容
伺服器 針對伺服器收集的內容
虛擬硬碟 針對虛擬硬碟收集的內容
虛擬機器 針對虛擬機器收集的內容
磁碟區 針對磁片區收集的內容
叢集 針對叢集收集的內容

許多數列會跨對等物件匯總至其父系:例如, NetAdapter.Bandwidth.Inbound 會針對每個網路介面卡個別收集,並匯總至整體伺服器;同樣 ClusterNode.Cpu.Usage 地會匯總至整體叢集,依序收集。

時間範圍

效能歷程記錄會儲存最多一年,資料細微性會降低。 在最近的一小時內,測量每十秒可用一次。 之後,它們會以智慧方式合併(視需要平均或加總)合併成更細微的數列,以跨越更多時間。 在最近的一天,測量每五分鐘可用一次:最近一周,每十五分鐘:等等。

在 Windows 管理員 Center 中,您可以選取圖表右上角的時間範圍。

Timeframes in Windows Admin Center

在 PowerShell 中,使用 -TimeFrame 參數。

以下是可用的時間範圍:

時間範圍 測量頻率 保留給
LastHour 每 10 秒 1 小時
LastDay 每 5 分鐘 25 小時
LastWeek 每 15 分鐘 8 天
LastMonth 每 1 小時 35 天
LastYear 每 1 天 400 天

PowerShell 中的使用方式

Get-ClusterPerformanceHistory使用 Cmdlet 在 PowerShell 中查詢和處理效能歷程記錄。

Get-ClusterPerformanceHistory

提示

使用 Get-ClusterPerf 別名來儲存一些擊鍵。

範例

取得虛擬機器 MyVM 過去一小時的 CPU 使用量:

Get-VM "MyVM" | Get-ClusterPerf -VMSeriesName "VM.Cpu.Usage" -TimeFrame LastHour

如需更進階的範例,請參閱已發佈 的範例腳本,這些腳本 提供入門程式碼來尋找尖峰值、計算平均值、繪製趨勢線、執行極端值偵測等等。

指定 物件

您可以指定管線所要的物件。 這適用于 7 種類型的物件:

來自管線的物件 範例
Get-PhysicalDisk Get-PhysicalDisk -SerialNumber "XYZ456" | Get-ClusterPerf
Get-NetAdapter Get-NetAdapter "Ethernet" | Get-ClusterPerf
Get-ClusterNode Get-ClusterNode "Server123" | Get-ClusterPerf
Get-VHD Get-VHD "C:\ClusterStorage\MyVolume\MyVHD.vhdx" | Get-ClusterPerf
Get-VM Get-VM "MyVM" | Get-ClusterPerf
Get-Volume Get-Volume -FriendlyName "MyVolume" | Get-ClusterPerf
Get-Cluster Get-Cluster "MyCluster" | Get-ClusterPerf

如果未指定,則會傳回整體叢集的效能歷程記錄。

指定數列

您可以使用下列參數來指定您想要的數列:

參數 範例 清單
-PhysicalDiskSeriesName "PhysicalDisk.Iops.Read" 針對磁片磁碟機收集的內容
-NetAdapterSeriesName "NetAdapter.Bandwidth.Outbound" 為網路介面卡收集的內容
-ClusterNodeSeriesName "ClusterNode.Cpu.Usage" 針對伺服器收集的內容
-VHDSeriesName "Vhd.Size.Current" 針對虛擬硬碟收集的內容
-VMSeriesName "Vm.Memory.Assigned" 針對虛擬機器收集的內容
-VolumeSeriesName "Volume.Latency.Write" 針對磁片區收集的內容
-ClusterSeriesName "PhysicalDisk.Size.Total" 針對叢集收集的內容

提示

使用索引標籤自動完成來探索可用的數列。

如果未指定,則會傳回指定之物件可用的每個數列。

指定時間範圍

您可以使用 參數來指定您想要 -TimeFrame 的歷程記錄時間範圍。

提示

使用索引標籤自動完成來探索可用的時間範圍。

如果未指定,則會 MostRecent 傳回度量。

運作方式

效能歷程記錄儲存體

啟用儲存空間直接存取後不久,就會建立大約 10 GB 的 ClusterPerformanceHistory 磁片區,並在該處布建 Extensible 儲存體 Engine (也稱為 Microsoft JET) 的實例。 此輕量型資料庫會儲存效能歷程記錄,而不需要任何管理員管理員介入或管理。

Volume for performance history storage

磁片區受到儲存空間支援,並根據叢集中的節點數目,使用簡單、雙向鏡像或三向鏡像復原。 磁片磁碟機或伺服器失敗之後會修復它,就像儲存空間直接存取中的任何其他磁片區一樣。

磁片區使用 ReFS,但不是叢集共用磁片區 (CSV),因此它只會出現在叢集群組擁有者節點上。 除了自動建立之外,此磁片區沒有任何特殊之處:您可以看到它、流覽、調整大小或刪除它(不建議)。 如果發生問題,請參閱 疑難排解

物件探索和資料收集

效能歷程記錄會自動探索相關的物件,例如虛擬機器、叢集中的任何位置,並開始串流其效能計數器。 計數器會匯總、同步處理,並插入資料庫中。 串流會持續執行,並針對最小的系統影響進行優化。

集合是由健全狀況服務處理,這是高可用性:如果執行所在的節點關閉,它稍後會在叢集中的另一個節點上繼續。 效能歷程記錄可能會短暫失效,但會自動繼續。 您可以在 PowerShell 中執行 Get-ClusterResource Health ,以查看健全狀況服務及其擁有者節點。

處理測量間距

當量測合併成更細微的數列,跨越更多時間時,如時間範圍 所述 ,會排除遺漏資料的期間。 例如,如果伺服器已關閉 30 分鐘,則在接下來的 30 分鐘內以 50% 的 CPU 執行, ClusterNode.Cpu.Usage 則小時的平均記錄會正確記錄為 50% (而非 25%)。

擴充性和自訂

效能歷程記錄是腳本易記的。 使用 PowerShell 直接從資料庫提取任何可用的歷程記錄,以建置自動化報告或警示、匯出歷程記錄以進行安全保存、變換您自己的視覺效果等等。如需實用的入門程式碼,請參閱已發佈 的範例腳本

無法收集其他物件、時間範圍或數列的歷程記錄。

測量頻率和保留期間目前無法設定。

啟動或停止效能歷程記錄

如何?啟用此功能嗎?

Stop-ClusterPerformanceHistory除非您 ,否則預設會啟用效能歷程記錄。

若要重新啟用它,請以 管理員istrator 身分執行此 PowerShell Cmdlet:

Start-ClusterPerformanceHistory

如何?停用此功能嗎?

若要停止收集效能歷程記錄,請以 管理員istrator 身分執行此 PowerShell Cmdlet:

Stop-ClusterPerformanceHistory

若要刪除現有的度量,請使用 -DeleteHistory 旗標:

Stop-ClusterPerformanceHistory -DeleteHistory

提示

在初始部署期間,您可以將 的 Enable-ClusterStorageSpacesDirect 參數設定 -CollectPerformanceHistory$False ,以防止效能歷程記錄開始。

疑難排解

Cmdlet 無法運作

錯誤訊息,例如「 無法辨識 'Get-ClusterPerf' 一詞做為 Cmdlet 的名稱」,表示無法使用或安裝此功能。 確認您有 Windows Server Insider Preview 組建 17692 或更新版本、已安裝容錯移轉叢集,以及您正在執行儲存空間直接存取。

注意

此功能不適用於 Windows Server 2016 或更早版本。

沒有可用資料

如果圖表顯示如圖所示的「 沒有可用的 資料」,以下是如何進行疑難排解:

No data available

  1. 如果新加入或建立物件,請等候探索物件(最多 15 分鐘)。

  2. 重新整理頁面,或等候下一個背景重新整理 (最多 30 秒)。

  3. 某些特殊物件會從效能歷程記錄中排除 ,例如未叢集的虛擬機器,以及不使用叢集共用磁片區 (CSV) 檔案系統的磁片區。 如需精細列印,請檢查物件類型的子主題,例如 磁片區的 效能歷程記錄。

  4. 如果問題持續發生,請以 管理員istrator 開啟 PowerShell 並執行 Get-ClusterPerf Cmdlet。 Cmdlet 包含疑難排解邏輯來識別常見問題,例如 ClusterPerformanceHistory 磁片區遺失,並提供補救指示。

  5. 如果上一個步驟中的命令沒有傳回任何內容,您可以嘗試在 PowerShell 中執行 Stop-ClusterResource Health ; Start-ClusterResource Health 來重新開機健全狀況服務(這會收集效能歷程記錄)。

其他參考