segunda-feira, 15 de maio de 2017

SLES 12–Notas Gerais sobre Tunning do sistema

Estarei postando assim que possível, alguns tópicos sobre Tunning no SLES-12.

O objetivo é discutir como encontrar as razões para problemas de desempenho e fornecer meios para resolver esses problemas. Antes de começar a ajustar o sistema, certifique-se de ter descartado problemas comuns e ter encontrado a causa do problema. Deve-se também ter um plano detalhado sobre como ajustar o sistema, porque a aplicação de dicas de ajuste aleatório muitas vezes não vai ajudar e poderia piorar as coisas.

Abordagem geral ao ajustar um sistema

  1. Especifique o problema que precisa ser resolvido;
  2. Caso a degradação seja nova, identifique quaisquer alterações recentes no sistema;
  3. Identificar por que o problema é considerado um problema de desempenho;
  4. Especifique uma métrica que pode ser usada para analisar o desempenho. Essa métrica pode ser, por exemplo, latência, taxa de transferência, o numero máximo de usuários que estão logados simultaneamente ou o numero máximo de usuários ativos;
  5. Medir o desempenho atual usando a métrica da etapa anterior;
  6. Identificar o subsistema onde o aplicativo esta gastando mais tempo;
  7. Monitorar o sistema e/ou o aplicativo, assim como analisar os dados, categorize onde o tempo esta sendo gasto;
  8. Ajuste o subsistema identificado na etapa anterior;
  9. Reavalie o desempenho atual sem monitoramento usando a mesma métrica como antes;
  10. Se o desempenho ainda não for aceitável, volte a etapa 3 novamente.

Esteja Certo que problema resolver

Antes de começar a ajustar um sistema, tente descrever o problema da forma mais exata possível. Uma declaração como “O sistema é lento!” não é uma descrição útil do problema. Por exemplo, poderia fazer uma diferença se a performance do sistema precisa ser melhorada em geral ou apenas em horário de pico.

Além disso, certifique-se de que você pode aplicar uma medição ao seu problema, caso contrario você não será capaz de verificar se o ajuste foi um sucesso ou não . Você deve sempre ser capaz de comparar “antes” e “depois”. Quais métricas usar depende do cenário ou aplicativo que você esta procurando. As métricas de servidor Web relevantes, por exemplo, poderiam ser expressas em termos de:

Latência

o Tempo para entregar uma página.

Taxa de transferência

Numero de paginas atendidas por segundo ou megabytes transferidos por segundo.

Usuários Ativos

O numero máximo de usuários que podem baixar paginas enquanto ainda estão recebendo paginas dentro de uma latência aceitável.

Eliminar problemas comuns

Um problema de desempenho geralmente é causado por problemas de rede ou hardware, bugs ou problemas de configuração. Certifiques-e de descartar problemas como os listados abaixo antes de tentar ajustar seu sistema:

  • Analise a saída do systemd journal;
  • Analise (usando top ou ps) se um determinado processo se comporta mal por consumir quantidades incomuns de tempo de CPU e memoria.
  • Analise se há problemas de rede /proc/net/dev.
  • Em caso de problemas de I/O com discos físicos, certifique-se de que ele não é causado por problemas de hardware (verifique o disco com o smartmontools).
  • Certifique-se de que os trabalhos em segundo plano estão programados para serem executados em períodos em que a carga do servidor é baixa. Esses trabalhos também devem ser executados com baixa prioridade definida via nice.
  • Se o servidor  executar vários serviços utilizando o mesmos recursos, considere mover serviços para outro servidor.
  • Por ultimo, verifique se o software está atualizado.

Procurando por gargalos

Encontrar gargalos muitas vezes é a parte mais difícil ao ajustar um sistema. O SuSE Enterprise Server, assim como todos os Linux/Unix, oferece muitas ferramentas para ajuda-lo nessa tarefa. Em posts futuros estarei passando mais informações detalhadas sobre as aplicações gerais de monitoramento do sistema e a analise do arquivo de log. Se o problema requer uma analise longa e profunda, o kernel do Linux oferece meios para realizar essa analise, vou estar abordando esse assunto também futuramente.

Depois de ter coletado os dados, ele precisa ser analisado. Primeiro, verifique se o hardware do servidor (memoria, CPU, barramento) e os I/Os (disco, rede) são suficientes. Se essa condição básica forem atendidas, o sistema poderá se beneficiar de um Tuning.

Passo a passo do Tuning

Certifique-se de planejar cuidadosamente o tuning em si. É de vital importância fazer um passo de cada vez. Só fazendo isso você será capaz de medir se a mudança forneceu uma melhoria ou mesmo teve um impacto negativo. Cada atividade de ajuste deve ser medido durante um período de tempo suficiente para garantir que você possa fazer uma analise com base em dados significativos. Se você não pode medir um efeito positivo, não faça mudança permanente. As possibilidades são, que poderia ter um efeito negativo no futuro.

Nenhum comentário:

Postar um comentário