Identificando anomalias na arquitetura de microsserviço - uma visão geral das ferramentas DevOps e SRE

Olá. Hoje gostaríamos de falar sobre a detecção de anomalias em um ambiente de microsserviço. Esta postagem é um breve resumo do nosso relatório de 40 minutos que fizemos na conferência online DevOps Live 2020 e, para não escrever uma longa leitura, decidimos focar em uma visão geral das ferramentas para detectar anomalias na distribuição de valores métricos para automatizar o monitoramento de microsserviços, que podem ser usados ​​rapidamente por qualquer equipe ...







O tema detecção de anomalias agora é muito relevante, pois com a transição para microsserviços para SRE e DevOps, a prioridade das tarefas relacionadas à conversão de alertas em um sinal significativo, reduzindo MTTD e simplificando a configuração de alertas no monitoramento de ambientes distribuídos aumentou significativamente.













, , , .

"" .







, , .







?

?







, :







  • latency ;
  • ;
  • .


"" , - , .







, :







  • ;
  • , ;
  • «» , .


, , , ?







:







  • c ;
  • APM ;
  • as a Service.


.









, Python R.







Prometheus , time series .

recording rules, , .







, , , ( " ").







, , z- (z-score) — , , .







http_requests_total, :







#    
- record: job:http_requests:rate5m
  expr: sum by (app) (rate(http_requests_total[5m]))

      
      





:







# average -   
- record: job:http_requests:rate5m:avg_over_time_1w
expr: avg_over_time(job:http_requests:rate5m[1w])

# stddev -  
- record: job:http_requests:rate5m:stddev_over_time_1w
expr: stddev_over_time(job:http_requests:rate5m[1w])

# z-
(job:http_requests:rate5m - job:http_requests:rate5m:avg_over_time_1w
) /  job:http_requests:rate5m:stddev_over_time_1w
      
      





Anomalia simples







( , latency) — , , .







— .







, .







.







, — z-.







Previsão sazonal







recording rules Prometheus .







Prometheus — PAD



Prometheus Anomaly Detector (PAD), Red Hat, , .







PAD Prometeheus , PAD recording rules, , , Prophet, .







Arquitetura PAD







PAD Grafana .







Arquitetura PAD







, proof of concept.







APM



(Application Performance Monitoring) AIOps — , , .







, .







New Relic



New Relic baseline ( ) — , EUM, .







— baseline, ( , , ).

, , , , baseline.







, .







New Relic - definindo a política de alerta sobre o desvio da linha de base







2020 — New Relic Applied Intelligence (AI).







New Relic AI KPI .







/ .







New Relic Applied Intelligence - Detecção de anomalias em métricas em vários aplicativos







AppDynamics



AppDynamics APM baseline KPI- .







baseline , , (, ) , baseline.







AppDynamics - configuração de linha de base







, , health rule .







, baseline health rule.







AppDynamics - definindo política para alerta sobre desvio da linha de base







Dynatrace



Dynatrace " " , .







Dynatrace - sinal de diminuição do tráfego







:







  • KPI


.







Dynatrace - configuração







Dynatrace - configuração







Instana



Instana " " 230 "" , KPI .







latecy, error rate, traffic ( ).







Instana - uma lista de regras que usam o algoritmo EDM para detectar anomalias







E-Divisive with Medians (EDM).







Instana - a regra detectou uma anomalia na métrica







, , baseline.

"" "" , .







baseline — .







EUM.







Instana - construtor de política de alerta com base nas métricas de linha de base da EUM







as a Service



APM , Prometheus , , SaaS .







Azure Metric Advisor



Microsoft — Azure Metric Advisor .







, , e-commerce.

(SQL Server, ElasticSearch, InfluxDB, MongoDB, MySQL, PostgreSQL ), Prometheus .







Interface do Azure Metric Advisor







Anodot



— Prometheues -.







-, SRE .







e-commerce, gaming .







Anodot







AnomalyIO



, , , , InfluxDB.







, InfluxDB, , .







Anodot









  • .
  • – , .
  • Prometheus — .
  • APM AIOps, .


.








All Articles