DevOps... O caminho! - Monitoramento de aplicações com App Insights

Post on 04-Jul-2015

213 views 0 download

description

Apresentação feita mo Microsoft Management Summit 2014 sobre DevOps e Microsoft App Insights. Evento Realizado em 29 de novembro de 2014.

transcript

Adriano Bertucci adriano.bertucci@konia.com.br Konia Tecnologia @adrianobertucci

DevOps... O caminho! Monitoria de aplicações com App Insights.

Marcus Garcia marcus.garcia@konia.com.br

Konia Tecnologia

Guilherme Cardoso guilherme.cardoso@konia.com.br

Konia Tecnologia @guilhermescard

Agenda • O famoso “DevOps” • A importância do DevOps para o negócio • Application Lifecycle Management (ALM) e o DevOps • Ferramentas • Application Insights • Recursos de Telemetria • Demonstração • Dúvidas, curiosidades e afins.

O Famoso “DevOps”!!

DevOps é... … conjunto de processos, métodos e sistemas para comunicação, colaboração e integração entre os departamentos para Desenvolvimento, Operações.

*  Wikipedia  

Os  desenvolvedores  estão  sendo  integrados  aos  

processos  de  entrega  de  serviços  operacionais  

Operações  englobou  o  novo  papel  de  serviço  

proprietário  

DevOps: Drivers

Acelerando  demandas  

de  produção  

Sa:sfação  do  cliente  

Redução  TCO/COGS  

DevOps – Agile Operations “Não se trata apenas de colaboração entre desenvolvimento e operações, trata-se de cada parte do negócio, da empresa trabalhar de maneira colaborativa para atender os objetivos do negócio.”

Patrick Dubois, Pai do DevOps

TI Dinâmica “Com TI Dinâmica, estamos reunindo as capacidades da infraestrutura básica e as plataformas de desenvolvimento para ajudar os clientes a construir sistemas integrados que vai torná-lo um parceiro mais forte para em negócio.”

Bob Muglia, VP of Server & Tools @ Microsoft, TechEd 2007

Por que DevOps agora?

Cloud  compu:ng  Novas  tecnologias  gerando  novas  oportunidades  de  valor  

Agilidade  para  compe:r  Contato  direto  com  o  consumidor  

Proliferação  de  disposi:vos  

Modernização do negócio

Por que DevOps agora?

A  TI  usada  para  modernizar  o  negócio

Equilibrar  agilidade  com  qualidade,  escala  e  compliance.  

Negócio  pensado  “pra  frente”    

Maximizar  economias  em  escalas    

Melhoria  no    :me-­‐to-­‐market  

Entrega  con:nua  de  valor    

Application Lifecycle Management

Ciclo de Vida das Aplicações Product  Backlog  

Ops  Backlog  

Monitor  Sprint  

DESENVOLVER  Idéia  de  trabalhar  o  soSware  

OPERAR  Resolução  de  Incidentes  

Gerenciamento  de  Release  

Testando  Causa  Raiz  

Não  é  possível    iden:ficar  a  Causa  Raiz  

Não  é  possível  reporuzir    Incidentes  de  Produção  

Falta  de  App  Não  é  possível  obter  Feedback  

Gerenciamento  de  Mudanças  e    Provisionamento  

O problema: Desenvolvimento X Operações Desenvolvimento

•  Dia-­‐a-­‐Dia:  Aumentar/Manter  a  viabilidade  do  negócio  através  codificação  para  suportar  as  demandas  do  mercado  

•  Quando  ocorre  um  problema:  O  obje:vo  é  entender  a  causa  raiz  para  prevenir  futuras  ocorrências.  

•  Tempo:  Sprints  (3-­‐4  semanas)  

 

Operações  

•  Dia-­‐a-­‐Dia:  Aumentar/Manter  a  disponibilidade  operacional  do  negócio  eliminando/controlando  as  alterações  

•  Quando  ocorre  um  problema:  O  obje:vo  é  restaurar  o  funcionamento  –  REBOOT!  

•  Tempo:  SLA  99.9%  (cerca  43  min/mês)    

Obje>vos,  prioridades  e  mentalidade  desalinhados!  

“Você  sabe  o  que  pode  ter  causado  a  falha?”  

“Como  eu  vou  saber,  você  que  escreveu  o  código”  

DevOps: Barreiras de Adoção

Necessidade  de  uma  mudança  cultural  

Nenhuma  troca  de  conhecimento  

Processos  dissociados  

Falta  de  automação  

A solução: Dev + Ops = DevOps

• Artefatos  compar>lhados  •  A  saída  do  processo  de  desenvolvimento  é  na:vamente  consumida  pelo  ferramental  operacional  e  vice-­‐versa  

