共用方式為


疑難排解儲存空間和儲存空間直接存取健康情況和操作狀態

本主題描述儲存集區、虛擬磁碟 (位於儲存空間中的磁碟區下方),以及儲存空間直接存取儲存空間中磁碟機的健康情況和操作狀態。 嘗試針對各種問題進行疑難排解時,這些狀態可能非常寶貴,例如因為唯讀設定而無法刪除虛擬磁碟的原因。 它也會討論為什麼無法將磁片磁碟機新增至集區 (CannotPoolReason)。

儲存空間有三個主要物件 - 實體磁碟 (硬碟、SSD 等) 新增至 儲存集區,虛擬化儲存體,以便您可以從集區中的可用空間建立 虛擬磁碟 ,如下所示。 集區中繼資料會寫入集區中的每個磁碟機。 磁碟區會建立在虛擬磁碟之上並儲存您的檔案,但我們不會在這裡討論磁碟區。

實體磁碟會新增至存放集區,然後從集區空間建立虛擬磁碟

您可以在伺服器管理員或 PowerShell 中檢視健康情況和操作狀態。 以下是儲存空間直接存取叢集上各種 (大部分不良) 健康情況和作業狀態的範例,該叢集缺少大部分的叢集節點 (以滑鼠右鍵按兩下資料行標頭以新增 [作業狀態])。 這樣的叢集狀況讓人不開心。

伺服器管理員 顯示 儲存空間直接存取 叢集中兩個遺漏節點的結果 - 許多遺失的實體磁碟和虛擬磁碟處於狀況不良狀態

儲存集區狀態

每個儲存區都有健全狀況狀態 - 狀況良好警告未知/狀況不良,以及一或多個作業狀態。

若要瞭解集區處於何種狀態,請使用下列 PowerShell 命令:

Get-StoragePool -IsPrimordial $False | Select-Object HealthStatus, OperationalStatus, ReadOnlyReason

以下是一個範例輸出,其中顯示處於 [未知] 健康情況狀態的儲存集區,且狀態為唯讀作業狀態:

FriendlyName                OperationalStatus HealthStatus IsPrimordial IsReadOnly
------------                ----------------- ------------ ------------ ----------
S2D on StorageSpacesDirect1 Read-only         Unknown      False        True

下列各節列出健康情況和作業狀態。

集區健康情況:狀況良好

作業狀態 Description
OK 儲存體集區健康情況良好。

集區健康情況:狀況良好

當儲存集區處於 「警告」 性能狀態時,表示集區可存取,但一或多個磁碟機失敗或遺失。 因此,您儲存集區的復原能力可能降低了。

作業狀態 Description
Degraded 儲存集區中磁碟機故障或遺失。 只有裝載集區中繼資料的磁碟機才會發生這種狀況。

動作:檢查磁碟機的狀態,並在發生其他故障之前更換任何故障磁碟機。

集區健康情況狀態:未知或狀況不良

當儲存集區處於 [未知 ] 或 [ 狀況不良 ] 健康情況狀態時,這表示儲存集區是唯讀的,而且在集區傳回 [警告][正常 ] 健康情況狀態之前,無法修改。

作業狀態 唯讀原因 Description
Read-only Incomplete 如果儲存集區失去 仲裁,這表示集區中的大部分磁碟機都已失敗或因某種原因離線,則可能會發生這種情況。 當集區失去仲裁時,儲存空間會自動將集區設定設為唯讀,直到再度有足夠的磁碟機可用為止。

Action:
1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請將所有伺服器上線。
2.開啟具有系統管理權限的 PowerShell 工作階段,然後輸入下列命令,將集區設定回讀寫:

Get-StoragePool <PoolName> -IsPrimordial $False | Set-StoragePool -IsReadOnly $false
原則 系統管理員將儲存集區設定為唯讀。

