Performance "estatísticas" sem PERFSTAT ou Mgr Ops
PERFSTAT é uma ótima maneira de obter algumas informações bastante detalhadas desempenho fora do filer quando você tem um desempenho ou outra questão que você não consegue colocar o seu dedo. Você precisa ter acesso ao Visualizador PERFSTAT, ou arranjar alguém para processar esta saída para você, e então você precisa de arrasto por ele.
Gerente de Operações, e mais especificamente Performance Advisor é brilhante e 99% do tempo dá-lhe os contadores que você precisa para diagnosticar o problema. Uma vez que você encontrou o seu caminho mais isso, é completamente indispensável!
Mas e se você não tem Operations Manager, ou você só quer rapidamente puxar para fora a informação sobre uma área do sistema?
Primeiras coisas que você quer olhar sysstat. Melhor amigo de todos e ótima maneira de ver "O meu sistema ocupado?". Sempre que você executar sysstat, certifique-se através dele, o "-s" modificador para que você obtenha um resumo no final da saída. Se você não definir um número de iterações (-c <num>), depois ctrl + c para quebrar a saída. "-X" é ótimo para dar todas as áreas de produção, mas pode ser um pouco larga, às vezes. "-U" é o meu favorito, pois dá-lhe leituras de utilização e esses o geralmente o mais útil quando depanagem.
A maioria das colunas são bastante auto-explicativo. CPU é ocupado%, NFS, CIFS, HTTP, FCP e iSCSI são operações de todos os contadores de protocolo. Net kB / s dentro e fora são óbvias (por referência uma interface gigabit único será feliz sustentar em torno de 80MB / s, mas pode esticar a 110/120MB/s). Disco e fita em e para fora. Assista a idade cache quando ele fica muito baixo, mas não há contadores melhores para isso. Cache hit é um contador que você quer como perto de 100% possível. Os dados mais está sendo lida a partir do cache, melhor! Tipo CP é Pontos de consistência, não vou entrar em detalhes quanto ao que estes são, há um artigo muito bom sobre isso já KB (https://now.netapp.com/Knowledgebase/solutionarea.asp?id=kb23471) . E, finalmente Utilização disco que parece causar alguma confusão. Esta é a leitura a partir do disco movimentados único no sistema, e não uma média. Essa leitura pode ir curiosamente cerca de 100% (muito parecido com CPU pode também), e isso simplesmente significa que os discos estão fazendo mais do que deveriam!
Então sysstat é uma ótima maneira de obter uma visão de alto nível de "É o meu sistema ocupado" e também lhe dá uma idéia de onde está o gargalo. Se a CPU é muito alto, mas nada mais, então é isso que está segurando o sistema. Se a utilização do disco é muito alta, então, novamente, aqui está o problema. Mas estes não são números conclusivos, e não apontar diretamente para um culpado. Por exemplo, se a utilização do disco é muito alto, pode ser necessário executar um WAFL realocar como você adicionou alguns novos discos e estes não estão segurando os dados ainda. Se o seu processador é muito alta, pode ser que você está fazendo um monte de processamento de outro como um SIS e SnapVault, ou poderia ser IO muito aleatório para que a CPU está trabalhando duro na tentativa de fazer cálculos em torno disso.
O próximo passo pode ser a olhar para statit. A "definir priv avançado" comando, e não para a simulação de coração, um grande comando para obter um instantâneo de dados durante um período. Basta executar "statit-b" no início do período de monitoramento, e então "statit-e" no final. Certifique-se de registrar sua janela de saída como você vai ter um monte de statit (mais do que o padrão do Windows e tampão Putty irá mostrar). Não há muita saída statit, e eu não vou entrar em muito detalhe em tudo isso aqui (mas talvez outro dia). A maior parte é bastante auto-explicativo realmente.
Isto leva-me sobre a verdadeira razão para este artigo, em primeiro lugar. Um dos meus comandos favoritos e, certamente, uma grande parte ignorado, "stats". Isto tem um monte de informações na ponta dos dedos ele, praticamente qualquer coisa que você pode ver em Performance Advisor e qualquer coisa que você pode relatar em PerfStats está disponível no comando stats. E, possivelmente, muito mais! "Stats" funciona muito semelhante ao sysstat na medida em que relata contadores com base nas iterações. Se você simplesmente executá-lo, vou relatar o que o sistema está fazendo naquele exato momento. Se você disser que ele seja executado a cada 5 segundos, ele vai relatar o que aconteceu ao longo desses 5 segundos.
Então, primeiro para cima, não só no e executar "show stats" sem ter alguns minutos de sobra. A saída é muito completo! Primeiro você quiser ver o que os contadores estão disponíveis. Estatísticas está dividido em "objetos", "instâncias" e "contadores". Para mostrar cada um, podemos usar "lista de stats ..."
filer01> Lista Estatísticas objetos
Objetos:
despejar
logical_replication_source
logical_replication_destination
vfiler
qtree
agregado
iscsi
fcp
cifs
volume
lun
alvo
NFSv3
ifnet
processador
disco
sistema
filer01> lista stats casos ifnet
Instâncias para nome do objeto: ifnet
B2net
Armazenamento-101
filer01> lista stats contadores ifnet
Contadores para o nome do objeto: ifnet
recv_packets
recv_errors
send_packets
send_errors
colisões
recv_data
send_data
recv_mcasts
send_mcasts
recv_drop_packets
Como exemplo acima, eu posso mostrar todos os objetos disponíveis para mim, pode consultar todas as instâncias de rede que eu tenho de configuração (2 VIFs, 1 com uma VLAN), e eu posso ver o que os contadores que eu posso relatar. Então, colocar isso junto ...
filer01> estatísticas mostram ifnet: Armazenamento-101: colisão
ifnet: Armazenamento-101: colisões: 0 / s
Grande, a minha interface de armazenamento não tem nenhum colisões de rede para o período, esta foi executado! É uma boa notícia para mim!
Se eu quiser executar este longo de várias iterações, eu posso alimentá-lo com mais opções. Nota: As opções devem ir antes da informação do contador!
filer01> estatísticas mostram-n 5-i 1 ifnet: Armazenamento-101: colisão
Colisões Instância
/ S
Armazenamento-101 0
Armazenamento-101 0
Armazenamento-101 0
Armazenamento-101 0
Armazenamento-101 0
Tão grande, durante um período de 5 segundos eu ainda não estou ganhando colisões!
Você vai notar que a partir de cima, há uma série de contadores de desempenho disponíveis, e nem todos eles têm a maioria dos nomes detalhados. Você pode consultar qualquer um destes executando "stats explicam os contadores".
filer01> Estatísticas explicar contadores ifnet colisões
Contadores para o nome do objeto: ifnet
Nome: colisões
Descrição: As colisões por segundo em interfaces CSMA
Propriedades: taxa
Unidade: per_sec
Então vamos dar um outro exemplo, eu quero olhar para leituras de latência no meu sistema de troca ...
filer01> estatísticas mostram-n 5-i volume 1: exch01_db: volume read_latency: exch01_db: volume write_latency: exch01_logs: volume read_latency: exch01_logs: write_latency
Instância read_latency write_latenc
ms ms
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
É 8 da manhã, nenhum da equipe de vendas está acordado ainda! Os títulos de coluna ficar um pouco distorcida, mas podemos ver latência de leitura na primeira coluna, escrever e latência no segundo.
Uma das minhas maiores reclamações sobre sysstat é o que acontece se eu quiser manter este funcionamento durante um período de tempo e registrar a saída? Bem, eu posso mudar "autologout opções" e deixar o meu laptop ligado na tomada, mas que nunca é uma boa idéia. "Stats" dá-lhe a capacidade de tubo de toda a produção stats direto para um arquivo. Notícias Brilliant!
filer01> estatísticas mostram-n 5-i 1-o / etc / stats.txt volume: exch01_db: volume read_latency: exch01_db: volume write_latency: exch01_logs: volume read_latency: exch01_logs: write_latency
filer01> rdfile / etc / stats.txt
Instância read_latency write_latenc
ms ms
exch01_db 0 16,00
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 8,00
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 1,00
exch01_logs 0 0
Infelizmente, isso não liberta o console, assim que este script de RSH ou SSH pode ser a melhor aposta, mas tenha cuidado quanto tempo você executa as iterações para!
Outro recurso interessante é que você pode ter alguns presets. Então, se você tem 4 servidores Exchange, cada um com 3 bases de dados, então você pode carregar todo o volume: <vol_name>: comandos de leitura / write_latency em um arquivo e execute o comando direto do stats. Os arquivos presets são arquivos XML, para que eles tenham um pouco de pensamento na escrita, mas se você já viu XML antes, então não é que complicado.
Meu arquivo XML parecido com este ...
<? Xml version = "1.0"?>
<PRESET>
<object name="volume">
instância> name="exch01_db">
<counter name="read_latency">
</ O contador>
<counter name="write_latency">
</ O contador>
<Instância />
instância> name="exch01_logs">
<counter name="read_latency">
</ O contador>
<counter name="write_latency">
</ O contador>
<Instância />
</ Object>
</ Preset>
Uma vez salvo dentro de / etc / stats / Presets como ". Xml" do arquivo, eu posso chamá-lo diretamente a partir do comando stats.
filer01> stats show-p troca-i 1-n 5
Instância read_latency write_latenc
ms ms
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0,13
exch01_logs 0 0,12
exch01_db 0 0,00
exch01_logs 0 0,00
exch01_db 0 0
exch01_logs 0 0
As possibilidades são enormes para isso, mas isso abre algo ainda melhor. Podemos agora usar "stats start" e "stats parar" para desencadear esse relato e fico com a minha consola de volta!
filer01> stats start-p troca
Estatísticas nome do identificador é 'Ind0x6920b2f0'
filer01> estatísticas mostram-I Ind0x6920b2f0
StatisticsID: Ind0x6920b2f0
volume: exch01_db: read_latency: 0ms
volume: exch01_db: write_latency: 5.14ms
volume: exch01_logs: read_latency: 0ms
volume: exch01_logs: write_latency: 0.00ms
filer01> stats-stop eu Ind0x6920b2f0
StatisticsID: Ind0x6920b2f0
volume: exch01_db: read_latency: 0ms
volume: exch01_db: write_latency: 5.36ms
volume: exch01_logs: read_latency: 0ms
volume: exch01_logs: write_latency: 0.00ms
Espero que você está começando a perceber porque eu gosto deste comando, e por isso as possibilidades de utilizar este são enormes, e que é realmente muito forte!
Uma última coisa a acrescentar, há uma série de contadores disponíveis por padrão no modo privilegiado normal, mas tente mudar para avançado, ou mesmo diag, e ver quantos contadores estão disponíveis, então! Esta é esmagadora, mas com um pouco de escavação, muito poderoso.
Uma última coisa, você pode usar curingas no "show stats" de comando, de modo a retirar todos os contadores para o meu banco de dados de troca ...
filer01> stats volume de show: exch01_db: *
volume: exch01_db: avg_latency: 0.00ms
volume: exch01_db: total_ops: 3 / s
volume: exch01_db: read_data: 0b / s
volume: exch01_db: read_latency: 0ms
volume: exch01_db: read_ops: 0 / s
volume: exch01_db: write_data: 12288b / s
volume: exch01_db: write_latency: 0.00ms
volume: exch01_db: write_ops: 3 / s
volume: exch01_db: other_latency: 0ms
volume: exch01_db: other_ops: 0 / s
Ou para mostrar todo o read_latency para todos os meus volumes ...
filer01> volume mostra stats: *: read_latency
volume: vol0: read_latency: 0ms
volume: exch01_db: read_latency: 0ms
volume: casa: read_latency: 0ms
volume: backup: read_latency: 0ms
volume: partes: read_latency: 0ms
Se você tiver alguma dúvida específica, ou que você deseja consultar como obter informações sobre o contador específico do sistema, não hesite em enviar-me mais uma pergunta. Espero que este seja útil para todos!










































stats é um grande comando a utilizar para recolha de dados sobre tendências de longo prazo também (se os mesmos dados não é exposto na MIB SNMP) - por exemplo, por dados de desempenho de volume não está disponível através do MIB SNMP - Eu tenho um blog sobre como eu que recolher e fornecer alguns gráficos exemplo em http://aditya.grot.org/2009/02/netapp-ontap-per-volume-statistics.html
Alguns grandes ferramentas disponíveis para traduzir a saída de "stats" disponível nas Comunidades da NetApp - http://communities.netapp.com/docs/DOC-2092
grande mensagem Chris, algo muito informativo e, certamente, não que é coberto em qualquer um dos documentos dos 'fundamentos' - ou mesmo os relatórios técnicos que li até agora.