• Automação  •  Releases  automá:cos  liberados  para  qualquer  ambiente  através  de  uma  experiência  “self-­‐service”.  

• Obje>vo  comum  •  Métricas  de  monitoramento  únicas  e  automa:zadas.  

Cultura  colabora>va,  onde  todas  as  partes  interessadas  trabalham  em  conjunto  durante  todo  o  ciclo.  

Ferramentas

Automações: Ferramentas

Para refletir... • Sua aplicação está no ar neste momento? • Está funcionando? • Será que está com algum erro? • E o desempenho?

• A resposta é.... ???

Tudo mudou. Não Acredita? Força  de  trabalho

2.6 bilhões de  dispositivos móveis em 2016; 350M usados no trabalho

Consumidores

82% da população mundial online participa de redes sociais

Comércio

70% das empresas usam ou estão investindo em soluções de nuvem

Em 2016...

Tudo está conectado... • Usuários • Clientes

•  Browser •  Devices •  Desktop

• Servidores • Banco de dados • Serviços

Portanto: Um montão de coisas pode dar errado

Bug na aplicação

Respostas do servidor muito lentas

Banco de dados sobrecarregado Serviço de terceiros

fora do ar

Funcionalidade difícil de usar

Tempo médio para detectar

Problem  

Solu:on  

Value  

Saiba antes que seu cliente Tenha uma visão 360 graus da saúde de sua aplicação e detecte problemas em produção.

Confgure  as  métricas  de  saúde  

Iden:fique  problemas  com  a  aplicação  em  produção  

Verifique  o  pulso  da  sua  aplicação  

Saiba antes que seu cliente Receba alertas automaticamente quando sua aplicação não estiver respondendo

Alertas  automá:cos  com  informações  relevantes.  

Tempo médio para reparar

Problem  

Solu:on  

Value  

Melhoria contínua •  Ident i f ique problemas que

afetam a infraestrutura de sua aplicação.

• Priorize novas funcionalidades, correções de bugs e estratégias baseadas em qualidade.

Dados  valiosos  na  ponta  dos  seusc  dedos  

Valorize  seu  inves:mento  

A solução: Application Insights

Disponível  

Minha  aplicação  está  disponível  e  com  bom  desmpenho  para  meus  usuários  ?  

Dashboard  Único  

Melhorando  Performance  

O  quê  está  errado?  Mostre-­‐me  os  problemas  de  desempenho,    

Uso  de  memória  e  exceções  

Onde  iremos  inves:r?  Mostre-­‐me  as  principais  funconalidades  e    

U:lização  dos  usuários  

Dashboards  de  Saúde   No:ficações  e  Insights   Uso  dos  Dashboards  

Application Insights e o Azure • Até a versão 1.x o Application Insights é gerenciado pelo Visual

Studio Online • A partir da versão 2.x ele estará no Microsoft Azure (Visual

Studio 2013 Update 3)

Application Insights: Dashboards

Fontes de telemetria

plataforma

infraestrutura

aplicação

1  

3  

4  

5  

6  

Monitoramento  Outside-­‐in    Pings  de  URL  e  Testes  Web  a  par:r  de  vários  pontos  de  presença  globais  

Traces  gerados  pelo  desenvolvedor  Qualquer  coisa  que  o  dev  queira  mandar  para  o  Applica:on  Insights  

Comportamento  da  aplicação  Dispensa  codificação  –  dependências  de  serviço,  consultas,  tempo  de  resposta,  exceções,  logs,  etc.  

Desempenho  da  infraestrutura  Contadores  de  desempenho  de  sistema  

“Meta-­‐telemetria”  Código-­‐fonte,  builds,  implantações,  mudanças  de  configuração  

2   Comportamento  do  usuário  Como  a  aplicação  está  sendo  u:lizada?  

Como utilizar o Application Insights?

Não  invasivo  

Alterações  no    código  

Plataformas suportadas

Server  side  

•  .NET  &  Java  •  On-­‐prem:  MS  Monitoring  Agent  

•  Azure:  VM’s  e  cloud  services  

•  ASP.NET  •  AppInsights  SDK  

Client  side  

•  Browser  (JS)  • Windows  Phone  • Windows  Store  

Em  breve  

•  Azure  Web  Sites  •  iOS  •  Android  

Demonstração

Application Insights

Alguma Pergunta pessoal?

Nosso muito Obrigado!

Até o próximo ano.

Adriano Bertucci adriano.bertucci@konia.com.br Konia Tecnologia @adrianobertucci

Marcus Garcia marcus.garcia@konia.com.br

Konia Tecnologia

Guilherme Cardoso guilherme.cardoso@konia.com.br

Konia Tecnologia @guilhermescard