動作: 若要在容錯移轉叢集管理員中將叢集儲存集區設定為讀寫存取權,請移至 [集區],以滑鼠右鍵按一下集區,然後選取 [上線]。

對於其他伺服器和電腦,請以系統管理權限開啟 PowerShell 工作階段,然後輸入:

Get-StoragePool <PoolName> | Set-StoragePool -IsReadOnly $false

Starting 儲存空間正在啟動或等候集區中的磁碟機連線。 這應該是暫時狀態。 完全啟動之後,集區應該會轉換成不同的操作狀態。

動作: 如果集區保持「 啟動」 狀態,請確定集區中的所有磁碟機都已正確連接。

另請參閱 Windows Server 儲存體論壇

虛擬磁碟狀態

在 [儲存空間] 中,磁碟區會放在集區中從可用空間劃分出來的虛擬磁碟 (儲存空間)。 每個虛擬磁碟都有健康狀態 - 健康、警告狀況不良未知,以及一或多個操作狀態。

若要了解集區處於何種狀態,請使用下列 PowerShell 命令:

Get-VirtualDisk | Select-Object FriendlyName,HealthStatus, OperationalStatus, DetachedReason

以下是輸出範例,其中顯示已中斷連結的虛擬磁碟和降級/不完整的虛擬磁碟:

FriendlyName HealthStatus OperationalStatus      DetachedReason
------------ ------------ -----------------      --------------
Volume1      Unknown      Detached               By Policy
Volume2      Warning      {Degraded, Incomplete} None

下列各節列出健康情況和作業狀態。

虛擬磁碟健康情況狀態:狀況良好

作業狀態 Description
OK 虛擬磁碟健康情況良好。
Suboptimal 資料不會平均寫入磁碟機。

動作:執行 Optimize-StoragePool Cmdlet,以最佳化儲存集區中的磁碟驅動器使用量。

虛擬磁碟健康情況狀態:警告

當虛擬磁碟處於 [警告] 健康情況狀態時,表示一或多個資料複本無法使用,但儲存空間仍可讀取至少一個資料複本。

作業狀態 Description
服務中 Windows 正在修復虛擬磁碟,例如新增或移除磁碟機之後。 修復完成時,虛擬磁碟應該會回到 [OK] 健康情況狀態。
Incomplete 虛擬磁碟的復原能力會降低,因為一個或多個磁碟機故障或遺失。 不過,遺失的磁碟機包含您資料的最新複本。

Action:
1.將任何遺失的磁碟機重新連線、更換任何故障的磁碟機,如果您使用儲存空間直接存取,請將任何離線的伺服器上線。
2. 如果您沒有使用儲存空間直通,接下來使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。
重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。
Degraded 虛擬磁碟的復原能力會降低,因為一個或多個磁碟機故障或遺失,而且這些磁碟機上有過時的資料複本。

Action:
1.將任何遺失的磁碟機重新連線、更換任何故障的磁碟機,如果您使用儲存空間直接存取,請將任何離線的伺服器上線。
2. 如果您沒有使用儲存空間直通,接下來使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。
重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。

虛擬磁碟健康情況狀態:狀況不良

當虛擬磁碟處於 狀況不良 狀態時,虛擬磁碟上的部分或全部資料目前無法存取。

作業狀態 Description
無冗餘 虛擬磁碟遺失資料,因為太多磁碟機故障。

動作:更換故障磁碟機,然後從備份還原資料。

虛擬磁碟健康情況:資訊/未知

如果系統管理員將虛擬磁碟離線或虛擬磁碟已分離,虛擬磁碟也可以處於 資訊 健康情況狀態 (如儲存空間控制台專案中所示 ) 或未知 健康情況狀態 (如 PowerShell 中所示)。

作業狀態 超然理智 Description
Detached 依政策 系統管理員將虛擬磁碟離線,或將虛擬磁碟設定為需要手動連結,在此情況下,您必須在每次 Windows 重新啟動時手動連結虛擬磁碟。

