Por que o RAID1 está ressincronizando tanto tempo?

0

Eu criei a matriz RAID1 de duas partições vazias idênticas.

Agora está dizendo:

$ tail -f /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid1 sdc1[1] sdb1[0]
      3906885440 blocks super 1.2 [2/2] [UU]
      [>....................]  resync =  1.6% (66113792/3906885440) finish=3821.3min speed=16750K/sec

Por isso, planeja sincronizar por três dias. Isso é normal? O que está realmente fazendo? Calculando massa de prótons com cromodinâmica quântica? Não vê que as unidades são idênticas?

UPDATE

Foi proposto abaixo que, durante a sincronização, o RAID1 é apenas copiar cegamente uma partição para outra. Se isso for verdade, então por que não é possível dizê-lo: relaxe, tudo já é idêntico, apenas marque que os dados já foram copiados.

Como em formatação rápida.

É possível?

    
por Dims 04.10.2014 / 00:40

2 respostas

1

O RAID opera abaixo do nível do sistema de arquivos. Portanto, não faz ideia de que as partições estão "vazias". É simplesmente copiar tudo de uma partição para outra. Assumindo que o número de 3,9 tera-bloco é o tamanho de cada partição, também o número de blocos na matriz final, então você tem duas partições de 2 TB cada ... isto significa que está copiando 2 TB. 2 TB / 3800 minutos chegam a cerca de 9 MB / s. Isso não é particularmente veloz, mas dado que é provável que uma implementação estúpida leia uma, escreva uma, leia uma, escreva uma, etc ... não está terrivelmente fora de linha para o software RAID. Pode até estar fazendo uma verificação de leitura após gravação.

    
por 04.10.2014 / 00:47
1

then why isn't it possible to say it: relax, everything already identical,

Como você notará na página man (man mdadm)

--assume-clean Tell mdadm that the array pre-existed and is known to be clean. It can be useful when trying to recover from a major failure as you can be sure that no data will be affected unless you actually write to the array. It can also be used when creating a RAID1 or RAID10 if you want to avoid the initial resync, however this practice - while normally safe - is not recommended. Use this only if you really know what you are doing. When the devices that will be part of a new array were filled with zeros before creation the operator knows the array is actually clean. If that is the case, such as after running badblocks, this argument can be used to tell mdadm the facts the operator knows.

    
por 09.10.2014 / 00:00

Tags