isso está no armazenamento aberto nexenta. Eu tenho um zpool que está no estado UNAVAIL por causa de alguns discos.
# zpool import -F
pool: delta
id: XYAZA
state: UNAVAIL
status: One or more devices are missing from the system.
action: The pool cannot be imported. Attach the missing
devices and try again.
config:
delta UNAVAIL insufficient replicas
raidz2-0 UNAVAIL insufficient replicas
c0t5000C500573978EBd0 ONLINE
c0t5000C50057397933d0 ONLINE
c0t5000C50057397C47d0 UNAVAIL cannot open
c0t5000C5005739997Fd0 UNAVAIL cannot open
c0t5000C50057399F87d0 ONLINE
c0t5000C5005739A90Bd0 ONLINE
c0t5000C5005739ABC7d0 UNAVAIL cannot open
c0t5000C5005739AC0Fd0 ONLINE
raidz2-1 DEGRADED
c0t5000C50057398657d0 ONLINE
c0t5000C50057398E03d0 ONLINE
c0t5000C50057398EF7d0 ONLINE
c0t5000C50057398FAFd0 ONLINE
c0t5000C5005739A39Fd0 UNAVAIL cannot open
c0t5000C5005739AAFFd0 ONLINE
spare-6 DEGRADED
c0t5000C5005739AC3Fd0 UNAVAIL cannot open
c0t5000C50057398EDBd0 ONLINE
c0t5000C5005739AE9Bd0 ONLINE
~# zpool import -FXf delta
cannot import 'delta': I/O error
Destroy and re-create the pool from
a backup source.
- Como posso fazer com que essa importação do zpool funcione bem?
- Os discos apontados como 'UNAVAIL', como posso repará-los/substituí-los?
Atualização: 7 de setembro de 2018
Depois de encontrar os discos para mapeamento de slot no Nexenta, recolocando os discos no volume delta, consegui colocar um disco ONLINE no grupo raidz2-1, mas os 3 discos no grupo raidz2-0 ainda continuam aparecendo como UNAVAIL.
# zpool import -F
pool: delta
id: XYAZA
state: UNAVAIL
status: One or more devices are missing from the system.
action: The pool cannot be imported. Attach the missing
devices and try again.
config:
delta UNAVAIL insufficient replicas
raidz2-0 UNAVAIL insufficient replicas
c0t5000C500573978EBd0 ONLINE
c0t5000C50057397933d0 ONLINE
c0t5000C50057397C47d0 UNAVAIL cannot open
c0t5000C5005739997Fd0 UNAVAIL cannot open
c0t5000C50057399F87d0 ONLINE
c0t5000C5005739A90Bd0 ONLINE
c0t5000C5005739ABC7d0 UNAVAIL cannot open
c0t5000C5005739AC0Fd0 ONLINE
raidz2-1 DEGRADED
c0t5000C50057398657d0 ONLINE
c0t5000C50057398E03d0 ONLINE
c0t5000C50057398EF7d0 ONLINE
c0t5000C50057398FAFd0 ONLINE
c0t5000C5005739A39Fd0 ONLINE
c0t5000C5005739AAFFd0 ONLINE
spare-6 DEGRADED
c0t5000C5005739AC3Fd0 UNAVAIL cannot open
c0t5000C50057398EDBd0 ONLINE
c0t5000C5005739AE9Bd0 ONLINE
Encontrei um único disco sobressalente para outro online
pool no dispositivo. Agora a questão é 1. Devo desanexar/anexar o sobressalente ao grupo raidz2-1 que possui apenas um disco UNAVAIL na subcategoria de sobressalente-6? ou 2. Devo desconectar/anexar o sobressalente ao grupo raidz2-0 que ainda possui 3 discos UNAVAIL?
Dado que este pool está offline (após a exportação) e não pode ser importado agora.
Eu olhei um pouco do histórico de como esse pool foi criado, ele foi criado com o comando abaixo no passado
zpool create -m /volumes/delta -o autoreplace=on delta raidz2 c0t5000C500573978EBd0 c0t5000C50057397933d0 c0t5000C50057397C47d0 c0t5000C5005739997Fd0 c0t5000C50057399F87d0 c0t5000C5005739A90Bd0 c0t5000C5005739ABC7d0 c0t5000C5005739AC0Fd0 raidz2 c0t5000C50057398657d0 c0t5000C50057398E03d0 c0t5000C50057398EF7d0 c0t5000C50057398FAFd0 c0t5000C5005739A39Fd0 c0t5000C5005739AAFFd0 c0t5000C5005739AC3Fd0 c0t5000C5005739AE9Bd0
Isso indica que raidz2-0 e raidz2-1 são dois pools de espelhos RAIDZ?
Se sim, devo priorizar a correção do grupo de discos raidz2-1 para ficar online em vez do raidz2-0 (que tem 3 falhas de disco)?
Responder1
- Devo desanexar/anexar o grupo sobressalente ao grupo raidz2-1 que possui apenas um disco UNAVAIL na subcategoria de sobressalente-6?
Seu disco sobressalente já foi anexado automaticamente raidz2-1
e resilverado. Normalmente, você agora o desconectaria c0t5000C5005739AC3Fd0
e removeria do sistema porque ele falhou uma vez (ou o redirecionaria para outro sistema e esperaria pelo melhor, se você não tivesse recursos sobrando).
Mas isso não iria ajudá-lo, pois raidz2-0
ainda está em baixo. Sequalquervdev em um zpool falha, todo o seu pool e todos os dados nele contidos são perdidos. Cada vdev falhará se a paridade configurada não puder ser mantida, porque discos suficientes falharam dentro dele. No seu caso, cada vdev Z2 pode suportar a perda de dois discos, mas um deles perdeu três.
- Devo desconectar/anexar o sobressalente ao grupo raidz2-0 que ainda possui 3 discos UNAVAIL?
Primeiro, você não tem sobras reais agora. E mesmo se você removesse um disco funcional raidz2-1
(não recomendado!), você ainda não ganharia nada até consertar seus discos com falha no raidz2-0
. Os dados de paridade devem vir de algum lugar e, neste caso, devem vir dos discos com falha. Se você não conseguir que pelo menos um deles funcione, sua melhor aposta seria restaurar a partir do backup.
Eu olhei um pouco do histórico de como esse pool foi criado, ele foi criado com o comando abaixo no passado.
zpool create -m /volumes/delta [...]
Isso indica que raidz2-0 e raidz2-1 são dois pools de espelhos RAIDZ?
Não, isso significa que seu pool consiste em dois vdevs distribuídos, cada um configurado com redundância raidz2 e 8 discos. Você pode perder no máximo 2 discos em cada vdev. Se você perder 3 em qualquer um deles, o jogo termina.
No ZFS, toda redundância é tratada no nível vdev. O pool é sempre distribuído por todos os vdevs existentes. Se algum vdev falhar, o pool falhará. Espelhamento é um tipo de redundância para um vdev e é incompatível com raidz1/z2/z3 (você pode misturar e combinar vdevs com diferentes tipos de redundância, mas o mais fraco definirá a força do seu pool e o desempenho será prejudicado, então este é não recomendado).
Se sim, devo priorizar a correção do grupo de discos raidz2-1 para ficar online em vez do raidz2-0 (que tem 3 falhas de disco)?
Não, você deve primeiro consertar o raidz2-0
.
Todos eles pertencem à Seagate, há uma mistura de SEAGATE, Rev. A001 e SEAGATE, Rev. 0002, tamanho 1,82 TB
Isso não ajuda agora, mas talvez no futuro: é aconselhável misturar e combinar fabricantes e modelos e até mesmo datas de fabricação, para equilibrar os casos de "lote de unidades defeituoso". Por exemplo, se você comprou 4 discos de cada um dos 4 principais fabricantes (Seagate, Western Digital, Hitachi, Toshiba) e os dividiu em 2-2 em seus vdevs, mesmo que todos os discos de um fabricante tenham falhado exatamente ao mesmo tempo, você ainda teria um pool de trabalho.