There have been lots of discussions in the cloud world about traditional 3-tier application workloads that are highly managed (i.e. Pets) and their modern web-counterpart workloads that are scalable, resilient, and fault tolerant (i.e. Cattle). But how does one migrate business critical applications from a "simple" virtualized world into a hybrid-cloud based on OpenStack?
This talk walks through moving a running web application from one such virtualized 3-tier world into an OpenStack-based cloud world and the sorts of changes that need to be considered for re-architecting the app and re-deploying it into the cloud. The steps are meant to provoke conversations and should not be considered a recipe book.
Video is here: https://www.openstack.org/summit/tokyo-2015/videos/presentation/turning-pets-into-cattle-a-demonstration-to-provoke-discussion
3. intel.com/cloudforall 3
Legal Disclaimer
OpenStack is a registered trademark of the OpenStack Foundation in the
United States, other countries or both.
Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or
other countries.
HP, Hewlett-Packard and the HP Logo are registered trademarks that belong to
Hewlett-Packard Development Company, L.P.
5. intel.com/cloudforall 5
What this talk is NOT about…
• Continuous Integration and Continuous Deployment
• Automation techniques for Infrastructure, Deployment, and Operations
• Agile Development Practices
It’s an application architecture discussion
21. intel.com/cloudforall 21
12-Factor App
Codebase: One codebase tracked in version control
Dependencies: Explicitly declare and isolate dependencies
Configuration: All configuration is stored in the environment
Backing Services: Treat all backing services as attached services
Build, Release, Run: Strictly separate build and run stages
Processes: Execute the application as one or more stateless processes
Port Binding: Export services via port binding
Concurrency: Scale out via the process model
Disposability: Maximize robustness with fast start-up and graceful shutdown
Dev/Prod Parity: Keep development, staging, and production as similar as possible
Logs: Treat logs as event streams
Admin Processes: Run admin/management tasks as one-off processes
22. intel.com/cloudforall 22
WordPress as a 12-Factor App
Codebase: One codebase tracked in version control
Dependencies: Composer and plug-ins listed in composer.json
Configuration: Configuration needs consideration! What goes to the env and how?
Backing Services: DBs, Queues, LB, SMTP, New Relic, API-services
Build, Release, Run: Excellent stage to apply automation tools
Processes: Stateless Processes means considering Sessions & Uploaded Files
Port Binding: Port binding will require nginx+PHP-FPM, and some config work
Concurrency: Consideration needed to avoid long-running PHP-FHM “daemon”
Disposability: Mostly handled by PHP-FHM
Dev/Prod Parity: Automate with VirtualBox/Vagrant & Puppet/Chef/Ansible
Logs: Log files versus stdout … not quite
Admin Processes: Even one-off processes are scripts and under version control
26. intel.com/cloudforall 26
OpenStack Enterprise Working Group
• Cattle and Pets
• Focused on identifying today's barriers for on-boarding traditional
Enterprise IT workloads into OpenStack Cloud deployments and works to
create solutions and define and advance required new OpenStack features
or capabilities.
• Mailing List:
http://lists.openstack.org/cgi-bin/mailman/listinfo/enterprise-wg
• Meeting Logistics:
Tuesday 2000 UTC; Access: (888) 875-9370, Bridge: 3; Passcode: 1278598
28. intel.com/cloudforall 28
Participating in the Intel Passport Program?
Are you playing? Be sure to get your Passport
Stamp for attending this session! See me or my
helper in the back at the end!
Not Playing yet? What are you waiting for? See
me or my helper in the back at the end and we
can get you started!
Don’t forget to return your stamped passport to
the Intel Booth #H3 to enter our raffle drawing!
3 Stamps = 1 Raffle Ticket