SlideShare uma empresa Scribd logo
1 de 45
Baixar para ler offline
Coleta, armazenamento e visualização de
métricas em uma arquitetura de
microserviços na cloud
Rafael Souza
@rafael_psouza
○ Engenheiro de Computação
○ Engenheiro de Software
○ Arquitetura de Software, SOA, Microservices, APIs…
○ Contexto do Projeto
○ Problema
○ Overview
○ Instrumentação
○ Coleta
○ Armazenamento
○ Visualização e Alertas
Agenda
Contexto do Projeto
Tecnologias
Times por Serviço/Plataforma
Stability and Performance
Engineering
○ Testes de Performance
○ Engenharia de Caos
○ Performance tuning/troubleshooting
○ Definir/Manter componentes de telemetria
O Problema
Debug
Como definir a causa raiz dos problemas?
○ Como está a saúde dos serviços/componentes?
○ Quais são as características de performance
○ Validar suposições e torná-las explícitas
Visibilidade de saúde e
performance
Confiabilidade e eficiência
○ Até onde o sistema é confiável?
○ Existe um bom uso de recursos computacionais?
Os nossos problemas
○ Responsabilidade “sem dono”
○ Monitoramento ineficiente (não confiável)
○ Pouca visibilidade dos serviços
○ Pouca visibilidade dos componentes de infra
○ Criar confidence score (Canary Release)
Observability / Telemetry
Exposição e Coleta
Visualização e
Query
Armazenamento
TracingAlertas Logs
Componentes comuns
Instrumentação
○ Tornar métricas visíveis
○ O que expor
○ Como expor
○ Gauges and Counters
Servo
Outras opções no mundo Java
○ Dropwizard metrics
○ Spring Boot Actuator
Infraestrutura e SO
○ Push x Coleta
○ Collectd
○ Sensu checks
Coleta de Métricas
Collectd
○ Open Source
○ Escrito em C (performance)
○ Modular e Portável
○ Código sofisticado para Network
Collectd: Arquitetura
Collectd: 128 plugins catalogados
Sensu: ~160 plugins + Nagios
Armazenamento de Métricas
○ Identificador
○ Tipo
○ Valor
○ Quando? (timestamp)
O que é uma métrica?
Sensu
Elasticsearch
○ Não é uma boa ideia
○ Martelo?
○ SEARCH
TSDB
“A time series database (TSDB) is a software system
that is optimized for handling time series data”
○ Indexado por tempo
○ Queries
○ Operações matemáticas
○ Dynamic thresholds
TSDB: Vantagens
○ InfluxDB
○ OpenTSDB
○ Graphite (Whisper)
○ RIAK TS
○ DalmatinerDB
○ ...
TSDB: Opções
Visualização e Alertas
○ Correlacionar métricas - Informação
○ Métricas multiníveis
○ Relacionar dashboards e alertas
Visualização
○ Static Thresholds
○ Dynamic Thresholds
○ Detecção de anomalias
Alertas
○ Prometheus
○ Graphana
○ Riemann
○ InfluxData
Opções
Aprendizados Importantes
Obrigado!
Coleta, armazenamento e visualização de
métricas em uma arquitetura de
microserviços na cloud
Rafael Souza
@rafael_psouza
http://rafaelsouza.eng.br

Mais conteúdo relacionado

Semelhante a Monitorização de microserviços na nuvem com coleta, armazenamento e visualização de métricas

Ferramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de RedeFerramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de RedeHelder Lopes
 
Visao geral TI04 2-0
Visao geral TI04 2-0Visao geral TI04 2-0
Visao geral TI04 2-0Ale Uehara
 
Seminário Aese - Definição das ferramentas do LSS
Seminário Aese - Definição das ferramentas do LSSSeminário Aese - Definição das ferramentas do LSS
Seminário Aese - Definição das ferramentas do LSSPedrodosSantos
 
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...tdc-globalcode
 
TDC - Processamento de dados em alta escala com Node.js e AWS Lambda
TDC - Processamento de dados em alta escala com Node.js e AWS LambdaTDC - Processamento de dados em alta escala com Node.js e AWS Lambda
TDC - Processamento de dados em alta escala com Node.js e AWS LambdaDaniel Baptista Dias
 
Construção da Plataforma de dados Autônoma e em Escala
Construção da Plataforma de dados Autônoma e em EscalaConstrução da Plataforma de dados Autônoma e em Escala
Construção da Plataforma de dados Autônoma e em Escalarkwseijuurou
 
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018Renato Groffe
 
Migração de legado - Seniortec 2015
Migração de legado - Seniortec 2015Migração de legado - Seniortec 2015
Migração de legado - Seniortec 2015Rafael de Paula Souza
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoClaudio Martins
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfssuser1198af
 
Primeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSPrimeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSWemerson Januario
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 
Docker SP - Orquestrando docker via Marathon e Mesos na Konker
Docker SP - Orquestrando docker via Marathon e Mesos na KonkerDocker SP - Orquestrando docker via Marathon e Mesos na Konker
Docker SP - Orquestrando docker via Marathon e Mesos na KonkerAndré Rocha
 
Application Insights - Agosto/2016
Application Insights - Agosto/2016Application Insights - Agosto/2016
Application Insights - Agosto/2016Renato Groff
 
Application Insights - MS Weekend 2016
Application Insights - MS Weekend 2016Application Insights - MS Weekend 2016
Application Insights - MS Weekend 2016Renato Groff
 
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...Amazon Web Services
 
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo SummitDo monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo SummitAmazon Web Services
 

Semelhante a Monitorização de microserviços na nuvem com coleta, armazenamento e visualização de métricas (20)

Ferramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de RedeFerramentas de Gerenciamento de Rede
Ferramentas de Gerenciamento de Rede
 
Visao geral TI04 2-0
Visao geral TI04 2-0Visao geral TI04 2-0
Visao geral TI04 2-0
 
Seminário Aese - Definição das ferramentas do LSS
Seminário Aese - Definição das ferramentas do LSSSeminário Aese - Definição das ferramentas do LSS
Seminário Aese - Definição das ferramentas do LSS
 
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...
TDC2017 | São Paulo - Trilha NODEJS How we figured out we had a SRE team at -...
 
TDC - Processamento de dados em alta escala com Node.js e AWS Lambda
TDC - Processamento de dados em alta escala com Node.js e AWS LambdaTDC - Processamento de dados em alta escala com Node.js e AWS Lambda
TDC - Processamento de dados em alta escala com Node.js e AWS Lambda
 
Construção da Plataforma de dados Autônoma e em Escala
Construção da Plataforma de dados Autônoma e em EscalaConstrução da Plataforma de dados Autônoma e em Escala
Construção da Plataforma de dados Autônoma e em Escala
 
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018
Monitorando APIs REST com o Application Insights - NerdZão - Fevereiro-2018
 
Azure Fundamentals
Azure FundamentalsAzure Fundamentals
Azure Fundamentals
 
Migração de legado - Seniortec 2015
Migração de legado - Seniortec 2015Migração de legado - Seniortec 2015
Migração de legado - Seniortec 2015
 
SINFO Geração ALPHA
SINFO Geração ALPHASINFO Geração ALPHA
SINFO Geração ALPHA
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdf
 
Primeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JSPrimeiros passos com o framework Sencha Ext JS
Primeiros passos com o framework Sencha Ext JS
 
Prazer, computação em nuvem
Prazer, computação em nuvemPrazer, computação em nuvem
Prazer, computação em nuvem
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
Docker SP - Orquestrando docker via Marathon e Mesos na Konker
Docker SP - Orquestrando docker via Marathon e Mesos na KonkerDocker SP - Orquestrando docker via Marathon e Mesos na Konker
Docker SP - Orquestrando docker via Marathon e Mesos na Konker
 
Application Insights - Agosto/2016
Application Insights - Agosto/2016Application Insights - Agosto/2016
Application Insights - Agosto/2016
 
Application Insights - MS Weekend 2016
Application Insights - MS Weekend 2016Application Insights - MS Weekend 2016
Application Insights - MS Weekend 2016
 
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...
 
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo SummitDo monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo Summit
 

Mais de Rafael de Paula Souza (12)

Desenvolvendo chatbots com e xtreme programming
Desenvolvendo chatbots com e xtreme programmingDesenvolvendo chatbots com e xtreme programming
Desenvolvendo chatbots com e xtreme programming
 
Testes de UI (para não especialisas) com CodeceptJS
Testes de UI (para não especialisas) com CodeceptJSTestes de UI (para não especialisas) com CodeceptJS
Testes de UI (para não especialisas) com CodeceptJS
 
NLP e Chatbots
NLP e ChatbotsNLP e Chatbots
NLP e Chatbots
 
API management: um aliado para construção de APIs
API management: um aliado para construção de APIsAPI management: um aliado para construção de APIs
API management: um aliado para construção de APIs
 
Migrando um legado para micro serviços
Migrando um legado para micro serviçosMigrando um legado para micro serviços
Migrando um legado para micro serviços
 
Software Design and Technical Debts
Software Design and Technical DebtsSoftware Design and Technical Debts
Software Design and Technical Debts
 
Introduction to SaltStack
Introduction to SaltStackIntroduction to SaltStack
Introduction to SaltStack
 
Creating a blog like a hacker
Creating a blog like a hackerCreating a blog like a hacker
Creating a blog like a hacker
 
Tez
TezTez
Tez
 
YARN
YARNYARN
YARN
 
Antlr rafaelpsouza
Antlr rafaelpsouzaAntlr rafaelpsouza
Antlr rafaelpsouza
 
PicoContainer
PicoContainerPicoContainer
PicoContainer
 

Monitorização de microserviços na nuvem com coleta, armazenamento e visualização de métricas