Você está na página 1de 118

CLOUD

ENGINEERING & ARCHITECTURE


IT SERVICE MANAGEMENT & AIOPS

Prof . André Pontes Sampaio


profandre.sampaio@fiap.com.br
Roteiro da Disciplina

Aula 01 • Gestão de Serviços e Microserviços

Aula 02 • Métricas e Indicadores

Aula 03 • Monitoração e Observabilidade

Aula 04 • AIOPS

Aula 05 • Casos de usos


MONITORAÇÃO E OBSERVABILIDADE
Monitoração e Observabilidade

Demandas crescentes :
• Internet das coisas
• Big Data
• Inteligência artificial
Monitoração de Serviços de TI

Quais serviços Como os


devem ser clientes irão
oferecidos consumir

Como Como
monitorar o monetizar a
seu uso cobrança
Monitoração de Serviços

Testes conseguem garantir que o


serviço vai ficar no ar?
Monitoração de Serviços

Contêineres Monitoramento
aumentaram a de serviços:
complexidade requer coleta,
do MÉTRICAS armazenamento
gerenciamento e análise de
dados

+
LOGS TRACING

“If we have data, let’s look at data.


If all we have are opinions, let’s go with mine.”
Jim Barksdale, Netscape CEO / AOL
Monitoração de Serviços
Tracing
Métricas

registro de um valor em determinada data e


hora instrumenta-se
código fonte de
utilizam banco de dados de séries temporais aplicativos

possuem formatos variados avaliam anomalias


Logs

de desempenho
convertidos de texto para um
formato definido

consome muitos recursos


Visão geral de Monitoramento
Visão geral de Monitoramento
Desafios
Grande quantidade de Utilizar ML nas
dados dificulta o informações recebidas
armazenamento e a para priorização de
análise alertas
Monitoração de Serviços
4 categorias distintas de monitoramento:

Inteligência artificial para operações de TI (AIOps):


• análise dos dados coletados com tecnologia Machine Learning
para aumentar a eficácia do monitoramento

Monitoramento de desempenho de aplicativos (APM):


• monitoramento da experiência digital: tempo de resposta e
detecção de erro

Monitoramento de infraestrutura de TI (ITIM):


• monitoramento de dispositivos: servidores, armazenamento,
sistemas de gerenciamento de banco de dados e hypervisor

Monitoramento e diagnóstico de desempenho de rede


(NPMD):
• monitorar a qualidade da rede e otimizar o seu desempenho
Infraestrutura para Microserviços

Telemetria: Monitoração e Diagnóstico


Observabilidade de Serviços

Monitoração
Observabilidade de Serviços
Agregação de log:
I consolidar os diversos logs de aplicativos

Observabilidade Métricas de aplicativos:


II instrumentam o código fonte para coletar estatísticas

Registro de auditoria:
III atividades dos usuários são guardadas em um BD

Rastreamento distribuído:
IV armazena horário de início e término de cada chamadas

Rastreamento de exceções:
V registra todas as exceções, notificando os desenvolvedores

API de verificação de integridade:


VI verificar funcionamento do serviço

Log de implantações e alterações:


VII Rastrear deploys no ambiente (de produção)
Monitoração de Microserviços

Desenvolvimento ágil
trouxe
responsabilidades
compartilhadas

Quem será o
novo público
desses
relatórios?
Monitoração de Microserviços

Desenvolvimento ágil trouxe


responsabilidades DEVs agora trabalham junto
compartilhadas com OPS

De onde vêm os
dados para
Executivos de realizar essas
Negócio análises?
buscam
indicadores
chave de
desempenho
(KPIs)
Monitoração de Microserviços

SRE (Monitoração)
• Saúde e desempenho de serviços críticos de
negócios
• APIs consumidas por HTTP
• Dados sobre o uso podem gerar conhecimento
para tomar decisão

DevOps
• trabalho colaborativo para entregar o serviço
• automatiza ciclos de lançamento (CI/CD)
• uso de Service Mesh
Monitoração de Microserviços

Negócios Segurança
• BizDevOps • DevSecOps
BD de Séries Temporais
BD de Séries Temporais

Banco de dados Banco de dados


