Monitorando seu banco na nuvem

Monitorando seu banco na nuvem

Nesse Tutorial eu pretendo descrever um guia de como monitorar seus servidores PostgreSQL através dos exporters proprios, gerir alertas de monitoramento e também como criar dashboards pra monitorar os servidores usandro prometheus e grafana. Minha idéia é fazer um handson de toda a solução e apresentar alguns cases aonde é possivel monitorar o banco, as apps, e também passar a monitorar algumas regras de negocio.

Apresentei essa talk no PGConf.Brasil 2019

6f3efd5477238ca18957c723854ec795?s=128

Sebastian Webber

August 01, 2019
Tweet

Transcript

  1. Monitorando seu banco na nuvem @sebawebber - Sebastian Webber

  2. About me Sebastian Webber @sebawebber

  3. Como a gente monitora as coisas?

  4. Como era a arquitetura antigamente ? Aplicação Banco de Dados

  5. Como monitoramos isso ? Aplicação Banco de Dados CPU MemÓria

    Disco REDE CPU MemÓria Disco REDE
  6. E EVOLUÍMOS Aplicação Banco de Dados

  7. Como monitoramos isso ? Aplicação Banco de Dados CPU MemÓria

    Disco REDE CPU MemÓria Disco REDE CPU MemÓria Disco REDE CPU MemÓria Disco REDE CPU MemÓria Disco REDE CPU MemÓria Disco REDE
  8. Nasce um uma nova forma de fazer as coisas -

    Micro-serviços - Nano-Serviços - Distribuídos - Pequenos - Independentes - Tecnologia heterogênea CONTAINERS
  9. Como é uma arquitetura atualmente ? APP 1 APP 3

    APP 6 APP 2 APP 2 APP 6 APP 2 APP 1 APP 7 APP 5 APP 2 APP 1 APP 5 APP 4 APP 4 APP 4 APP 3 APP 1 APP 1 APP 1 APP 2 APP 2 APP 5 APP 6 APP 4 APP 4 APP 1 APP 4 APP 1 APP 2
  10. E como monitoramos isso? APP 1 APP 3 APP 6

    APP 2 APP 2 APP 6 APP 2 APP 1 APP 7 APP 5 APP 2 APP 1 APP 5 APP 4 APP 4 APP 4 APP 3 APP 1 APP 1 APP 1 APP 2 APP 2 APP 5 APP 6 APP 4 APP 4 APP 1 APP 4 APP 1 APP 2 CPU MemÓria Disco REDE
  11. E como monitoramos isso? APP 1 APP 3 APP 6

    APP 2 APP 2 APP 6 APP 2 APP 1 APP 7 APP 5 APP 2 APP 1 APP 5 APP 4 APP 4 APP 4 APP 3 APP 1 APP 1 APP 1 APP 2 APP 2 APP 5 APP 6 APP 4 APP 4 APP 1 APP 4 APP 1 APP 2 CPU MemÓria Disco REDE
  12. E como monitoramos isso? APP 1 CPU - 100% APP

    1 CPU - 100% APP 1 CPU - 10% APP 1 CPU - 12% APP 1 CPU - 100% APP 1 CPU - 2% AVG CPU - 54%
  13. E como monitoramos isso? APP 1 CPU - 95% APP

    1 CPU - 90% APP 1 CPU - 10% APP 1 CPU - 12% APP 1 CPU - 90% APP 1 CPU - 2% AVG CPU - 49%
  14. Vamos analisar - 50% dos usuários está presenciando lentidão neste

    momento APP 1 CPU - 100% APP 1 CPU - 100% APP 1 CPU - 10% APP 1 CPU - 12% APP 1 CPU - 100% APP 1 CPU - 2%
  15. Vamos mudar a pergunta Para seu usuário: Qual o valor

    ideal para uso de CPU ? Qual o valor ideal para uso de Memória ? Qual o valor ideal para uso de Disco ? Qual o valor ideal para uso de Rede ?
  16. None
  17. O sistema tem que estar disponível O sistema tem que

    ser rápido O sistema não pode ter erros O que seu usuário quer...
  18. MAS ENTÃO QUAL A SOLUÇÃO ?

  19. SINTOMAS vs CAUSAS • Dor de garganta • Febre •

    Dor no corpo • Faringite • Laringite • E Ite, e ite, e ite
  20. Quando indicadores que representam a perspectivas do usuário estão ok

    O que significa um sistema funcionando ?
  21. SLI SLO SLA

  22. SLI Real system problems 1. Quantos ms leva pra adicionar

    um item no carrinho? 2. Quandos ms leva para aprovar a compra? 3. Média de erros ao aprovar uma compra
  23. SLO vs SLA O que queremos entregar (METAS) vs o

    que mínimo que temos de entregar (CONTRATO)
  24. TI vs Empresa

  25. “ TI vs Empresa Como realmente é”

  26. Golden signals O quick start framework Latency / Errors /

    Traffic / Saturation
  27. Golden signals O quick start framework

  28. my apps • Latency • Errors • Traffic • Saturation

    Primary database • Latency • Errors • Traffic • Saturation Read replica • Latency • Errors • Traffic • Saturation
  29. Que tipos de alerta eu devo gerar?

  30. O que eu faço com CPU/MEM/REDE?

  31. None
  32. URL do LAB https://github.com/sebastianwebber/lab-pgconf-19

  33. None
  34. Leia, leia leia

  35. Perguntas?

  36. Monitorando seu banco na nuvem @sebawebber - Sebastian Webber