Storage Pool Apenas leitura Não íntegro

1

Ok, eu me meti em apuros. Situação:

  1. Eu tinha um pool de armazenamento espelhado de 4 discos
  2. Eu queria remover dois discos, então os aposentei (preparei-os para remoção)
  3. Esperei até que o processo fosse concluído e Get-PhysicalDisk informasse "aposentado"
  4. FISIAMENTE removi-os e formatei-os sem concluir o passo final "remover".

Então, agora eu tenho uma situação muito estranha. Eu tenho um pool de 4 unidades com duas unidades "aposentadas" que "perderam a comunicação". Todos os dados estão nas duas unidades restantes, mas estão inacessíveis porque o conjunto é "não íntegro". O pool está em um OperationalStatus somente leitura, portanto não posso modificar a configuração do pool.

Eu tentei definir o sinalizador -IsReadOnly do pool como $ false. Trabalho. MAS o status operacional permanece somente leitura, talvez porque o status de integridade não é saudável? Eu até fisicamente recolocou os discos ausentes. Mas como os discos foram redefinidos, eles não são reconhecidos pelo pool.

De qualquer forma, o status atual relevante de pools, discos físicos e virtuais é o seguinte:

PS C:\Windows\system32> Get-StoragePool

FriendlyName OperationalStatus HealthStatus IsPrimordial IsReadOnly     Size AllocatedSize
------------ ----------------- ------------ ------------ ----------     ---- -------------
Storage pool Read-only         Unhealthy    False        False      10.91 TB       3.18 TB
Primordial   OK                Healthy      True         False      11.79 TB       5.46 TB

PS C:\Windows\system32> Get-PhysicalDisk

FriendlyName         SerialNumber                   MediaType CanPool OperationalStatus  HealthStatus Usage            Size
------------         ------------                   --------- ------- -----------------  ------------ -----            ----
WDC WD30EFRX-68EUZN0 WD-WMC4N0381258                HDD       True    OK                 Healthy      Auto-Select   2.73 TB
WDC WD30EFRX-68EUZN0                                HDD       False   Lost Communication Warning      Retired       2.73 TB
WDC WD30EFRX-68N32N0 WD-WCC7K3NJ49H4                HDD       False   OK                 Healthy      Auto-Select   2.73 TB
WDC WD30EFRX-68EUZN0                                HDD       False   Lost Communication Warning      Retired       2.73 TB
ST3000DM001-1CH166   Z1F29FQX                       HDD       False   OK                 Healthy      Auto-Select   2.73 TB
ADATA SX8200NP       2I3020079406        _00000001. SSD       False   OK                 Healthy      Auto-Select 894.25 GB
WDC WD30EFRX-68EUZN0 WD-WMC4N0437933                HDD       True    OK                 Healthy      Auto-Select   2.73 TB

As duas unidades "Can Pool" são aquelas que eu removi e anexei novamente (* 58 e * 33). Os dois que fazem parte do pool são (provavelmente obviamente) * H4 e * QX.

PS C:\Windows\system32> Get-StoragePool -IsPrimordial $false | Get-PhysicalDisk

FriendlyName         SerialNumber    MediaType CanPool OperationalStatus  HealthStatus Usage          Size
------------         ------------    --------- ------- -----------------  ------------ -----          ----
WDC WD30EFRX-68EUZN0                 HDD       False   Lost Communication Warning      Retired     2.73 TB
WDC WD30EFRX-68N32N0 WD-WCC7K3NJ49H4 HDD       False   OK                 Healthy      Auto-Select 2.73 TB
WDC WD30EFRX-68EUZN0                 HDD       False   Lost Communication Warning      Retired     2.73 TB
ST3000DM001-1CH166   Z1F29FQX        HDD       False   OK                 Healthy      Auto-Select 2.73 TB


PS C:\Windows\system32> Get-VirtualDisk

FriendlyName  ResiliencySettingName FaultDomainRedundancy OperationalStatus HealthStatus  Size FootprintOnPool StorageEfficiency
------------  --------------------- --------------------- ----------------- ------------  ---- --------------- -----------------
Storage space Mirror                1                     Detached          Unhealthy    50 TB         3.18 TB         1,571.76%

Alguém tem alguma ideia? Pelo menos, falta uma recuperação relativamente cara? Tudo o que preciso fazer é remover as duas unidades "retiradas" do pool. Parece que é apenas um problema de banco de dados. Certamente nenhum dado deve ser perdido ou corrompido.

Oh, Windows 10, não servidor, se for importante.

    
por paul 18.09.2018 / 15:16

1 resposta

0

Tente reparar o espaço de armazenamento usando um shell PowerShell elevado.

Primeiro, é preciso recuperar os nomes dos discos físicos e virtuais:

Get-PhysicalDisk
Get-VirtualDisk

Supondo que o nome amigável de um disco físico com falha é PhysicalDisk-1 e o disco virtual é denominado Prod1 Virtual Disk (o primeiro comando pode ser supérfluo aqui):

Set-PhysicalDisk –FriendlyName 'PhysicalDisk-1' –Usage Retired
Repair-VirtualDisk –FriendlyName 'Prod1 Virtual Disk'
Remove-PhysicalDisk –FriendlyName 'PhysicalDisk-1'

O problema parece resistir a todos os métodos de reparo padrão. Portanto, é necessário recuperar os dados e reconstruí-los a partir do zero.

Abaixo estão três produtos gratuitos de recuperação de dados RAID:

por 18.09.2018 / 15:57