Lendo a utilização de iostat com ZFS zvols

0

Primeiramente, eu fiz esta pergunta 5 dias atrás no Serverfault. Espero não estar me saindo mal ao trazê-lo aqui para o Unix & Linux Stack. Também fiz esta pergunta em outros três sites não relacionados ao Stack, sem respostas. Eu planejo atualizar cada site com uma resposta, se eu conseguir responder. Aqui vamos nós.

Estou tendo dificuldade em entender a saída do iostat -x com considerações específicas para o ZFS zvols. Estou executando o Proxmox 4.4, totalmente atualizado e encontrando um desempenho geral de IO ruim.

Durante a resolução de problemas do desempenho lento, eu estava olhando para iostat -x 1 e vi esse tipo de utilização perto de ler constantemente.

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00   77.00  115.00   308.00   640.00     9.88     2.02   10.33    9.92   10.61   3.58  68.80
sdb               0.00     0.00   81.00  116.00   324.00   644.00     9.83     1.32    6.72    6.42    6.93   2.50  49.20
...
sde               0.00     0.00   77.00  117.00   308.00   640.00     9.77     1.16    6.25    5.25    6.91   2.35  45.60
sdf               0.00     0.00   78.00  116.00   312.00   640.00     9.81     1.25    6.45    5.64    7.00   2.47  48.00
...
zd32              0.00     0.00    0.00  197.00     0.00   788.00     8.00     1.09    5.54    0.00    5.54   5.06  99.60

Onde estou confuso é que a porcentagem de utilização do zd32, o zvol da minha VM, está em 100%, onde o armazenamento subjacente está em aproximadamente 50% de utilização.

Minha pergunta é: a utilização do zvol não deve refletir a utilização dos dispositivos de armazenamento subjacentes?

Para referência, existem outras VMs neste sistema, mas essa solução de problemas foi feita depois do horário, portanto, elas estavam ociosas. Essa única VM era a única VM ocupada, executando atualizações do Windows. O zpool é um RAID-Z2 de discos SATA de 7200 RPM, portanto não exatamente construído para uma velocidade incrível. Eu estou apenas pensando sobre a utilização agora.

    
por user246270 02.04.2018 / 04:27

1 resposta

0

Aqui estão algumas dicas. Sim, deve, porque o volume zfs é criado no zpool que está localizado em um dispositivo de armazenamento. Se esse armazenamento for compartilhado entre outros recursos, eles poderão afetar pools e volumes do zfs.

Infelizmente, não sei o que é Proxmox, mas% util geralmente mostra a hora em que o dispositivo tem uma fila positiva de transações. Um número de transações na fila é avgqu-sz. Esses dois valores também dependem do tipo e modelo do sistema de armazenamento que podem suportar uma fila grande. Então, pode ser um sintoma ruim ou não. Portanto, antes de tudo, é melhor olhar para: await, r / s, w / s, rkB / s, wkB / s para ver se o volume tem uma carga de trabalho real e problemas de desempenho ou não.

Existe um comando especial: zpool iostat para monitorar a estatística zpool.

    
por 11.04.2018 / 16:34