md_update_sb mantendo o RAID 1 de inicialização ocupado

md_update_sb mantendo o RAID 1 de inicialização ocupado

Instalei o Ubuntu 18.04 LTS em 4 discos rígidos em uma configuração RAID 1. Algo está mantendo os discos rígidos ocupados e eles nunca param. Coisas que fiz: - mapeei diretórios acessados ​​com frequência (/var/log, /tmp etc) como tmpfs na memória - bloqueei /bin, /sbin e várias bibliotecas via vmtouch na memória

Após essas alterações, o iotop mostra apenas o kworker acessando o array.

btrace mostra isso:

9,0    0        0   350.464025971     0  m   N md md_update_sb
9,0    0       98   350.849029580  2206  Q  WM 71305144 + 8 [kworker/u128:0]
9,0    0       99   350.849034110  2206  Q  WM 71305216 + 8 [kworker/u128:0]
9,0    0      100   350.849038452  2206  Q  WM 71371648 + 8 [kworker/u128:0]
9,0    0      101   350.849045694  2206  Q   W 0 + 8 [kworker/u128:0]
9,0    0      102   350.849048534  2206  Q  WM 40 + 8 [kworker/u128:0]
9,0    1      137   350.976982774     0  C   W 0 + 8 [0]
9,0    1      138   350.994303913     0  C  WM 40 + 8 [0]
9,0    1      139   350.997638530     0  C  WM 71303296 + 8 [0]
9,0    1      140   351.011237159   353  C  WM 71305144 + 8 [0]
9,0    1      141   351.011403025     0  C  WM 71305216 + 8 [0]
9,0    1      142   351.276814094   353  C  WM 71371648 + 8 [0]
9,0    0        0   351.599976239     0  m   N md md_update_sb

Se entendi o rastreamento corretamente, algo está atualizando o superbloco do array? O que mais posso fazer para rastrear o que mantém os discos ativos?

Atualização 1: Um RAID 6 também está configurado nos mesmos discos, mas não está montado e parece não haver acesso a ele.

cat /proc/mdstat

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md127 : active raid6 sde3[5] sdd3[4] sdc3[1] sdb3[0]
      10737154048 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUU]
      bitmap: 0/40 pages [0KB], 65536KB chunk

md0 : active raid1 sde2[5] sdd2[4] sdc2[2] sdb2[6]
      52395008 blocks super 1.2 [4/4] [UUUU]

unused devices: <none>

Atualização 2: inotifywait -r -m /rastreia todo o acesso ao sistema de arquivos. Filtrando progressivamente tudo o que já está montado na memória ...

inotifywait -r -m / @/dev @/sys @/proc @/run @/var/tmp @/tmp @/var/log @/var/spool

... mostrou arquivos de gravação instantâneos. Como não tenho conhecimento de nada que precise ser ajustado em minha instalação, limpei-o.

Responder1

De qualquer forma, seguindo os logs do inotifywait, encontrei um por um os processos (eram muitos!) Gravando no sistema de arquivos. Remapeei cada diretório para um tmpfs com um script de inicialização, copiando os arquivos para o tmpfs e remontando-o em vez do local do sistema de arquivos e, em seguida, copiando os arquivos de volta no desligamento. Isso tem ressalvas, mas servirá por enquanto.

informação relacionada