Temporal Relacional
Representação do passado, Representação do estado
presente e projeção de futuro presente de um dado

Gerenciamento temporal Gerenciamento temporal a


controlado pelo BD cargo da aplicação

Sobrescreve dados,
Requer mais espaço, pois
descartando os antigos,
possui crescimento acelerado
otimizando espaço
BD de Séries Temporais
https://db-engines.com/en/ranking_categories

1. Time Series DBMS (Prometheus, Influxdb)


2. Multivalue DBMS (Adabas) 7. Search engines (Solr, Elasticsearch)
3. Object Oriented DBMS (ObjectStore) 8. Native XML DBMS (BaseX)
4. Graph DBMS (Neo4J, JanusGraph) 9. Resource Description Framework (apache Jena)
5. Document Stores (MongoDB, CouchDB) 10. Relational DB (PostgreSQL, MySQL)
6. Key/Value Stores (Redis, RocksDB) 11. Column Stores (HBase, Cassandra)
Monitoração de Microserviços

Responder: "Está
funcionando?"

Métricas Monitoramento
caixa preta Avalia disponibilidade ou
desempenho

Responder: "Por que não está


funcionando?"
Logs Monitoramento
Tracing caixa branca
Detalhes sobre os
componentes do sistema
Monitoração de Microserviços
ELK (fornecido pela empresa Elastic)
STACKS Prometheus + Grafana
Open-source
TICK (baseado no Influxdb)

Métricas

Logs

Tracing
Monitoração de Microserviços

Avaliação de performance

APM Debugging do código fonte

Monitoração baseado em tempo de resposta


Monitoração de Microserviços

APM Avaliação de performance

CORRELATION ID : controle de transações


distribuídas
Monitoração de Microserviços

APM Avaliação de performance

Onde está a causa de lentidão no serviço?


Monitoração de Microserviços

APM Debugging do código fonte

Quais eram os parâmetros no momento da lentidão?


Monitoração de Microserviços

APM Monitoração

Tempo de carregamento das páginas


Arquitetura de uma solução APM
Monitoração de Microserviços

Elastic Beats ( log + métrica ) : Filebeat + Metricbeat

Docker + K8S logging

Service logging
(nginx, mysql)

APP logging
Demo:

https://demo.elastic.co/
Monitoração de Microserviços

Prometheus + Grafana: Métricas baseadas em API

Exemplos:

https://github.com/stefanprodan/dockprom
Monitoração de Microserviços

TICK: alertas e relatórios baseados em métricas

Visualização em tempo real


para construção de gráficos.

Banco de dados de série


temporal para métricas e
análises em tempo real.
Coleta e relata
métricas

Processamento,
Exemplo: monitoramento e
alerta baseado em
https://github.com/influxdata/TICK-docker/ séries temporais
Vamos nos Divertir!
Monitoração e
Observabilidade
O que vimos até aqui:

• Monitoramento: coleta, armazenamento e análise

• Métricas; Logs e Tracing (APM)

• Stacks: Elastic, Prometheus+Grafana e InfluxDB

• Telemetria
AIOPS

(ARTIFICIAL INTELLIGENCE
for IT OPERATIONS)
AIOPS : IA para Operações de TI

Software tradicional Inteligência artificial


Treinamento do software usando
Rotinas de programação com um
uma enorme quantidade de dados
conjunto específico de instruções
com algoritmos que aprendem a
para completar uma tarefa
executar uma tarefa
AIOPS : ML versus Deep Learning
AIOPS : ML versus Deep Learning
APRENDIZADO DE MÁQUINA

É necessário um dataset de treino para


SUPERVISIONADO ensinar o algoritmo
a predizer resultados

NÃO Não há dataset para treino, ou seja,


não há informação prévia sobre os

SUPERVISIONADO dados

Assemelha-se com o primeiro ao


aprender com as experiências
POR REFORÇO anteriores e
com o segundo ao aprender de uma
forma não supervisionada
AIOPS : ML versus Deep Learning

Como funciona Deep Learning na identificação de imagens?


AIOPS : ML versus Deep Learning

