JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten

  • Published on
    26-Dec-2014

  • View
    306

  • Download
    2

Embed Size (px)

DESCRIPTION

 

Transcript

<ul><li> 1. Feedback aus der ProduktionEin Blick in den DevOps-Baukasten1 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtPeter Robach, bee42 solutions GmbHAndreas Schmidt, Cassini Consulting </li> <li> 2. Vorstellung2 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtFoto PeterAndreas SchmidtCassini Consultingandreas.schmidt@cassini.deTwitter @aschmidt75Peter Robachbee42 solutions gmbhhttp://www.bee42.competer.rossbach@bee42.com </li> <li> 3. 3 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWie bekommen wirdie richtigen Informationenaus den relevanten Systemenin den richtigen Kopf? </li> <li> 4. 4 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtPhasen4 30.04.2013Startup-phaseGo-LiveSkalierungs-phaseOptimierungs-phase </li> <li> 5. Im Betrieb mssen laufend Entscheidungen getroffen werden! Soll/Muss eine Komponente neu gestartet werden? Bentigt Sie mehr Ressourcen (CPU, Speicher, )? Ist eine Komponente am Verarbeitungslimitoder kann sie mehr leisten? Ist Multithreading korrekt implementiert? Liegt ein Sicherheitsvorfall vor? Sollen/Mssen ggf. Teiledes Systems abgeschaltet werden? Welche Variante einer Webseite (A/B) bringt mehr Klicks? War das Refactoring eines Anwendungsteils erfolgreich(z.B. in Bezug auf Performance)?5 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidt </li> <li> 6. 6 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtMetrikenDeployment </li> <li> 7. Entwicklung an Betrieb an Entwicklung an 7 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidt Entwicklung neuerFunktionalitten Entwicklung derpassenden Metrik(en) Sammeln der Metriken Auswertung der Daten Erstellen der Basis frEntscheidungsfindung1423 Optimierung Problemlsung ggf. Entwicklungzustzlicher Metriken Validierung derOptimierung </li> <li> 8. Metriken8 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidt </li> <li> 9. Herausforderungen9 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtMessen des Verhalten eines SystemsNutzung der Ressourcen unter realenBedingungen analysierenMessungen von Effektennach Vernderung der SoftwareFeststellen von Strungen, die Ausflle oderFehlverhalten bedingenEinschtzung von Kapazitten und TrendsBeweis des geschftlichen FortschrittsKontrolle von Zusagen (SLAs) </li> <li> 10. Was muss hergestellt werden?10 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWelche richtigen Informationen mssenbereitgestellt werden?Welche Transformationen und Kombinationenvon Werten liefern Aussagen?Welche Darstellungen werden bentigt?Welche Entscheidungen wollen wir ausden Daten ableiten?Welche Monitoringlsung muss realisiert werden? </li> <li> 11. OODA Loop11 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidt4231ObserveOrientDecideActMetrik erhebenMetrik sammelnund ordnenMetrik anzeigenund analysierenSystemverndern </li> <li> 12. 12 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtDeployment |ChangeSystemFact Event MetrikCollectorAnalyse VisualisierungFilterLogEskalationAutomatismus </li> <li> 13. Konstruktion einer Metrik13 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtMasseinheitEindeutiger Name und QuelleAbtastfrequenzUmrechungsfunktionSchwellwerte, gltige Wertebereiche </li> <li> 14. Guardian System14 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidthttp://www.guardian.co.uk/info/developer-blog/2012/oct/04/winning-the-metrics-battle </li> <li> 15. Datadog15 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidt http://www.datadoghq.com/product/ </li> <li> 16. Monitoring-Systeme bestehen aus vielen KomponentenBeispiel: Kibana16 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.Schmidthttp://kibana.org/infrastructure.html </li> <li> 17. Aufbau eines Log System17 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtLogstash (GROK)Systems with logFile Syslog GELFShipperRedis ||RabbitMQLogstash (Filter)ElasticSearchBroker / QueueIndexerStorage&amp;SearchKibanaGraylog2statsdgraphiteAnalyseM etrik </li> <li> 18. Lsungsanstze und Werkzeuge18 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWertebereitstellungCollectorStorageChartsProfilerEventsJMX, Metrics, JavaSimon, JolokiaCollectd, statsd, GraphiteNewRelic, DatadogRRDtools, RRD4j, MongoDB,OpenTSDB, HadoopMunin, Cacti, Ppn4Nagios,Graphite, Ganglia, NewRelic, DatadogDynatrace, AppDynamics, NewRelic,BoundaryNagios, Icinga, Zabbix, OMD, OpenNMS,Jboss-RHQ, HypericHQLogs Splunk, Graylog2, Kibana/logstash,loggly </li> <li> 19. Resmee19 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtEntwickler sollten konsequent Metrikenbereitstellen.Entwickler, Produktmanager und Administrationsollten ein gemeinsames System nutzen.Metriken knnen jederzeit neu in das Systemeingebracht werden.Monitoringsysteme bestehen aus viele einzelnen Teilen,die ein komplexe Zusammenspiel besitzen.Selbstadpation und Automatisierung sind notwendig. </li> <li> 20. 20 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtDie richtigen Informationen die in ein System zurVisualisierung und Analyse eingebracht werden,bringt Ihnen die Kontrolle ber das Produkt.Schnelle Reaktion auf Vernderungen vonMetriken schafft Feedback fr Entwickler undAdministratoren. </li> <li> 21. 21 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtFeedbackDas automatische und schnelle Ausrollen vonSoftwareupdates ist fr eine agileProduktentwicklung entscheidend.Deployment </li> <li> 22. 22 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtDie Strae in die Produktion kann lang sein.Entwicklungs-umgebungIntegrations-umgebungTest-umgebung Produktions-naheReferenzumgebungLive-System </li> <li> 23. 23 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtAn den bergabepunkten findet der wichtige Austausch statt.Entwicklungs-umgebungIntegrations-umgebungTest-umgebung Produktions-naheReferenzumgebungLive-SystemEntwicklungsabteilungTest-abteilungBetriebs-abteilung </li> <li> 24. Herausforderungen und Lsungsanstze24 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtIch muss meine Applikation konfigurieren. KonfigurationsmanagementDie Installationsroutinen sind nichtimmer bzw. berall gleichDeployment ManagementIch muss Teile meines System inbestimmter Reihenfolge installieren.Server OrchestrationMeine Server werden von Hand aufgesetzt. Automated ProvisioningIch merke Fehler in der Infrastruktur erst,wenn die Applikation in Benutzung ist.Test Driven- / BehaviourDriven InfrastructureJeder bergabepunkt ist irgendwie anders. Architektur vonDeployment Pipelines </li> <li> 25. Lsungsanstze und Werkzeuge25 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtKonfigurationsmanagementDeployment ManagementServer OrchestrationAutomated ProvisioningTest Driven/BehaviourDriven InfrastructureArchitektur vonDeployment PipelinesCFEngine, Puppet, ChefUC4, uDeploy, glu,Etsy Deployinator, UC4, Nolio, MarionetteCollective, RunDeck, Kickstart, Vagrant, CloudenvironmentsServerspec, rspec/Cucumber(-nagios,-puppet,-chef,)Papier + Bleistift + die richtigenPersonen DevOps </li> <li> 26. Beispiel Deployment &amp; Server Orchestration:Abhngigkeiten zwischen Komponenten26 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWebAppPortal UIAppBackendAppAdmin UIAdminBackendSuch-index DB </li> <li> 27. Beispiel Deployment &amp; Server Orchestration:Skalierung27 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWebAppPortal UIAppBackendAppAdmin UIAdminBackendSuch-index DB </li> <li> 28. Die Bandbreite fr die Tooluntersttzung ist sehr gro.28 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtSecretSauceUntersttzendeFrameworksProzess-basiertProdukteModell-basiert </li> <li> 29. 29 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtEine Installations-Engine stellt einen nachvollziehbaren, eindeutigenund qualitativ hochwertigen Weg in die Produktion dar.Installations-engineDeployment-TeamEntwicklungs-umgebungLive-SystemStage(s) </li> <li> 30. 30 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtEine durchdachte und funktionierende Deployment-Architektur ist eine sehr gute Basis fr agileProduktentwicklung.Kurze Iterationszyklenvon der Entwicklungbis in Produktion </li> <li> 31. 31 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtWie bekommen wirdie richtigen Informationenaus den relevanten Systemenin den richtigen Kopf? </li> <li> 32. Fazit32 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtAutomatisierung ist wichtig.Frh beginnen, Metriken undAutomatismen zu etablieren.Gemeinsam berlegen, welche Kennzahlenund Informationen relevant sind.Das Feedback-System muss die Fakten fr diezu treffenden Entscheidungen liefern. </li> <li> 33. Feedback aus der ProduktionEin Blick in den DevOps-Baukasten33 30.04.2013 JAX2013 | Feedback aus der Produktion | P.Robach, A.SchmidtPeter Robach, bee42 solutions GmbHpeter.rossbach@bee42.comAndreas Schmidt, Cassini Consultingandreas.schmidt@cassini.dehttps://www.xing.com/profile/Andreas_Schmidt38Twitter @aschmidt75 </li> </ul>