AWS OpsWorks
Chris Barclay
Product Manager
Application Management Challenges
• Your app’s reliability and scalability are really important.
• The operational tasks needed to keep it running smoothly take time…
• As your app grows, routine operational tasks can become even more time-consuming and error-prone.
• Don’t want to tradeoff control or flexibility for ease of use.
• Provision
• Deploy
• Configure
• Monitor
• Scale
• Secure
Once upon a time…
Source: http://www.mixph.com/2008/10/how-to-make-donuts-food-business.html
This is what we want…
Source http://thethriftythings.com/2013/01/doughnut-heaven-with-krispy-kreme-2013-bloggers-summit.html
In today’s infrastructure, everything is code…
from the applications developers are writing, to
your configuration management tools, to
provisioning resources with CloudFormation
templates.
AWS OpsWorks
• Integrated application management solution for
ops-minded developers and IT admins
• Model, control and automate applications of
nearly any scale and complexity
• Management Console, SDKs, or CLI
• No additional cost
Why AWS OpsWorks?
SIMPLE
Easy to use, quickly get started and productive
PRODUCTIVE
Reduces errors with conventions and scripted configuration
FLEXIBLE
Simplifies deployments of any scale and complexity
POWERFUL
Reduce cost and time with automation
SECURE
Enables control with fine grained permissions
Example Customers
AWS OpsWorks gives us the tools we need to automate operations. We can scale Monster World, one of the largest Facebook games, to millions of users without ever needing more than two backend developers.
Jesper Richter-Reichhelm head of engineering, Wooga
Crashlytics uses AWS OpsWorks to support the rapid growth of our mobile crash reporting solution. With OpsWorks, we can focus on the development and growth of our service and not spend developer cycles on infrastructure and operational tasks.
Jeff Seibert CEO of Crashlytics
Software Deployment Options
Linux
JEE
Hibernate
Your Code
Struts
Apache
Tomcat
Linux
JEE
Hibernate
Your Code
Struts
Apache
Tomcat
Linux
JEE
Hibernate
Your Code
Struts
Apache
Tomcat
Image Container Layers OpsWorks Chef + custom AMIs
AWS Application Management Services
Elastic Beanstalk OpsWorks CloudFormation EC2
Convenience Control
Higher-level Services Do it yourself
What we’re going to show in the demo…
A stack represents the cloud infrastructure and applications that you want to manage together.
A layer defines how to setup and configure a set of instances and related resources.
Then deploy your app to specific instances and customize the deployment with Chef recipes.
Decide how to scale: manually, with 24/7 instances, or automatically, with load-based or time-based instances.
What is Chef and how does OpsWorks use it
• Chef is an open-source framework that automates software deployment and configuration.
• Whenever a change happens on your stack, or upon request, all instances are notified and recipes are run.
Recipes Lifecycle Events
Metadata
Chef recipes in action
Recipe
+
Metadata
=
Command
execute “mysql-connect” do command “/usr/bin/mysql -u#{node[:deploy][:myphpapp][:database][:username]} -p#{node[:deploy][:myphpapp][:database][:password]} #{node[:deploy][:myphpapp][:database][:database]} …
“deploy”: { “myphpapp”: { “database”: { “username”: “root”, “password”: “abcxyz”, …
“/usr/bin/mysql -uroot –pabcxyz myphpapp …
OpsWorks and Chef
• OpsWorks uses Chef Solo to configure the software on the instance
• OpsWorks provides many Chef Server functions to users. – Associate cookbooks with instances
– Dynamic metadata that describes each registered node in the infrastructure
• Supports "Push" Command and Control Client Runs
• With Chef 11, broader support for community cookbooks
Recent OpsWorks Launches
ELB support
CloudWatch metrics view
Chef 11 and Custom AMIs
Demo
Questions?
Thank you!
For more information, see us at https://aws.amazon.com/opsworks/
Top Related