le monitoring à l'heure de devops et big data

35
@cfalguiere #breizhcamp Le monitoring à l’heure de DevOps et BigData Claude Falguière BreizhCamp 2014 1

Upload: claude-falguiere

Post on 28-Nov-2014

1.197 views

Category:

Data & Analytics


1 download

DESCRIPTION

Présentation donnée au Breizhcamp le 23 juin 2014 Le monitoring d'applications ... pas vraiment hype comme sujet. Et pourtant c'est un domaine en mutation parce que le déploiement continu et la démarche DevOps modifient les échanges d'informations avec la production et aussi parce qu'il est maintenant possible stocker massivement les informations collectées. Je vous propose d'explorer ces sujets autour de quelques exemples.

TRANSCRIPT

Page 1: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

Le monitoring à l’heure de DevOps et BigDataClaude FalguièreBreizhCamp 2014

1

Page 2: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

monitoring

monitor

Surveiller

AnticiperAméliorer

Information

2

Page 3: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

Claude Falguière

coach devops

performances applicatives, Java

Paris JUG et comité de programme Devoxx

Devoxx4Kids France

3

Page 4: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

dédicace

de la mesure de la vitesse des galaxie à la découverte de la matière noire

savoir remettre en cause nos modèles mentaux

mesurer correctement

4

Page 5: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

monitoring ?

5

Page 6: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

monitoring ?

A - Qu’est ce que c’est ?

B - C’est le problème de la production

C - Mais c’est quoi ces logs de merde !

D - Oh non ! ça va tuer les perfs

E - Je veux en faire quand je serai grand

F - Lean Startup

6

Page 7: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

devops

surveillance

alerte

audit

7

Page 8: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

lean startupbuild

measure learn

continuous improvement

8

Page 9: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

big data

user experience -> performancecatégorisation, segmentation

tests d’hypothèse, A/B testing

9

Page 10: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

measure everything

décider sur la base de faits et de mesure

10

Page 11: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

user stories

surveiller

alerter

auditer

anticiper

améliorer

11

Page 12: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

SLA, exigences techniques

quelles sont les contraintes

quels sont les risques

critère de succès = indicateur

12

Page 13: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

du relevé à l’informationnombre

mesure

métrique

indicateur

information

compréhension

+ unité

+ contexte

+ range

+ description

+ lecteur

13

Page 14: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

on s’y met

14

Page 15: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

quoi

Surveiller

Alerter

Auditer

Prévoir

Améliorer

la présence

l’usage

les ressources qui peuvent être une limite

physique : CPU, mémoire, disque, réseau...

configurable : pools, queues, caches

les autres

les erreurs

15

Page 16: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

quoi ce qui améliore la compréhension du processus

répartition du temps

masses et répétitions

parcours utilisateur

contexte

écouter les utilisateurs, les ops, les devs

écouter les données

Surveiller

Alerter

Auditer

Prévoir

Améliorer

16

Page 17: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

anticiper

warnings

seuils

trends et capacity planning

baseling

CEP (complex event processing)

17

Page 18: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

proactivité

design for failure

auto-adaptation

resilience

18

Page 19: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

flexibilité

collecte unique

restitutions multiples

la production

le dev

le business

19

Page 20: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

sous quelle forme

taux / valeur

relatif / absolu

unité

à quel endroit

périodicité

20

Page 21: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

échantillonnage

perte d’informations

à la prise de mesure

agregation / compactage

à la restitution

21

Page 22: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

dashboard

activité et destinataire

niveau de synthèse

rapprochement

prochaine action

22

Page 23: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

validation du monitoring

représentativité

fiabilité et cohérence

compréhension par le destinataire

réponse adaptée

23

Page 24: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

les outils

24

Page 25: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

les logs

framework (Log4j, ...)

non bloquants

compréhensibles par le destinataire

25

Page 26: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

comment irriter un Ops ?1 Go de logs par jour

plusieurs formats dans le même fichier

et ça :2013-12-17 05:53:16,208 INFO [org.jboss.mail.MailService] (main) Mail Service bound to java:/Mail2013-12-17 05:53:16,247 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error installing to Real: name=vfsfile:/opt/jboss/jbepp-51/profiles/fr-si-ba-a/custom-deploy/oneweb-fr-bas/oneweb-fr-ear-service.xml state=PreReal mode=Manual requiredState=Realorg.jboss.deployers.spi.DeploymentException: Error deploying: jboss:type=Service,name=OneWebSystemProperties at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49) at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:118) at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46) at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62) at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:55) at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179)

26

Page 27: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

les sondes

périodicité

contentions accidentelles

continuité

27

Page 28: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

fonctionnement

AppAlerting

Logs

Analyseurde logs

Opérateur

Sonde

28

Page 29: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

alerting

Nagios, Zabbix, Patrol, ...

Agrégration d’alertes

Diffusion sur différent médias

Escalades

29

Page 30: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

gestion de logs

Syslog-ng

Apache Flume

Logstash (Elastic Search)

Splunk

30

Page 31: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

fonctionnement

App

Alerting

Logs

Analyseurde logs

OpérateurCollecte

HistorisationSonde

31

Page 32: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

historisation / graphing

RRD Tools

Whisper et Graphite

Elastic Search et Kibana

Datomic

32

Page 33: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

profilage et diagnostic

Sondes spécifiques

VisualVM

JAMon, Java Melody

Introscope, New Relic

AppDynamics

...

33

Page 34: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

vers le BI et au delà

suivi de la qualité, de l’usine logicielle, de l’expérience utilisateur, du time to market du projet

utilisation des mêmes outils statistiques ou de reporting

34

Page 35: Le monitoring à l'heure de DevOps et Big Data

@cfalguiere#breizhcamp

conclusion

design for failure

identifiez les user stories de monitoring

confrontez vos mesures à la réalité

35