Upgrade to Pro — share decks privately, control downloads, hide ads and more …

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

Sebastian Webber

August 01, 2019
Tweet

More Decks by Sebastian Webber

Other Decks in Programming

Transcript

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

    View Slide

  2. About me
    Sebastian Webber
    @sebawebber

    View Slide

  3. Como a gente monitora as coisas?

    View Slide

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

    View Slide

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

    View Slide

  6. E EVOLUÍMOS
    Aplicação Banco de Dados

    View Slide

  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

    View Slide

  8. Nasce um uma nova forma de
    fazer as coisas
    - Micro-serviços
    - Nano-Serviços
    - Distribuídos
    - Pequenos
    - Independentes
    - Tecnologia heterogênea
    CONTAINERS

    View Slide

  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

    View Slide

  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

    View Slide

  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

    View Slide

  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%

    View Slide

  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%

    View Slide

  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%

    View Slide

  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 ?

    View Slide

  16. View Slide

  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...

    View Slide

  18. MAS ENTÃO QUAL A SOLUÇÃO ?

    View Slide

  19. SINTOMAS vs CAUSAS
    ● Dor de garganta
    ● Febre
    ● Dor no corpo
    ● Faringite
    ● Laringite
    ● E Ite, e ite, e ite

    View Slide

  20. Quando indicadores que representam a
    perspectivas do usuário estão ok
    O que significa um sistema funcionando ?

    View Slide

  21. SLI
    SLO
    SLA

    View Slide

  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

    View Slide

  23. SLO
    vs
    SLA
    O que queremos entregar (METAS)
    vs
    o que mínimo que temos de entregar (CONTRATO)

    View Slide

  24. TI vs Empresa

    View Slide

  25. “ TI vs
    Empresa
    Como
    realmente é”

    View Slide

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

    View Slide

  27. Golden signals
    O quick start framework

    View Slide

  28. my apps
    ● Latency
    ● Errors
    ● Traffic
    ● Saturation
    Primary database
    ● Latency
    ● Errors
    ● Traffic
    ● Saturation
    Read replica
    ● Latency
    ● Errors
    ● Traffic
    ● Saturation

    View Slide

  29. Que tipos de alerta eu devo gerar?

    View Slide

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

    View Slide

  31. View Slide

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

    View Slide

  33. View Slide

  34. Leia, leia leia

    View Slide

  35. Perguntas?

    View Slide

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

    View Slide