1) Encontrar um rosto
2) Identificar características únicas
3) Comparar com uma base existente
AIOPS : ML versus Deep Learning
depende do tipo de
TÉCNICAS DE MACHINE LEARNING resposta que estamos
procurando

É um tumor?
Sim/Não

Quanto custa
uma casa?

Separar
elementos
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

É um tumor?
Sim/Não

Quanto custa
uma casa?
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Quanto custa uma casa de 60 m2?


AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Quanto custa uma casa de 25 m2 com 1


quarto?

Outras variáveis
influenciam o
preço

Distância do
centro
X
Número de
quartos
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

ML é a prática de usar algoritmos em dados para fazer uma


predição com base nesses dados
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Som ambiente captado por 2 microfones


AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Qual técnica utilizar para o exemplo anterior?


AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Principais diferenças

Classes definidas anteriormente (ex: É Tumor ou Não)


Classifica amostras nas classes já existentes

Função matemática para prever um valor (ex:


Preço)

Não requer definição prévia sobre classes


Sugere grupos baseado em características
analisadas
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Separação de elementos com características diferentes


AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Features: quais características das amostras podem ser


analisadas para separar em diferentes grupos?

Tom de voz
(ex: suave)

Volume da
voz
(ex: baixo)

Timbre
(ex: agudo)
AIOPS : ML versus Deep Learning
TÉCNICAS DE MACHINE LEARNING

Exemplo 2 : Qual é o som da chuva e qual é o som das ondas


do mar?
AIOPS : ML versus Deep Learning
Machine Learning x Deep Learning:

No Deep Learning a identificação de FEATURES


é feita pelo próprio modelo
AIOPS : ML versus Deep Learning
Outra técnica de Machine Learning:
Reinforcement Learning: treina um Agente para atingir um Objetivo por
meio de Recompensas ou Punições
AIOPS : ML versus Deep Learning
Notícias sobre IA na Amazon

Fonte: Fonte:
https://noticias.uol.com.br/tecnologia/noticias/reuters/2018/10/11/voce-esta- https://noticias.uol.com.br/tecnologia/noticias/redacao/2018/11/13/testemunha-
demitido-amazon-abandona-robo-recrutador-que-virou-machista.htm incomum-alto-falante-da-amazon-podera-resolver-assassinato.htm
AIOPS : ML versus Deep Learning
RESUMO: principais Casos de Usos
Definição de AIOPS

AIOps é a aplicação de APRENDIZADO DE MÁQUINA e CIÊNCIA DE


DADOS para domínios e
PROBLEMAS DE OPERAÇÕES DE TI.

disponibilidade e correlação e análise de


monitoramento de eventos para identificar
desempenho causa de falhas
AIOPS : IA para Operações de TI

Funcionalidades
de big data

Inteligência
Insights baseados em
Artificial em
aprendizado de máquina
TI fornece

Alertas para tomada de


ação em tempo real
AIOPS : Funcionalidades em DevOps
Aprendendo através de um exemplo

Atualizando o ML: Reinforce ou Retrain

Deve-se utilizar um horizonte de


tempo representativo

se alguns dias não


forem suficientes, um
intervalo mais longo
poderá fornecer
melhores resultados
AIOPS : IA em DevOps
Análise causal Prever comportamento

Sugerir causas prováveis de Analisar o comportamento de


problemas de disponibilidade e aplicativos, infraestrutura e usuários
desempenho para prever eventos futuros

Dados do
Service Desk
Agentes de Coletores de
Infraestrutura Redes Sociais

Métricas
Logs e Métricas
coletadas por
de Aplicações
Usuários
AIOPS : Funcionalidades em DevOps
Análise de causa raiz

Quais componentes estão envolvidos com a falha?


AIOPS : Funcionalidades em DevOps
Classificação de Eventos com base na Análise de causa

Melhorar o roteamento e escalação de tickets entre as equipes

DEV OPS

A classificação utilizada Minimiza eventos


em ML auxilia a encaminhados para
Categorização de Eventos equipes erradas
AIOPS : Funcionalidades em DevOps
Prevendo utilização de recursos

Estimativa de Uso e Gestão da Capacidade


AIOPS : Profissionais de DevOps

Profissionais de TI devem estar preparados para a


adoção de AIOPS