動作:讓虛擬磁碟重新上線。 若要在虛擬磁碟位於叢集儲存集區中時執行此動作,請在容錯移轉叢集管理員中選取>儲存集區虛擬>磁碟,選取顯示離線狀態的虛擬磁碟,然後選取上線

當虛擬磁碟不在叢集中時,若要使其重新上線,請以系統管理員身分開啟 PowerShell 工作階段,然後嘗試使用下列命令:

Get-VirtualDisk | Where-Object -Filter { $_.OperationalStatus -eq "Detached" } | Connect-VirtualDisk

若要在 Windows 重新啟動之後自動連結所有非叢集虛擬磁碟,請以系統管理員身分開啟 PowerShell 工作階段,然後使用下列命令:

Get-VirtualDisk | Set-VirtualDisk -ismanualattach $false
大部分磁碟機狀況不良 此虛擬磁碟使用的磁碟機中有太多故障、遺失或有過時的資料。

Action:
1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請讓任何離線的伺服器上線。
2.所有磁碟機和伺服器都上線之後,請更換任何故障的磁碟機。 如需詳細資訊,請參閱 健康服務
重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。
3. 如果您未使用儲存空間直通,請接下來使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。

如果磁碟數目超過您的資料複本,而且虛擬磁碟未在失敗期間修復,則虛擬磁碟上的所有資料都會永久遺失。 在此情況下,請刪除虛擬磁碟、建立新的虛擬磁碟,然後從備份還原。
Incomplete 磁碟機不足,無法讀取虛擬磁碟。

Action:
1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請讓任何離線的伺服器上線。
2.所有磁碟機和伺服器都上線之後,請更換任何故障的磁碟機。 如需詳細資訊,請參閱 健康服務
重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。
3. 如果您未使用儲存空間直通,請接下來使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。

如果磁碟數目超過您的資料複本,而且虛擬磁碟未在失敗期間修復,則虛擬磁碟上的所有資料都會永久遺失。 在此情況下,請刪除虛擬磁碟、建立新的虛擬磁碟,然後從備份還原。
Timeout 連結虛擬磁碟花費的時間太長

動作: 這種情況不應該經常發生,因此您可以嘗試看看病情是否及時過去。 或者,您可以嘗試使用 Disconnect-VirtualDisk Cmdlet 中斷虛擬磁碟的連線,然後使用 Connect-VirtualDisk Cmdlet 重新連線。

磁碟機 (實體磁碟片) 狀態

下列各節說明磁碟機可以處於其中的健康情況。 集區中的磁碟驅動器在 PowerShell 中會表示為 實體磁碟 物件。

磁碟機健康情況:狀況良好

作業狀態 Description
OK 磁碟機狀況良好。
服務中 磁碟機正在執行一些內部管理作業。 動作完成時,磁碟機應該會回到 正常 健康情況狀態。

磁碟機健康情況狀態:警告

處於警告狀態的磁碟機可以順利讀取和寫入資料,但它是有問題的。

作業狀態 Description
失去溝通 磁碟機遺失。 如果您使用儲存空間直接存取,這可能是因為伺服器已關閉。

動作:如果您使用儲存空間直接存取,請讓所有伺服器重新上線。 如果無法修正,請將磁碟機重新連線、更換磁碟機,或嘗試依照使用 Windows 錯誤報告>實體磁碟片逾時進行疑難排解中的步驟, 取得有關此磁碟機的詳細診斷資訊。
從集區移除 儲存空間正在從其儲存集區中移除磁碟機。

這是暫時狀態。 移除完成後,如果磁碟機仍然連結至系統,磁碟機會轉換為原始集區中的另一個操作狀態 (通常為 OK)。
啟動維護模式 系統管理員將磁碟機置於維護模式後,儲存空間正在將磁碟機置於維護模式。 這是暫時狀態 - 磁碟機應該很快就會在處於維護模式狀態。
處於維護模式 系統管理員將磁碟機置於維護模式中,停止磁碟機的讀取和寫入。 這通常會在更新磁碟機韌體之前完成,或在測試失敗時完成。

