Como localizar arquivos com o top io no Solaris ZFS?

1

Eu tenho um servidor NFS Solaris 10 baseado em ZFS. Os discos físicos estão mais ou menos em suas taxas máximas. O desempenho é muito ruim - então vamos adicionar fusos. O NFS serve apenas como armazenamento para XenServer Hypervisors.

Eu quero saber quais discos VM (significa arquivos .vhd no armazenamento) estão produzindo a maior parte da carga. Como posso consultar o sistema de arquivos ou talvez o nfsd para obter um iostat ou top como saída com nome de arquivo e leituras / gravações. Os números podem ser absolutos ou relativos.

Eu tentei iosnoop . Isso definitivamente vai na direção certa. Infelizmente, parece não conseguir obter os nomes dos arquivos em um sistema de arquivos ZFS. Eu não tenho experiência com dtrace. Talvez já exista um roteiro por aí?

    
por Roman 15.03.2013 / 15:55

2 respostas

2

Você precisa usar o dtrace, para esse nível de introspecção. Aqui está basicamente o exemplo do nfsv3fileio.d do link , mas atualizado para ser executado ao vivo (acho que meu teste foi mínimo). Essa mesma página tem mais alguns exemplos. Você também pode usar o Google para 'nfssvrtop'.

#!/usr/sbin/dtrace -s

#pragma D option quiet

dtrace:::BEGIN
{
        trace("Tracing.. hit CTRL-C to end. Updates every 5 seconds.\n");
}

nfsv3:::op-read-done
{
        @bytes_read[args[1]->noi_curpath] = sum(args[2]->res_u.ok.data.data_len);
}

nfsv3:::op-write-done
{
        @bytes_written[args[1]->noi_curpath] = sum(args[2]->res_u.ok.count);
}

profile:::tick-5sec
{
        trunc(@bytes_read, 15);
        trunc(@bytes_written, 15);
        printf("\n%15s   %15s   %s\n", "Bytes Read/5s", "Bytes Written/5s", "Pathname");
        printa("%@15d   %@15d   %s\n", @bytes_read, @bytes_written);
        trunc(@bytes_read);
        trunc(@bytes_written);
}
    
por 22.03.2013 / 15:13
1

Você tem algum nível de cache de gravação NVRAM na sua configuração? No caso do ZFS, seria a presença de um dispositivo ZIL ? Se não, essa é provavelmente a chave para seus problemas de desempenho.

    
por 15.03.2013 / 15:57