Identificar Estabelecer
oportunidades e procedimentos para
cenários para aplicação operações com base
de ML em algoritmos
preditivos
AIOPS : Visão Geral da Arquitetura
Visualização: Insights correlacionados / analisados

Visualizações
das informações
para Tomada de
Decisão

Análises de
informações em
tempo real

Ingestão de dados
a partir de várias
fontes
Vamos nos Divertir!
O que vimos até aqui:
• Aprendizagem por Machine Learning (ML)
- Supervisionada
- Não Supervisionada
- por Reforço

• Machine Learning versus Deep Learning

• AIOPS e os Profissionais de TI

• Funcionalidades de AIOPS
CASOS DE USO
Desafios em ANALYTICS

DADOS
Desafios em ANALYTICS
QUAIS RELAÇÕES EXISTEM ENTRE
AIOPS E BIG DATA ANALYTICS ?
Desafios em ANALYTICS

COMO USAR ANALYTICS PARA


APOIAR ESTRATÉGIAS DE
CRESCIMENTO DOS
NEGÓCIOS?
Desafios em ANALYTICS

Minimizando o tempo e esforço para


validar uma ideia

Transformando uma necessidade em


algo (protótipo) que gere valor

Definindo um processo que possar ser


repetido e reutilizado
Desafios em ANALYTICS
Demandas e perguntas
das áreas de negócios

HIPÓTESES

Recursos de TI
Desafios em ANALYTICS
DATA
Demandas e perguntas
DRIVEN
das áreas de negócios DECISIONS
Desafios em ANALYTICS : ETL x ELT
Desafios em ANALYTICS : ETL x ELT

AGILIDADE NAS
DECISÕES
CASO DE USO: DATA PIPELINE

menor tempo de carga,


ELT x ETL transformação quando
necessária
Desafios em ANALYTICS

DADOS INFORMAÇÕES VALOR


Desafios em ANALYTICS

58% das empresas 85% das empresas


Mais de 85% das
já fazem ingestão possuem ingestão
empresas tem
de dados em de dados a partir
projetos de AI / ML
tempo real de fontes externas

76% das empresas


demoram pelo menos 2 79% das empresas tem pelo
meses para inserir novos menos 1 erro em seus
dados nos pipelines de relatórios mensais
dados

FONTE: https://www.wipro.com/analytics/dataops-an-antidote-for-data-value-chain-challenges/
Casos de Uso

Práticas para Projetos


de Data Science
Práticas para projetos de Data Science

FONTE: https://www.unraveldata.com/resources/dataops-aiops-and-mlops/
Práticas para projetos de Data Science

AIOps
Práticas para projetos de Data Science

Qualidade

Fonte https://docs.microsoft.com/en-us/azure/machine-learning/how-to-understand-automated-ml
Práticas para projetos de Data Science
Práticas para projetos de Data Science

Pesquisa: Qual prática/processo/metodologia


mais utilizada em projetos de Data Science?

https://www.datascience-pm.com/crisp-dm-still-most-popular/
Práticas para projetos de Data Science

CRoss Industry Standard Process for Data Mining (CRISP-DM)

BRAINSTORM
(explorar perguntas que gerem valor)

6 passos
CRISP-DM são feitos
consiste várias
em 6 vezes
passos (dentro de
cada
sprint)
VALOR
https://www.datascience-pm.com/crisp-dm-2/
Práticas para projetos de Data Science

CRISP-DM Waterfall CRISP-DM Agile

https://www.datascience-pm.com/crisp-dm-2/
O que é DATAOPS?
SCRUM
O que é DATAOPS?
DATA DRIVEN SCRUM

KANBAN

https://www.datascience-pm.com/data-driven-scrum/
Práticas para projetos de Data Science

FONTE: https://trends.google.com.br/trends/explore?date=today%205-y&q=dataops,aiops,mlops
Estudo de Caso

FONTE: https://www.gartner.com/en/information-technology/glossary/aiops-artificial-intelligence-operations
Estudo de Caso

Vimos a capacidade do ML
auxiliar na previsão e detecção Tecnologia
de anomalias que sustenta
AIOps não é
mágica

ML usa Deep Learning baseada


em rede neural artificial (ANN)
Estudo de Caso

IA poderia resolver Pelo menos por


problemas de enquanto, aplicações
desempenho, de IA existentes são
segurança e bem menos
disponibilidade ambiciosas

Qual o custo de
Se o algoritmo
redimensionar
sugerir um filme
incorretamente
ou título de
uma LUN? Ou,
música que o
excluir
cliente não gosta,
incorretamente
há risco
dados
controlado
arquivados?
Como lidar com Big Data Monitoring?
Volume de eventos é exponencial

Alta quantidade de eventos emitidos extrapola o que os


sistemas tradicionais de monitoramento são projetados
para lidar

Monitoração de contêineres trata de componentes cuja


vida é temporária e efêmera

Fluxo de eventos de componentes mudam rapidamente,


podendo gerar muitos alertas
Estudo de Caso: DevSecOps

Análise pró-ativa para Segurança


O Futuro de AIOPS

AIOps transformará muitas


dimensões das operações de TI

Técnicas modernas tendem a


melhorar a eficiência e
confiabilidade

É crescente o número de soluções que


incorporam técnicas de ML
Casos de Uso

REAL USER MONITORING (RUM)


usando Micro Frontends
Infraestrutura para Microserviços
Interface do Usuário
Digital Experience

Interface do Componentes da página: Servidor X Cliente


Usuário

Notícias Anúncios

Ranking
Digital Experience

Interface do Real User Monitoring:


Usuário executa lib javascript (injected)

https://blog.newrelic.com/engineering/how-rum-works/
Digital Experience

Interface do Servidor: envia ao cliente trechos HTML


Usuário

Cliente Microserviço

Agregação dos Implementa trechos


fragmentos de HTML HTML em cada
na página principal serviço
Digital Experience

Interface do Cliente: monta e exibe toda a página


Usuário ex: Progressive Web App

Semelhante a
aplicativos 
Funciona
off-line  com
cache local
Acessado de
qualquer
dispositivo e Suporta
navegador 
mensagens
push, HTTPS e
atualização
Digital Experience

Interface do Micro Frontends: conceito de MSA ao frontend


Usuário

Fonte: https://micro-frontends.org/
Digital Experience

Interface do Micro Frontends possuem componentes


Usuário mantidos por equipes independentes

Esse termo surgiu na empresa ThoughtWorks em 2016


Digital Experience

Interface do Principais Frameworks Javascript


Usuário

Gráfico gerado em: https://star-history.t9t.io/


Casos de Uso

Práticas de Gerenciamento:

DevOps
+
AIOps
DevOps X AIOps

Cultura DEVOPS vai além da tecnologia


DevOps X AIOps
DevOps X AIOps

Pilares DEVOPS fazem sentido em AIOPS?

Colaborar Pipeline Enxuto Falhas Conhecimento


Resumindo os Desafios...

Demanda de negócios por diferentes


tipos de sistemas.
Ritmo acelerado
Ritmos devem ser diferentes. Vantagem competitiva

Ritmo moderado Ritmo lento


Inovação do legado Eficiência operacional
Resumindo os Desafios...

TI Bimodal: 2 estilos de trabalho separados, porém coerentes


Modo 1

Modo 2
• objetivo de maior • resolver novos problemas
estabilidade
• áreas de incerteza
• requisitos são bem
compreendidos com
antecedência
• capacidade de gerenciar a
incerteza
• áreas mais previsíveis
• projetos voltados a
• adequar o ambiente inovação organizacional
legado para o mundo da
transformação digital
O que nos espera?
No futuro, TI poderá gerenciar uma
camada de agentes inteligentes de
monitoramento e automação
Vamos nos Divertir!
O que vimos até aqui:

• IA pode ajudar a resolver problemas em TI

• Casos de uso para aplicação de AIOPS

• Real User Monitoring (RUM)

• Desafios em TI Bimodal
OBRIGADO

/andre-pontes-sampaio

Copyright © | Professor André Pontes Sampaio


Todos os direitos reservados. Reprodução ou divulgação total ou parcial deste documento, é expressamente
proibido sem consentimento formal, por escrito, do professor/autor.

Você também pode gostar