分享方式:


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

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

重要

此功能是 Windows Server 2019 的新功能。 在 Windows Server 2016 中無法使用。

開始使用

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

若要以圖形方式查看叢集的效能歷程記錄,請使用 Windows Admin Center

Windows Admin Center 中的效能歷程記錄

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

收集的內容

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

物件類型

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

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

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

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

時間範圍

效能歷程記錄最多儲存一年,資料細微性會降低。 在最近的一小時內,每十秒鐘有一次測量結果。 之後,它們會以智慧方式合併 (視需要平均或加總) 合併成較粗略的數列,以跨越更長的時間。 在最近的一天內,每五分鐘有一次測量結果;最近一週內,每十五分鐘一次;依此類推。

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

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" 針對叢集收集的內容

提示

使用 Tab 鍵自動完成來探索可用的數列。

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

指定時間範圍

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

提示

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

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

運作方式

效能歷程記錄儲存體

啟用儲存空間直接存取後不久,就會建立大約 10 GB 的磁碟區,名為 ClusterPerformanceHistory,並在該處佈建可延伸儲存引擎的實例 (也稱為 Microsoft JET)。 此輕量型資料庫會儲存效能歷程記錄,而不需要系統管理員介入或管理。

歷程記錄儲存體的磁碟區

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

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

物件探索和資料收集

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

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

處理測量差距

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

擴充性和自訂

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

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

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

啟動或停止效能歷程記錄

如何啟用此功能?

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

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

Start-ClusterPerformanceHistory

如何停用此功能?

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

Stop-ClusterPerformanceHistory

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

Stop-ClusterPerformanceHistory -DeleteHistory

提示

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

疑難排解

Cmdlet 無效

錯誤訊息,例如「'Get-ClusterPerf' 一詞無法辨識為 Cmdlet」表示無法使用或安裝此功能。 確認您有 Windows Server 2025、已安裝故障轉移叢集,而且您正在執行 儲存空間直接存取。

注意

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

沒有可用資料

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

沒有可用資料

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

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

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

  4. 如果問題持續發生,請以系統管理員身分開啟 PowerShell,然後執行 Get-ClusterPerf Cmdlet。 Cmdlet 包含用於識別常見問題的疑難排解邏輯,例如 ClusterPerformanceHistory 磁碟區遺失,並提供補救指示。

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

其他參考