動作:若要讓磁碟驅動器退出維護模式,請使用 Disable-StorageMaintenanceMode Cmdlet。
停止維護模式 系統管理員讓磁碟機離開維護模式,而儲存空間正在將磁碟機重新上線。 這是暫時狀態 - 驅動器應該很快就會處於另一種狀態 - 理想情況下是 正常的。
預測失敗 磁碟機回報它即將故障。

動作:更換磁碟機。
IO 錯誤 存取磁碟機時發生暫時性錯誤。

Action:
1、如果磁碟機沒有轉換回 OK 狀態,可以嘗試使用 Reset-PhysicalDisk cmdlet來擦除磁碟機。
2、使用 Repair-VirtualDisk 還原受影響虛擬磁碟的復原能力。
3.如果這種情況持續發生,請更換磁碟機。
暫時性錯誤 磁碟機有暫時性錯誤。 這通常表示磁碟機沒有回應,但也表示儲存空間保護分割區不適當地從磁碟機中移除。

Action:
1、如果磁碟機沒有轉換回 OK 狀態,可以嘗試使用 Reset-PhysicalDisk cmdlet來擦除磁碟機。
2、使用 Repair-VirtualDisk 還原受影響虛擬磁碟的復原能力。
3.如果這種情況持續發生,請更換磁碟機,或嘗試依照使用 Windows 錯誤報告進行疑難排解中的步驟來嘗試取得此磁碟機的詳細診斷資訊, >實體磁片無法上線
異常延遲 磁碟機執行速度緩慢,如儲存空間直接存取中的健康情況服務測量結果所示。

動作:如果這種情況持續發生,請更換磁碟驅動器,以免降低整個儲存空間的效能。

磁碟機健康情況:狀況不良

處於狀況不良狀態的磁碟機目前無法寫入或存取。

作業狀態 Description
無法使用 儲存空間無法使用此磁碟機。 如需詳細資訊,請參閱儲存空間直接存取硬體需求;如果您未使用儲存空間直接存取,請參閱 儲存空間概觀
Split 該磁碟機已與集區分開。

動作:重設磁碟機、清除磁碟機中的所有資料、並將其新增回集區做為空磁碟機。 若要這樣做,請以系統管理員身分開啟 PowerShell 會話,執行 Reset-PhysicalDisk Cmdlet,然後執行 Repair-VirtualDisk

若要取得此磁碟機的詳細診斷資訊,請遵循使用 Windows 錯誤報告進行疑難排解中的步驟, >實體磁片無法上線
過時的中繼資料 儲存空間在磁碟機上找到舊的中繼資料。

動作:這應該是暫時狀態。 如果磁碟驅動器未轉換回 [正常],您可以執行 Repair-VirtualDisk 以在受影響的虛擬磁碟上啟動修復作業。 如果這無法解決問題,您可以使用 Reset-PhysicalDisk Cmdlet 重設磁碟驅動器,清除磁碟驅動器中的所有數據,然後執行 Repair-VirtualDisk
無法辨識的中繼資料 儲存空間在磁碟機上找到無法辨識的中繼資料,這通常表示磁碟機上有來自不同集區的中繼資料。

動作:若要抹除磁碟機並將其新增至目前的集區,請重設磁碟機。 若要重設磁碟驅動器,請以系統管理員身分開啟 PowerShell 會話,執行 Reset-PhysicalDisk Cmdlet,然後執行 Repair-VirtualDisk
失敗的媒體 磁碟機故障,且不再由儲存空間使用。

動作:更換磁碟機。

若要取得此磁碟機的詳細診斷資訊,請遵循使用 Windows 錯誤報告進行疑難排解中的步驟, >實體磁片無法上線
裝置硬體故障 此磁碟機發生硬體故障。

