Planejamento de E / S no LVM no dm-crypt

1

Eu tenho a seguinte configuração:

  • Stock estável da Debian (kernel Linux 3.16.7) em execução no Dell PowerEdge R320
  • Dois discos rígidos SATA no RAID1 em um controlador PERC H310 Mini, visíveis como /dev/sda
  • destino dm-crypt dm-0 apoiado por /dev/sda2
  • Um único grupo de volumes LVM com um único volume físico acima mencionado dm-0
  • Vários volumes lógicos dm-1 , dm-2 etc no grupo de volumes acima, formatados como ext4

O que acontece é que quando um único processo inicia a gravação em massa em um volume lógico, todos os outros processos sofrem severamente E / S - o sistema se torna pouco responsivo (com atrasos de até 30 segundos quando a E / S está envolvida). / p>

Eu pensei que é o agendador de I / O que está encarregado de garantir que isso não aconteça. Eu vejo que sda usa cfq :

# cat /sys/block/sda/queue/scheduler 
noop deadline [cfq]

Mas todos os outros alvos do mapeador de dispositivos relatam não ter agendador de E / S:

# cat /sys/block/dm-0/queue/scheduler 
none
# cat /sys/block/dm-1/queue/scheduler 
none
# cat /sys/block/dm-2/queue/scheduler 
none

A minha pergunta é: por que não há planejamento de E / S para destinos de mapeador de dispositivo, posso ativá-lo ou como posso tornar o sistema responsivo sob carga pesada de E / S?

    
por dragonroot 01.07.2016 / 21:22

1 resposta

3

Primeiro, é perfeitamente normal que Dispositivos DM não possui nenhum planejador de E / S , como (com exceções específicas)

Sobre o baixo desempenho que você registrou, considere que seu controlador H310 não apenas não tem cache, mas até desativa o cache DRAM do disco físico , significando que seu sistema não tem como diminuir a latência via cache.

Combinar isso com criptografia, em que read-modify-write é um comportamento comum (devido ao acesso de gravação não alinhado ao contêiner criptografado), resultando em desempenho de E / S de gravação excepcionalmente ruim.

    
por 01.07.2016 / 22:00