Contadores de disco do Perfmon vs. um SAN

4

Eu não sou um cara de armazenamento. Eu sei como soletrar SAN e alguns princípios básicos além disso, mas não muito mais longe.

Os contadores de disco std são confiáveis na medição do armazenamento SAN? Temos dois servidores MS SQL (2005) conectados à mesma SAN que começaram a ter problemas ontem. Não temos controle sobre o hardware, por isso não tenho muitas informações sobre como o armazenamento está configurado, além do que vejo no LUN por meio do Veritas Enterprise Admin (ou seja, configuração básica de volume). Não tenho acesso às ferramentas para monitorar o rendimento nos controladores ou switches.

Em vez disso, eu estava executando contadores de perfmon (% de tempo de disco para físico e lógico, comprimento de fila de disco para físico e lógico). Os números de% de tempo de disco para o Disco Físico parecem ser apenas 32000% (sim, 32K).

É isso mesmo, ou estou correto em pensar que algo está se agregando abaixo do nível do LUN para fazer essa métrica e esse contador não é algo que devo usar contra o armazenamento SAN?

EDITAR:
Devemos acrescentar que descobrimos recentemente que um dos 32 módulos de cache está tendo problemas e foi retirado do mix. Eu sei que é uma Hitachi, mas não conheço nenhum detalhe para modelar.

UPDATE:
Hitachi acabou de trocar o módulo de memória defeituoso e reinicializar o cartão de porta de fibra, agora as coisas parecem estar de volta ao normal. Obrigado pela informação pessoal!

    
por squillman 26.01.2010 / 19:47

3 respostas

2

Os números aparentemente insanos de% Disk Time indicam algo, mas a forma como% Disk Time é derivado por Perfmon significa que os números > 100% não são impossíveis.

% O tempo de disco é, na verdade, um contador calculado e é proveniente de:

Avg Disk Sec/Transfer * Disk Transfers/sec. 

Avg Disk Sec / transfer leva a soma dos tempos de conclusão de todos os pedidos de veiculação no intervalo atual e divide pelo número de pedidos de veiculação que dão um final médio ao término do tempo de conclusão. Transferências de disco por segundo é simplesmente o número total de IOs completos dividido pelo intervalo.

Muitos desses pedidos de veiculação podem ter sido iniciados fora do intervalo atual para que o produto possa ser > 100%. Isso pode acontecer em qualquer sistema, mas excederá 100% mais frequentemente em matrizes de disco complexas, como uma SAN.

Por causa da maneira como é calculado% Disk Time não lhe diz muito, embora neste caso esteja dizendo que algo está errado. Calcular a utilização usando (tempo ocioso de 100%) é uma idéia melhor, pois o tempo ocioso é medido diretamente.

Os Comprimentos da Fila de Disco podem ser muito maiores do que seriam em uma configuração de armazenamento local simples, mas em geral se Comprimento da Fila for > > o número de fusos que suportam o LUN, então as coisas estão fazendo backup, especialmente se o Comprimento da Fila aumentar de forma constante por qualquer período de tempo significativo. Um valor de 10 ou até 20 em um LUN com 10-15 discos não seria um problema, mas 350 está definitivamente dizendo que algo está errado. Um Cache defeituoso ou mal configurado certamente poderia causar problemas como esse, mas poderia haver outros motivos também.

Dito isto, se você quiser saber o que você realmente tem que olhar para o monitoramento de desempenho no próprio nível de SAN e você terá que obter isso de seu pessoal de SAN. O problema pode estar nos discos no LUN (talvez um disco tenha falhado e uma reconstrução RAID esteja ocorrendo, possivelmente o cache está desabilitado por algum motivo, talvez outros LUNs distribuídos nos mesmos discos tenham prioridade mais alta e estejam ocupados), possivelmente o cache está desativado \ falhou nessa matriz específica, talvez a estrutura da SAN ou os comutadores estejam com problemas.

Há um artigo antigo e muito bom sobre Contadores de disco no Windows aqui .

    
por 26.01.2010 / 23:56
1

Quais são os seus? Comprimento da fila de leitura de disco 'e' Média Comprimento de WriteQueue do disco 'perfmon valores para esses LUNs, como cada servidor compara um ao outro.

Se você puder negociar um pouco de tempo com seus caras da SAN, você poderá executar o IOZone em ambas as máquinas e comparar os resultados.

    
por 26.01.2010 / 20:33
1

Alguns contadores são úteis para você e outros não. Coisas como a fila de disco atual informam o enfileiramento que o Windows Host vê quando envia o comando de leitura / gravação e esse comando é processado no cache da SAN. Mas, se os discos estiverem funcionando bem, você ainda poderá ver o enfileiramento no host devido a problemas de cache, problemas de comutação ou problemas de fibra.

Coisas como segundos por leitura e segundos por gravação funcionarão da mesma maneira, eles informam quanto tempo demorou para gravar no cache.

Números como E / S gravados por segundo são um pouco mais úteis. Mais uma vez, este é IO para o cache SAN, mas esse IO tem que chegar ao disco como um ponto. O mesmo vale para leituras de IO por segundo. O é lê do disco e do cache, mas se estiver no cache de leitura, ele sai do disco em algum momento.

    
por 27.01.2010 / 00:12