logo       

Habilitando SAR para coletar dados no Solaris: msg#02674

culture.publications.dicas

Subject: Habilitando SAR para coletar dados no Solaris

Read in English
Uma Maneira Divertida de Aprender Inglês
http://novateceditora.com.br/livros/readinenglish/
--------------------------------------------------------------------

Habilitando SAR para coletar dados no Solaris
=============================================

Colaboração: Angelo Roberto Bonfieti Junior

SAR é a abreviação de *System Activity Reporter*, cuja tradução seria algo
como Relator de Atividades do Sistema, ou seja, o "dedo-duro" da utilização de
recursos da máquina. É uma ferramenta que monitora os principais dispositivos
de performance de um sistema, tais como utlização de CPU, memória e paginação.

Em ambientes Solaris, ele é instalado como parte de um pacote opcional
(SUNWaccu).

O SAR provê informações preciosas sobre a performance de um Sistema,
entretanto também pode gerar uma pequena carga na performance do sistema
sendo monitorado, dependendo da frequência com a qual estiver configurado
para ser executado.

Os dados provenientes do SAR ajudam a rastrear problemas no sistema e
identificar gargalos, e são utilizados pela própria Sun em muitas ocasiões
quando o assunto é análise de performance. Existem alguns scripts que
transformam o SAR am gráfico, que será abordado em outra oportunidade. Por
enquanto, falemos do SAR somente.


O SAR
=====

O SAR pode ser executado para mostrar recentes (mas já passadas) ou atuais
estatísticas de performance. Se você quer saber como seu sistema neste momento,
o SAR coleta informações do Kernel para reportar os numerosos aspectos de
performance de um sistema.

Segue abaixo algumas flags que podem ser usadas e o que elas coletam. Maiores
informações sobre essas flags estão no man do sar.

- -a --> uso de rotinas de acesso a arquivos
- -A --> todos os dados - equivalente a -abcdgkmpqruvwy
- -b --> atividade de buffer (leitura, escrita, cache, etc)
- -c --> chamadas de sistema (system calls read, write, fork, exec, etc)
- -d --> atividade de cada block device (por exemplo disco ou fita)
- -g --> atividade de paginação (paging out, free, scan, etc)
- -k --> atividade de KMA (Kernel Memory Allocation)
- -m --> atividade de mensagens e semáforos
- -o --> salva a saída em um arquivo binário
- -p --> atividade de paginação (paging in, requests, faults, etc)
- -q --> média de tamanho de fila enquanto ocupado e percentual de tempo ocupado
- -u --> utilização de CPU (flag padrão)
- -r --> páginas de memória e blocos de disco não utilizados
- -w --> atividades de swap e switch
- -y --> mostra atividade de TTY

Para visualizar como está a perfomance agora, basta digitar o comando sar
com o(s) parâmetro(s) desejado(s), mencionar o intervalo (em segundos)
no qual você deseja obter os dados e a quantidade desejada.

Assim, digitando


# sar 5 5


o output seria similar ao abaixo:


root@chaos >> sar 5 5

SunOS chaos 5.9 Generic_118558-13 sun4u 01/07/2006

11:30:41 %usr %sys %wio %idle
11:30:46 23 46 0 31
11:30:51 20 47 0 32
11:30:56 19 48 0 33
11:31:01 16 51 0 33
11:31:06 17 48 0 35

Average 19 48 0 33

Geralmente a primeira linha é ignorada, por conter uma estatística (as vezes
um pouco bizarra) desde o último reboot.

Rodando-o na forma retroativa, o SAR pode mostrar como estava a performance
do sistema ontem ou na semana passada. Nesse modo, o SAR coleta dados durante
as horas em que o servidor está em pleno processamento e também nos períodos
mais calmos. Normalmente procura-se obter dados das horas em que o servidor
está mais ocupado e guardá-las para posterior análise.

Se você digitar somente SAR sem nenhum parâmetro, a ferramenta vai procurar
pelo arquivo SAR do dia (geralmente em /var/adm/sa) indicando atividade de
CPU até a mais recente hora completa.


chaos$ sar
SunOS chaos 5.9 Generic_118558-13 sun4u 01/07/2006
00:00:00 %usr %sys %wio %idle
01:00:00 5 3 3 89
02:00:00 5 3 49 43
03:00:00 5 3 4 89
04:00:00 6 2 15 77
05:00:00 5 3 46 46
06:00:00 6 6 42 45

Quando estiver configurado para coletar dados automaticamente de um
sistema, o SAR o faz através de diversos binários e scripts. O comando
SADC põe um marcador no arquivo de dados indicando o começo da captação de
dados. Geralmente é executado quando o sistema sobe ou quando a captação
de dados é iniciada através do script /etc/rc2.d/S21perf

O script /usr/lib/sa/sa1 roda a cada 20 minutos durante o que são normalmente
horários de pico (Segunda a Sexta, das 8 as 18hs) e a cada hora fora desse
horário.

