疑難排解儲存空間和儲存空間直接存取健康情況和操作狀態
本主題描述儲存集區、虛擬磁碟 (位於儲存空間中的磁碟區下方),以及儲存空間直接存取和儲存空間中磁碟機的健康情況和操作狀態。 嘗試針對各種問題進行疑難排解時,這些狀態可能非常寶貴,例如因為唯讀設定而無法刪除虛擬磁碟的原因。 它也會討論為什麼無法將磁片磁碟機新增至集區 (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
下列各節列出健康情況和作業狀態。
操作狀態 | 描述 |
---|---|
確定 | 儲存體集區健康情況良好。 |
當儲存集區處於警告健康情況時,表示集區可供存取,但有一個或多個磁碟機故障或遺失。 因此,您儲存集區的復原能力可能降低了。
操作狀態 | 描述 |
---|---|
已降級 | 儲存集區中磁碟機故障或遺失。 只有裝載集區中繼資料的磁碟機才會發生這種狀況。 動作:請檢查磁碟機的狀態,並在發生其他故障之前更換任何故障的磁碟機。 |
當儲存集區處於未知或狀況不良健康情況狀態時,表示儲存集區是唯讀的,而且在集區回到警告或 OK 健康情況狀態之後才能修改。
操作狀態 | 唯讀原因 | 描述 |
---|---|---|
唯讀 | 不完整 | 如果儲存集區失去其仲裁,表示集區中大部分的磁碟機已故障或因為某些原因而離線,就會發生這種情況。 當集區失去仲裁時,儲存空間會自動將集區設定設為唯讀,直到再度有足夠的磁碟機可用為止。 動作: 1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請將所有伺服器上線。 2.開啟具有系統管理權限的 PowerShell 工作階段,然後輸入下列命令,將集區設定回讀寫: Get-StoragePool <PoolName> -IsPrimordial $False | Set-StoragePool -IsReadOnly $false |
原則 | 系統管理員將儲存集區設定為唯讀。 動作:若要在容錯移轉叢集管理員中將叢集儲存集區設定為讀寫存取權,請前往[集區],以滑鼠右鍵按一下集區,然後選取[上線]。 對於其他伺服器和電腦,請以系統管理權限開啟 PowerShell 工作階段,然後輸入: Get-StoragePool <PoolName> | Set-StoragePool -IsReadOnly $false |
|
啟動中 | 儲存空間正在啟動或等候集區中的磁碟機連線。 這應該是暫時狀態。 完全啟動之後,集區應該會轉換成不同的操作狀態。 動作: 如果集區保持開始狀態,請確定集區中的所有磁碟機都已正確連線。 |
另請參閱 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
下列各節列出健康情況和作業狀態。
操作狀態 | 描述 |
---|---|
確定 | 虛擬磁碟健康情況良好。 |
次佳 | 資料不會平均寫入磁碟機。 動作:執行 Optimize-StoragePool Cmdlet,將儲存集區中的磁碟機使用量優化。 |
當虛擬磁碟處於警告健康情況時,表示您的資料有一份或多份複本無法使用,但儲存空間仍可讀取至少一份資料複本。
操作狀態 | 描述 |
---|---|
服務中 | Windows 正在修復虛擬磁碟,例如新增或移除磁碟機之後。 修復完成時,虛擬磁碟應該會回到 [OK] 健康情況狀態。 |
不完整 | 虛擬磁碟的復原能力會降低,因為一個或多個磁碟機故障或遺失。 不過,遺失的磁碟機包含您資料的最新複本。 動作: 1.將任何遺失的磁碟機重新連線、更換任何故障的磁碟機,如果您使用儲存空間直接存取,請將任何離線的伺服器上線。 2.如果您未使用儲存空間直接存取,請使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。 重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。 |
已降級 | 虛擬磁碟的復原能力會降低,因為一個或多個磁碟機故障或遺失,而且這些磁碟機上有過時的資料複本。 動作: 1.將任何遺失的磁碟機重新連線、更換任何故障的磁碟機,如果您使用儲存空間直接存取,請將任何離線的伺服器上線。 2.如果您未使用儲存空間直接存取,請使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。 重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。 |
當虛擬磁碟處於狀況不良健康情況時,目前無法存取虛擬磁碟上的部分或所有資料。
操作狀態 | 描述 |
---|---|
無備援 | 虛擬磁碟遺失資料,因為太多磁碟機故障。 動作:取代故障的磁碟機,然後從備份還原您的資料。 |
如果系統管理員離線或虛擬磁碟已中斷連結,虛擬磁碟也可以處於資訊健康情況 (如儲存空間控制台項目所示)或未知健康情況 (如 PowerShell 所示)。
操作狀態 | 中斷連結的原因 | 描述 |
---|---|---|
已卸離 | 依據原則 | 系統管理員將虛擬磁碟離線,或將虛擬磁碟設定為需要手動連結,在此情況下,您必須在每次 Windows 重新啟動時手動連結虛擬磁碟。 動作: 讓虛擬磁碟重新上線。 若要在虛擬磁碟位於叢集儲存集區時執行此動作,請在 [容錯移轉叢集管理員] 中,選取[儲存>集區]>[虛擬磁碟],選取顯示[離線] 狀態的虛擬磁碟,然後選取[上線]。 當虛擬磁碟不在叢集中時,若要使其重新上線,請以系統管理員身分開啟 PowerShell 工作階段,然後嘗試使用下列命令: Get-VirtualDisk | Where-Object -Filter { $_.OperationalStatus -eq "Detached" } | Connect-VirtualDisk 若要在 Windows 重新啟動之後自動連結所有非叢集虛擬磁碟,請以系統管理員身分開啟 PowerShell 工作階段,然後使用下列命令: Get-VirtualDisk | Set-VirtualDisk -ismanualattach $false |
大部分磁碟機狀況不良 | 此虛擬磁碟使用的磁碟機中有太多故障、遺失或有過時的資料。 動作: 1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請讓任何離線的伺服器上線。 2.所有磁碟機和伺服器都上線之後,請更換任何故障的磁碟機。 如需詳細資訊,請參閱健全狀況服務。 重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。 3.如果您未使用儲存空間直接存取,請使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。 如果磁碟數目超過您的資料複本,而且虛擬磁碟未在失敗期間修復,則虛擬磁碟上的所有資料都會永久遺失。 在此情況下,請刪除虛擬磁碟、建立新的虛擬磁碟,然後從備份還原。 |
|
不完整 | 磁碟機不足,無法讀取虛擬磁碟。 動作: 1.重新連線任何遺失的磁碟機,如果您使用儲存空間直接存取,請讓任何離線的伺服器上線。 2.所有磁碟機和伺服器都上線之後,請更換任何故障的磁碟機。 如需詳細資訊,請參閱健全狀況服務。 重新連線或更換磁碟機之後,視需要自動啟動修復儲存空間直接存取。 3.如果您未使用儲存空間直接存取,請使用 Repair-VirtualDisk Cmdlet 修復虛擬磁碟。 如果磁碟數目超過您的資料複本,而且虛擬磁碟未在失敗期間修復,則虛擬磁碟上的所有資料都會永久遺失。 在此情況下,請刪除虛擬磁碟、建立新的虛擬磁碟,然後從備份還原。 |
|
逾時 | 連結虛擬磁碟花費的時間太長 動作: 這不應該經常發生,因此您可能會嘗試查看情况是否已及時好轉。 或者,您可以使用 Disconnect-VirtualDisk Cmdlet 來中斷虛擬磁碟的連線,然後使用 Connect-VirtualDisk Cmdlet 重新連線。 |
下列各節說明磁碟機可以處於其中的健康情況。 集區中的磁碟機會在 PowerShell 中以實體磁碟物件來表示。
操作狀態 | 描述 |
---|---|
確定 | 磁碟機狀況良好。 |
服務中 | 磁碟機正在執行一些內部管理作業。 當動作完成時,磁碟機應該會回到 OK 健康情況。 |
處於警告狀態的磁碟機可以順利讀取和寫入資料,但它是有問題的。
操作狀態 | 描述 |
---|---|
失去通訊 | 磁碟機遺失。 如果您使用儲存空間直接存取,這可能是因為伺服器已關閉。 動作:如果您使用儲存空間直接存取,請讓所有伺服器重新上線。 如果無法修正,請將磁碟機重新連線、更換磁碟機,或嘗試依照使用 Windows 錯誤報告>實體磁碟片逾時進行疑難排解中的步驟, 取得有關此磁碟機的詳細診斷資訊。 |
從集區移除 | 儲存空間正在從其儲存集區中移除磁碟機。 這是暫時狀態。 移除完成後,如果磁碟機仍然連結至系統,磁碟機會轉換為原始集區中的另一個操作狀態 (通常為 OK)。 |
啟動維護模式 | 系統管理員將磁碟機置於維護模式後,儲存空間正在將磁碟機置於維護模式。 這是暫時狀態 - 磁碟機應該很快就會在處於維護模式狀態。 |
處於維護模式 | 系統管理員將磁碟機置於維護模式中,停止磁碟機的讀取和寫入。 這通常會在更新磁碟機韌體之前完成,或在測試失敗時完成。 動作:若要讓磁碟機脫離維護模式,請使用 Disable-StorageMaintenanceMode Cmdlet。 |
停止維護模式 | 系統管理員讓磁碟機離開維護模式,而儲存空間正在將磁碟機重新上線。 這是暫時狀態 - 磁碟機應該很快就會處於另一個狀態 - 理想情況下是狀況良好。 |
預料中的故障 | 磁碟機回報它即將故障。 動作:更換磁碟機。 |
IO 錯誤 | 存取磁碟機時發生暫時性錯誤。 動作: 1.如果磁碟機沒有轉換回 OK 狀態,您可以嘗試使用 Reset-PhysicalDisk Cmdlet 來抹除磁碟機。 2.使用 Repair-VirtualDisk 還原受影響虛擬磁碟的復原能力。 3.如果這種情況持續發生,請更換磁碟機。 |
暫時性錯誤 | 磁碟機有暫時性錯誤。 這通常表示磁碟機沒有回應,但也表示儲存空間保護分割區不適當地從磁碟機中移除。 動作: 1.如果磁碟機沒有轉換回 OK 狀態,您可以嘗試使用 Reset-PhysicalDisk Cmdlet 來抹除磁碟機。 2.使用 Repair-VirtualDisk 還原受影響虛擬磁碟的復原能力。 3.如果這種情況持續發生,請更換磁碟機,或嘗試依照使用 Windows 錯誤報告進行疑難排解中的步驟來嘗試取得此磁碟機的詳細診斷資訊, >實體磁片無法上線。 |
異常延遲 | 磁碟機執行速度緩慢,如儲存空間直接存取中的健康情況服務測量結果所示。 動作:如果這種情況持續發生,請更換磁碟機,使其不致降低儲存空間的整體效能。 |
處於狀況不良狀態的磁碟機目前無法寫入或存取。
操作狀態 | 描述 |
---|---|
無法使用 | 儲存空間無法使用此磁碟機。 如需詳細資訊,請參閱儲存空間直接存取硬體需求;如果您未使用儲存空間直接存取,請參閱 儲存空間概觀。 |
份額 | 該磁碟機已與集區分開。 動作:重設磁碟機、清除磁碟機中的所有資料,並將其新增回集區做為空白磁碟機。 若要這樣做,請以系統管理員身分開啟 PowerShell 工作階段、執行 Reset-PhysicalDisk Cmdlet,然後執行 Repair-VirtualDisk。 若要取得此磁碟機的詳細診斷資訊,請遵循使用 Windows 錯誤報告進行疑難排解中的步驟, >實體磁片無法上線。 |
中繼資料過時 | 儲存空間在磁碟機上找到舊的中繼資料。 動作:這應該是暫時狀態。 如果磁碟機無法轉換回 OK,您可以執行 Repair-VirtualDisk,在受影響的虛擬磁碟上啟動修復作業。 如果這樣無法解決問題,您可以使用 Reset-PhysicalDisk Cmdlet 重設磁片磁碟機、抹除磁碟機中的所有資料,然後執行 Repair-VirtualDisk。 |
中繼資料無法辨識 | 儲存空間在磁碟機上找到無法辨識的中繼資料,這通常表示磁碟機上有來自不同集區的中繼資料。 動作:若要抹除磁碟機並將它新增至目前的集區,請重設磁碟機。 若要重設磁碟機,請以系統管理員身分開啟 PowerShell 工作階段、執行 Reset-PhysicalDisk Cmdlet,然後執行 Repair-VirtualDisk。 |
媒體故障 | 磁碟機故障,且不再由儲存空間使用。 動作:更換磁碟機。 若要取得此磁碟機的詳細診斷資訊,請遵循使用 Windows 錯誤報告進行疑難排解中的步驟, >實體磁片無法上線。 |
裝置硬體故障 | 此磁碟機發生硬體故障。 動作:更換磁碟機。 |
更新韌體 | Windows 正在更新磁碟機上的韌體。 這是一種暫時狀態,通常持續不到一分鐘,在此期間內,集區中的其他磁碟機會處理所有讀取和寫入。 如需詳細資訊,請參閱更新3磁碟機韌體。 |
啟動中 | 磁碟機已準備好進行作業。 這應該是暫時狀態 - 完成之後,磁碟機應該轉換為不同的操作狀態。 |
有些磁碟機尚未準備好處於儲存集區中。 您可以查看實體磁碟片的 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
下表提供每個原因的詳細資料。
原因 | 描述 |
---|---|
在集區中 | 磁碟機已經屬於儲存集區。 磁碟機一次只能屬於一個儲存集區。 若要在另一個儲存集區中使用此磁碟機,請先從現有的集區中移除磁碟機,這樣會告訴儲存空間將磁碟機上的資料移至集區上的其他磁碟機。 或者,如果磁碟機已與其集區中斷連線,卻未通知儲存空間,請重設磁碟機。 若要從儲存集區安全地移除磁碟機,請使用 remove-PhysicalDisk remove-PhysicalDisk,或前往伺服器管理員>檔案和儲存服務>儲存集區、>實體磁碟片、以滑鼠右鍵按一下磁碟機,然後選取[移除磁碟片]。 若要重設磁碟機,請使用 Reset-PhysicalDisk。 |
狀況不良 | 磁碟機未處於狀況良好狀態,可能需要更換。 |
抽取式媒體 | 磁碟機被分類為抽取式磁碟機。 儲存空間不支援 Windows 辨識為抽取式媒體的媒體,例如 Blu-Ray 磁碟機。 雖然許多固定磁碟機位於抽取式插槽中,但一般而言,Windows 分類為抽取式磁碟機的媒體不適合與儲存空間搭配使用。 |
由叢集使用中 | 磁碟機目前由容錯移轉叢集使用。 |
離線 | 磁碟機已離線。 若要將所有離線磁碟機上線並設定為讀取/寫入,請以系統管理員身分開啟 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。 |
驗證進行中 | 健康情況服務正在檢查磁碟機上的磁碟機或韌體是否已獲得伺服器管理員的核准。 |
驗證失敗 | 健康情況服務無法檢查磁碟機或磁碟機上的韌體是否已獲得伺服器管理員的核准。 |
韌體不符合規範 | 實體磁碟機上的韌體不在伺服器系統管理員使用健康情況服務而指定的已核准韌體修訂清單中。 |
硬體不符合規範 | 磁碟機不在不在伺服器管理員使用健康情況服務而指定的已核准儲存體模型清單中。 |