openfest 2014 aggressive devops
TRANSCRIPT
![Page 1: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/1.jpg)
Aggressive DevOps
Ivo Vachkov
Xi Group Ltd.
![Page 2: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/2.jpg)
What is “DevOps”?!
• Is it a technology / tooling?!
• Is it a cultural thing?!
• Is it a business thing?!
• Should I even care …
![Page 3: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/3.jpg)
DevOps
• Development + Operations
• It is technological in nature!
• It is a cultural thing!
• “The Business” needs it!
![Page 4: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/4.jpg)
A few myths about the DevOps
• Developers can do Ops
• System Administrators are obsolete
• You need it only for the Cloud
• It is supplementary activity
![Page 5: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/5.jpg)
Why should I care?!
• Because today everything is distributed …
• … and distributed systems are hard!
• Because IT complexity is constantly growing!
• Because it allows you to scale the human factor!
![Page 6: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/6.jpg)
Lets get technical!
![Page 7: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/7.jpg)
The new normal
• Not a single server anymore!
![Page 8: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/8.jpg)
The new normal
• Workload is dynamic!
![Page 9: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/9.jpg)
The new normal
• Distributed systems are complex and fragile!
• Distributed systems come with control planes!
• Service discovery is required!
• “errāre hūmānum est” (Seneca)
![Page 10: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/10.jpg)
… and from the ashes DevOps will rise, Fierce and Mighty …
![Page 11: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/11.jpg)
![Page 12: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/12.jpg)
… to help us …
• … change system architectures …
• … bring order to chaos …
• … build and deploy the product …
• … monitor everything …
• … analyze the log files …
• … educate Developers in all things Ops …
• … build data-driven control planes …
• … and much, much more …
![Page 13: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/13.jpg)
New problems require new tools
• Configuration management
– Puppet, Chef, Ansible, Salt
– Vagrant
– Fabric, Gearman
• Infrastructure-as-a-Code tools
– AWS CLI / python-boto, REST API
– Joyent SmartDataCenters / node.js sdc
– Rackspace, CloudFlare / REST API
![Page 14: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/14.jpg)
New problems require new tools
• Build and deployment automation
– Jenkins / Hudson
– Travis CI
– BuildBot
• Service Discovery
– DNS-SD
– Etsy ETCD, Heroku Doozer, Apache Zookeeper
– Consul & Serf
![Page 15: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/15.jpg)
New problems require new tools
• Full-stack application monitoring
– Graphite, Ganglia
– New Relic
– StackDriver, Signal Fuse, Boundary, AWS CloudWatch, …
• Alerting systems
– Nagios (really?!)
– Sensu
– PagerDuty, AWS SNS, …
![Page 16: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/16.jpg)
Focus: Continuous Delivery
• Jenkins is your friend!
![Page 17: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/17.jpg)
Focus: Continuous Delivery
• Build on every commit / merge!
• Deploy after every build!
• Verify / Smoke-test the deployment!
• If possible, route some real traffic to it!
![Page 18: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/18.jpg)
Focus: Monitoring
• Nagios is obsolete but relevant …
• … it can still handle quite some load …
![Page 19: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/19.jpg)
Focus: Monitoring
![Page 20: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/20.jpg)
Focus: Monitoring
• Infrastructure vitals
– CPU / Memory / Disk / etc.
• Application vitals
– Critical processes / Critical services / Queues / etc.
• External triggers & Perceived performance
– User counts / Change rates / Processing Latency
• Trending
– … when *it* will hit the fan …
![Page 21: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/21.jpg)
Focus: Monitoring
MONITOR EVERYTHING !!!
![Page 22: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/22.jpg)
Focus: Alerting
• Alert when human intervention is required!
• Automate otherwise!
• Have a direct link between alert and operational procedure!
• Account for “pager fatigue”!
![Page 23: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/23.jpg)
Focus: Alerting
• Cautionary tale: The Three Mile Island accident!
![Page 24: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/24.jpg)
Focus: Smart Control Plane
• Monitoring data is consumed by the Control Plane.
• Workloads drive the elastic behavior of the distributed system.
• Business-specific logic is used to guide operational decision making process.
![Page 25: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/25.jpg)
Focus: Smart Control Plane
• Control Plane is Data-Driven.
• Control Plane is Pro-active.
• Control Plane is “aware” of business goals.
• Control Plane must be highly-available.
![Page 26: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/26.jpg)
Focus: Smart Control Plane
![Page 27: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/27.jpg)
Focus: Smart Control Plane
• Anomaly Detection and Recovery
![Page 28: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/28.jpg)
New problems require new culture
• Operational input in all phases of the Software Development Life Cycle!
• Operational instrumentation is part of the core product!
• Enterprise silos are NO MORE!
![Page 29: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/29.jpg)
What about the “Aggressive” ?!
Well … try implementing all of the above in a typical company … ;)
![Page 30: OpenFest 2014 Aggressive DevOps](https://reader034.vdocument.in/reader034/viewer/2022042701/55a249d71a28ab8e2b8b477f/html5/thumbnails/30.jpg)
Thank you!
Q & A