O script /usr/lib/sa/sa2 prepara relatórios em formato ASCII mostrando médias
e números em intervalos de horas.

Em termos de performance o SAR praticamente não agride o sistema. Isso a menos
que você queira coletar dados num intervalo de tempo razoávelmente pequeno
(digamos 5 ou 10 segundos). Isso certamente daria uma visão mais pontual da
utilização de recursos ao longo do dia, mas pode ter alguns dedobramentos
indesejáveis como contribuir com um pouco de lentidão no sistema e geração
de arquivos muito grandes (na casa de GB).

O considerado padrão, seria:


0 * * * 0-6 /usr/lib/sa/sa1
20,40 8-17 * * 1-5 /usr/lib/sa/sa1
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A


HABILITANDO O SAR
=================

Para tornar a coleta de dados através do SAR ativa, é necessário seguir alguns
procedimentos:

1. Instalar o pacote SUNWaccu (se ainda não fizer parte do seu SO)

2. Remover a marca de comentário das seguintes linhas do /etc/rc2.d/S21perf:


# if [ -z "$_INIT_RUN_LEVEL" ]; then
# set -- `/usr/bin/who -r`
# _INIT_RUN_LEVEL="$7"
# _INIT_RUN_NPREV="$8"
# _INIT_PREV_LEVEL="$9"
# fi
#
# if [ $_INIT_RUN_LEVEL -ge 2 -a $_INIT_RUN_LEVEL -le 4 -a \
# $_INIT_RUN_NPREV -eq 0 -a \( $_INIT_PREV_LEVEL = 1 -o \
# $_INIT_PREV_LEVEL = S \) ]; then
#
# /usr/bin/su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa`date +%d`"
# fi


3. Remover a marca de comentário das tarefas de cron do usuário sys com o
comando "sar -e sys"

# 0 * * * 0-6 /usr/lib/sa/sa1
# 20,40 8-17 * * 1-5 /usr/lib/sa/sa1
# 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A

4. Executar o comando "/etc/rc2.d/S21perf start"

Feito isso você pode checar se o /var/adm/sa está sendo populado com dados. Os
arquivos gerados devem ser algo como:

root@chaos >> ls -l /var/adm/sa
ls -l /var/adm/sa
total 1205120
-rw-r--r-- 1 sys sys 53033472 Jan 1 23:55 sa01
-rw-r--r-- 1 sys sys 53033472 Jan 2 23:55 sa02
-rw-r--r-- 1 sys sys 53033472 Jan 3 23:55 sa03
-rw-r--r-- 1 sys sys 53033472 Jan 4 23:55 sa04
-rw-r--r-- 1 sys sys 53033472 Jan 5 23:55 sa05
-rw-r--r-- 1 sys sys 53033472 Jan 6 23:55 sa06
-rw-r--r-- 1 sys sys 36828800 Jan 7 16:35 sa07
-rw-r--r-- 1 sys sys 14627513 Jan 2 23:06 sar02
-rw-r--r-- 1 sys sys 14627693 Jan 3 23:05 sar03
-rw-r--r-- 1 sys sys 14627733 Jan 4 23:05 sar04
-rw-r--r-- 1 sys sys 14627701 Jan 5 23:05 sar05
-rw-r--r-- 1 sys sys 14627519 Jan 6 23:05 sar06

E pronto, está sendo gerado um relatório de analíse de consumo de recursos
do seu servidor.

Uma dica importante é monitorar o primeiro dia e, se possível, a primeira
semana, certificando-se de que a política de limpeza desses arquivos está
sendo feita adequadamente, de forma que o /var não fique cheio e possa
comprometer seu sistema.

--------------------------------------------------------------------
Veja também do arquivo da Dicas-L:

"Workrave: Alertas para pausas no trabalho"
http://www.dicas-l.com.br/dicas-l/20040628.php

"Transformando seu Linux em um roteador"
http://www.dicas-l.com.br/dicas-l/20050309.php

"Recuperando partições danificadas"
http://www.dicas-l.com.br/dicas-l/20050621.php

"Java no Mozilla"
http://www.dicas-l.com.br/dicas-l/20040325.php

"Galeria de Imagens"
http://www.dicas-l.com.br/dicas-l/20040807.php

--------------------------------------------------------------------
Colabore com a Dicas-L. Publique seu comentário sobre esta mensagem
em http://www.Dicas-L.com.br/dicas-l/20060725.php
--------------------------------------------------------------------
As mensagens da lista Dicas-L são veiculadas diariamente
para 27479 assinantes.

Todas as mensagens da Dicas-L ficam armazenadas em
http://www.Dicas-L.com.br/dicas-l/

A redistribuição desta e outras mensagens da lista Dicas-L pode
ser feita livremente segundo a licença Creative Commons
http://creativecommons.org/licenses/by-nc-sa/2.0/br/deed.pt

Dicas-L: Uma dica por dia desde 3 de março de 1997
--------------------------------------------------------------------



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise