application centric approach to devops
DESCRIPTION
The experience of automating continuous delivery processes with Chef and Cloudify through an application-centric approach to DevOps, and how this model transformed PaddyPower's traditional IT into DevOps, keeping their Devs and their Ops happy. References: --------------- - Cloudify & Chef : http://www.cloudifysource.org/guide/2.7/integrations/chef_documentation - Blog Post: http://www.cloudifysource.org/2013/10/27/application_centric_approach_to_devops.html - Earlier Video Presentation : http://www.youtube.com/watch?v=YhDNKyP_s7UTRANSCRIPT
Application Centric DevopsOrchestration, DevOps Automation
& What’s in Between
Nati Shalom @natishalomUri Cohen @uri1803
What It Really Takes to
Deploy and Manage Apps
Provision
Install
Configure
Deploy
Monitor
Scale
Quite often we end up with this..
LoadBalancer Web DataBase
LoadBalancer Web DataBase
Your Journey Start Here
Your Journey Start Here
Application Centric Infrastructure Centric
Map Application Dependencies, SLA (performance, scaling, HA)
Map Application To machine instances
Environment Creation
Code Push Monitoring & Alarming
Repairing Scaling
Technical Perspective
• Infrastructure Centric
• Application Centric
Environment Creation
SW Infra. Setup & Config
Code Push Monitoring & Alarming
Repairing Scaling
INFRASTRUCTURE CENTRIC TOOLS
Configuration Management
Defined
Configuration Management
Defined
• Directive & Directives Script • Master Node &
Children Nodes • Remote Execution
APPLICATION CENTRIC TOOLS
App Centric Devops – the AWS way…
Cloudify provide the equivalent of Amazon OpsWork on OpenStack and other clouds
App Centric Devops – the AWS way…
App Centric Devops – the Cloudify way…1 Upload your recipe
2 Cloudify creates VMs & installs agents
3 Agents install and manage your app
4 Cloudify automates monitoring, healing and scaling
DevOps Automation: PaddyPower
• Ireland's largest online betting service.
• Use Cloudify for Continues Delivery
• Stack: Cloudify, Chef, Cloud Stack• Reason for Choosing Cloudify
– PAAS strives to abstract provisioning and deployment thus reducing complexity.
– PAAS constrains applica'ons to use features provided by the platform.
– Cloudify was geared to work in DevOps environment
PaddyPower View
PUTTING APPLICATION AND CONFIGURATION CENTRIC TOOLS TOGETHER
Cloudify Chef Integration(Deployment)
• Install Chef Agent• Setup Chef Server• Support existing Chef
Recipes/Cookbooks• Remote Execution• Application
Dependency• Cloud portability
Cloudify Chef Integration
(Post Deployment)
Cloudify Chef Integration(Advances)
• Advanced Orchestration– Self Healing– Auto-Scaling– DR Automation– DevOps Policies*
• Standard Recipe (Yaml/Tosca)*
Remote Execution
Update
Orchestrator
Jenkins
API
Update
LoadBalancer Web DataBase
Update war()Reload()
snapshot()Alter-table()
addNode()removeNode()
Monitoring Alarming
Example: Running MySQL
References
• Cloudify Project Home Page: Cloudifysource.org • Cloudify & Chef Integration• Blog Post: • Earlier Video Presentation
Thank You!