Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Cesar Mesquita
Infrastructure Architect
Roberto Azambuja
Software Architect
● Arquiteto de soluções cloud native
● Praticante de Devops
● treinamento funcional / séries /
cachorros
Cesar Mesquita
@c...
● Arquiteto de software
● Praticante de Devops
● Praticante de Jiu Jitsu
● Pai do Gustavo
Roberto Azambuja
@robertoazambuj...
● 34 cooperativas
● + 230 unidades de negócios
● Presente em 10 estados brasileiros
● 4 unidades centrais
● + 180 mil asso...
ŕ
● Segurança através de isolamento
● Eficiência do consumo computacional
● Mobilidade e portabilidade da aplicação
● Capaci...
● Plataforma de streaming de dados
● sistema distribuído
● high throughput
● failover e balanceamento em caso de falha
● P...
● armazenamento de dados temporais(metrics) em séries
● compactação shards mais antigos
● colunar (agregação de dados)
● S...
KAPACITOR
TELEGRAF
● real time data streaming pipeline
● reage a alterações em métricas
● integra com API do kubernetes (a...
Spring Boot Actuator
+
Spring Cloud Stream
Metrics Emitter
Gauge
● Situação atual
● Pode diminuir, aumentar ou
manter-se igual de uma coleta
para outra
Counter
● Valor acumulado
● P...
SLA sobre 90th percentile response time
desvio padrão sigmas (múltiplos) CPU
Derivativa da quantidade de reqs/sec
$ kubectl rollout undo deployment/nginx-deployment --to-revision=2
deployment "nginx-deployment" rolled back
stream
|from()
.measurement('cpu')
// create a new field called 'used' which inverts the idle cpu.
|eval(lambda: 100 - "us...
…
● Qual a ultima versão do serviço?
<bot> versão X
● Quantos restarts ocorreram no serviço X nos últimos 15 dias ?
<bot> oc...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distr...
Upcoming SlideShare
Loading in …5
×

TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distribuídos do monitoramento tradicional ao uso de inteligência artificial

176 views

Published on

Trilha Microservices How we figured out we had a SRE team at - Métricas em sistemas distribuídos do monitoramento tradicional ao uso de inteligência artificial

Published in: Education
  • Be the first to comment

TDC2017 | São Paulo - Trilha Microservices Coaching I How we figured out we had a SRE team at - Métricas em sistemas distribuídos do monitoramento tradicional ao uso de inteligência artificial

  1. 1. Cesar Mesquita Infrastructure Architect Roberto Azambuja Software Architect
  2. 2. ● Arquiteto de soluções cloud native ● Praticante de Devops ● treinamento funcional / séries / cachorros Cesar Mesquita @cesarmesquita82 cesar.mesquita@ilegra.com
  3. 3. ● Arquiteto de software ● Praticante de Devops ● Praticante de Jiu Jitsu ● Pai do Gustavo Roberto Azambuja @robertoazambuja rcazambuja@gmail.com
  4. 4. ● 34 cooperativas ● + 230 unidades de negócios ● Presente em 10 estados brasileiros ● 4 unidades centrais ● + 180 mil associados ● + R$ 10 bi em ativos
  5. 5. ŕ
  6. 6. ● Segurança através de isolamento ● Eficiência do consumo computacional ● Mobilidade e portabilidade da aplicação ● Capacidade de deploys mais rápidos ● Deploys distribuídos ● Orquestramento (scheduling) ● Gerência de configuração ● Self healing ● Multi tenancy ● Vasta biblioteca de integrações ( audit , metrics etc.)
  7. 7. ● Plataforma de streaming de dados ● sistema distribuído ● high throughput ● failover e balanceamento em caso de falha ● Persistência de mensagens em disco
  8. 8. ● armazenamento de dados temporais(metrics) em séries ● compactação shards mais antigos ● colunar (agregação de dados) ● SQL-Like Queries (queries adhoc) ● vasta biblioteca de funções analiticas ● Vasto ecossistema de integrações
  9. 9. KAPACITOR TELEGRAF ● real time data streaming pipeline ● reage a alterações em métricas ● integra com API do kubernetes (autoscale) ● coletor de métricas ● vasto número de colectores (k8s,s.o,kafka etc) ● extensivel
  10. 10. Spring Boot Actuator + Spring Cloud Stream Metrics Emitter
  11. 11. Gauge ● Situação atual ● Pode diminuir, aumentar ou manter-se igual de uma coleta para outra Counter ● Valor acumulado ● Pode apenas aumentar ou manter-se igual de uma coleta para outra
  12. 12. SLA sobre 90th percentile response time desvio padrão sigmas (múltiplos) CPU Derivativa da quantidade de reqs/sec
  13. 13. $ kubectl rollout undo deployment/nginx-deployment --to-revision=2 deployment "nginx-deployment" rolled back
  14. 14. stream |from() .measurement('cpu') // create a new field called 'used' which inverts the idle cpu. |eval(lambda: 100 - "usage_idle") .as('used') |groupBy('service', 'datacenter') |window() .period(1m) .every(1m) // calculate the 95th percentile of the used cpu. |percentile('used', 95.0) |eval(lambda: sigma("percentile")) .as('sigma') .keep('percentile', 'sigma') |alert() .id('{{ .Name }}/{{ index .Tags "service" }}/{{ index .Tags "datacenter"}}') .message('{{ .ID }} is {{ .Level }} cpu-95th:{{ index .Fields "percentile" }}') // Compare values to running mean and standard deviation .warn(lambda: "sigma" > 2.5) .crit(lambda: "sigma" > 3.0) .log('/tmp/alerts.log') // Post data to custom endpoint .post('https://alerthandler.example.com') // Execute custom alert handler script .exec('/bin/custom_alert_handler.sh') // Send alerts to slack .slack() .channel('#alerts')
  15. 15.
  16. 16. ● Qual a ultima versão do serviço? <bot> versão X ● Quantos restarts ocorreram no serviço X nos últimos 15 dias ? <bot> ocorreram 10 restarts do serviço X ● Qual a CPU média do serviço X ? <bot> a média de cpu do serviço X é de 40% ● Ocorreram erros nos logs do serviço X nos ultimos 10 minutos? <bot> não ocorreram stack traces nos últimos 10 minutos

×