Назад | Перейти на главную страницу

Удаление отказавшего диска из пула хранения в Server 2016

Найдены следующие инструкции Вот и Вот, Я пытался заменить неисправный диск в пуле хранения Windows. Вот шаги, которые я предпринимаю после физической замены диска.

При беге Get-PhysicalDisk, Я вижу:

FriendlyName           SerialNumber    CanPool OperationalStatus  HealthStatus Usage            Size
------------           ------------    ------- -----------------  ------------ -----            ----
WDC WD1003FBYX-01Y7B1  WD-WCAW36848546 False   OK                 Healthy      Auto-Select 931.51 GB
WDC WD4000F9MZ-76NVPL0 WD-WCC131932768 False   OK                 Healthy      Auto-Select   3.64 TB
Generic Physical Disk                  False   Lost Communication Warning      Auto-Select   3.64 TB
WDC WD1003FBYX-01Y7B1  WD-WCAW36848210 False   OK                 Healthy      Auto-Select 931.51 GB
WDC WD4000F9MZ-76NVPL0 WD-WCC131962755 False   OK                 Healthy      Auto-Select   3.64 TB
WDC WD4000F9MZ-76NVPL0 WD-WCC131965649 False   OK                 Healthy      Auto-Select   3.64 TB
WDC WD4000F9YZ-09N20L0 WD-WCC130974882 False   OK                 Healthy      Auto-Select   3.64 TB

Понятно, какой из них плохой. Итак, я устанавливаю плохой диск в переменную,
$badDisk = Get-PhysicalDisk | Where-Object { $_.OperationalStatus -eq 'Lost Communication' }

А затем удалите его.

$badDisk | Set-PhysicalDisk -Usage Retired

Оттуда пытаюсь вынуть диск.

Remove-PhysicalDisk -PhysicalDisks $badDisk -StoragePoolName DataStore1

Remove-PhysicalDisk : The requested object could not be found.
At line:1 char:1
+ Remove-PhysicalDisk -PhysicalDisks $badDisk -StoragePoolName Data ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : ObjectNotFound: (PS_StorageCmdlets:ROOT/Microsoft/..._StorageCmdlets) [Remove-PhysicalDi
sk], CimException
+ FullyQualifiedErrorId : MI RESULT 6,Remove-PhysicalDisk

О ... хорошо?

Тогда сначала добавить сменный диск?

$replacementDisk = Get-PhysicalDisk –FriendlyName 'WDC WD4000F9YZ-09N20L0'

Add-PhysicalDisk –PhysicalDisks $replacementDisk –StoragePoolFriendlyName DataStore1

Add-PhysicalDisk : The requested object could not be found.
At line:1 char:1
+ Add-PhysicalDisk –PhysicalDisks $replacementDisk –StoragePoolFriendly ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : ObjectNotFound: (PS_StorageCmdlets:ROOT/Microsoft/..._StorageCmdlets) [Add-PhysicalDisk]
, CimException
+ FullyQualifiedErrorId : MI RESULT 6,Add-PhysicalDisk

Что, черт возьми, я делаю не так? Я знаю, что не знаю Powershell так хорошо, как хотелось бы, но ... Здесь все довольно просто.

Не уверен, что вы ее решили, но у меня была точно такая же проблема, и я нашел здесь решение: https://social.technet.microsoft.com/Forums/en-US/a7cdd6ce-db9c-47f8-b366-8d0b437a6bb8/removephysicaldisk-fails-with-failover-clustering-and-storage-spaces-in-windows-server- 2016? Forum = winserverfiles

Я использовал эти 4 строки (просто замените 2 параметра, которые включают «YourXxxXxx»):

$Clustername = "YourClusterName"
Get-CimInstance -Namespace root\mscluster -ComputerName $ClusterName -ClassName MScluster_ClusterService | Invoke-CimMethod -Name EnableHealth
Remove-PhysicalDisk -PhysicalDisks (Get-PhysicalDisk | ? OperationalStatus -eq ‘Lost Communication’) -StoragePoolFriendlyName YourStoragePoolName
Get-CimInstance -Namespace root\mscluster -ComputerName $ClusterName -ClassName MScluster_ClusterService | Invoke-CimMethod -Name DisableHealth