“renomear” uma unidade em um pool do ZFS?

1

Por isso, estou brincando com o ZFS sobre o que eventualmente será um servidor de arquivos e consegui entrar nesse estado:

  pool: storage
 state: DEGRADED
status: One or more devices has experienced an unrecoverable error.  An
        attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
        using 'zpool clear' or replace the device with 'zpool replace'.
   see: http://zfsonlinux.org/msg/ZFS-8000-9P
  scan: scrub in progress since Wed Oct 18 17:55:08 2017
    272G scanned out of 665G at 512M/s, 0h13m to go
    8K repaired, 40.92% done
config:

        NAME                                      STATE     READ WRITE CKSUM
        storage                                   DEGRADED     0     0     0
          raidz2-0                                DEGRADED     0     0     0
            ata-Hitachi_HUA723020ALA641_YFH0ZXHA  ONLINE       0     0     0
            ata-Hitachi_HUA723020ALA641_YFH2808B  ONLINE       0     0     0
            ata-Hitachi_HUA723020ALA641_YGGLAUJA  ONLINE       0     0     0
            ata-Hitachi_HUA723020ALA641_YGGN6B7A  ONLINE       0     0     0
            sdf                                   OFFLINE      0     0     2  (repairing)

errors: No known data errors

Eu fiz isso construindo um pool raidz2 de 5 unidades, intencionalmente corrompendo um dos discos e removendo / substituindo-o de alguma forma. Mas eu acho que em algum momento eu adicionei o disco usando o rótulo sdX em vez do que eu queria, que é o rótulo "by-id".

A matriz funciona nesse estado, mas se fosse produção, eu preferiria que a nomenclatura fosse consistente e, em algum nível, estou realmente tentando entendê-la melhor.

Quais são as maneiras possíveis de "renomear" este último dispositivo? (Além de destruir completamente a piscina!)

    
por ljwobker 19.10.2017 / 00:05

1 resposta

0

Não tenho certeza se fiz isso da maneira certa ou melhor, mas a única maneira de fazer isso funcionar foi substituir o disco por um disco diferente e substituí-lo pelo original, usando o disco novo nome / ID que eu quero. Tenho 99% de certeza de que isso ocorre porque o ZFS não permite substituir um disco marcado como em uso, e o UUID do que é "sdf" acima estava no banco de dados do ZFS como um dispositivo ativo. Então, mesmo zerar o rótulo / metadados não ajudou, porque quando você tenta adicionar / substituir esse disco ainda está presente no banco de dados.

Se você substituir esse disco por algo que tenha um ID diferente, quando a substituição for concluída, ele limpará o ID do zdb. ENTÃO você pode "re-substituir" o disco com o original (porque não há mais conflito).

Estou razoavelmente seguro de que, se você puder editar manualmente o banco de dados ZFS, provavelmente poderá resolver isso, mas ainda não cheguei tão longe ...

    
por 20.10.2017 / 15:07

Tags