動作:更換磁碟機。
更新韌體 Windows 正在更新磁碟機上的韌體。 這是一種暫時狀態,通常持續不到一分鐘,在此期間內,集區中的其他磁碟機會處理所有讀取和寫入。 如需詳細資訊,請參閱更新3磁碟機韌體
Starting 磁碟機已準備好進行作業。 這應該是暫時狀態 - 完成之後,磁碟機應該轉換為不同的操作狀態。

磁碟機無法集區的原因

有些磁碟機尚未準備好處於儲存集區中。 您可以查看實體磁碟片的 CannotPoolReason 屬性,找出磁碟機為何不符合集區資格。 以下是顯示 CannotPoolReason 屬性的 PowerShell 指令碼範例:

Get-PhysicalDisk | Format-Table FriendlyName,MediaType,Size,CanPool,CannotPoolReason

以下為範例輸出:

FriendlyName          MediaType          Size CanPool CannotPoolReason
------------          ---------          ---- ------- ----------------
ATA MZ7LM120HCFD00D3  SSD        120034123776   False Insufficient Capacity
Msft Virtual Disk     SSD         10737418240    True
Generic Physical Disk SSD        119990648832   False In a Pool

下表提供每個原因的詳細資料。

Reason Description
在集區中 磁碟機已經屬於儲存集區。

磁碟機一次只能屬於一個儲存集區。 若要在另一個儲存集區中使用此磁碟機,請先從現有的集區中移除磁碟機,這樣會告訴儲存空間將磁碟機上的資料移至集區上的其他磁碟機。 或者,如果磁碟機已與其集區中斷連線,卻未通知儲存空間,請重設磁碟機。

若要安全地從儲存集區移除磁碟驅動器,請使用 Remove-PhysicalDisk,或移至 [伺服器管理員>檔案和儲存體服務>儲存集區]、[實體磁碟],>以滑鼠右鍵按一下磁碟驅動器,然後選取 [移除磁碟]。

若要重設磁碟驅動器,請使用 Reset-PhysicalDisk
不健康 磁碟機未處於狀況良好狀態,可能需要更換。
抽取式媒體 磁碟機被分類為抽取式磁碟機。

儲存空間不支援 Windows 辨識為抽取式媒體的媒體,例如 Blu-Ray 磁碟機。 雖然許多固定磁碟驅動器都位於抽取式插槽中,但一般而言, Windows 分類為 抽取式的媒體不適合與儲存空間搭配使用。
由叢集使用中 磁碟機目前由容錯移轉叢集使用。
Offline 磁碟機已離線。

若要將所有離線磁碟機上線並設定為讀取/寫入,請以系統管理員身分開啟 PowerShell 工作階段,並使用下列指令碼:

Get-Disk | Where-Object -Property OperationalStatus -EQ "Offline" | Set-Disk -IsOffline $false

Get-Disk | Where-Object -Property IsReadOnly -EQ $true | Set-Disk -IsReadOnly $false
容量不足 當磁碟分割佔用磁碟機上的可用空間時,通常會發生這種情況。

動作:刪除磁碟機上的任何磁碟區、清除磁碟機上的所有資料。 一種方法是使用 Clear-Disk PowerShell Cmdlet。
驗證進行中 健康情況服務正在檢查磁碟機上的磁碟機或韌體是否已核准供伺服器系統管理員使用。
驗證失敗 健康情況服務無法檢查磁碟驅動器或磁碟機上的韌體是否已核准供伺服器系統管理員使用。
韌體不符合規範 實體磁碟機上的韌體不在伺服器系統管理員使用 健康情況服務指定的核准韌體修訂清單中。
硬體不符合規範 磁碟驅動器不在伺服器系統管理員使用 健康情況服務指定的核准儲存體模型清單中。

其他參考資料