SlideShare a Scribd company logo
AWS OpsWorks & Chef
Jonathan Weiss
@jweiss
January 14th, 2014

© 2014 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks
Integrated Application management on EC2
•  EC2, ELB, VPC, EIP, EBS, …
•  Chef-Solo & Built-in layers
•  Monitoring with CloudWatch
•  Auto Scaling, Auto Healing
•  Fine-grained permissions
•  App deployment
AWS Application Management Services
Higher-level Services

Elastic Beanstalk
Convenience

OpsWorks

Do it yourself

CloudFormation

EC2
Control
How does it work?
The Heart of the Service
Agent on each
Agent on each
Amazon EC2 instance
EC2 instance
Understands a set of commands that are
triggered by AWS OpsWorks.
The agent then runs a Chef solo run.
Life Cycle Events
setup

configure

deploy

undeploy

shutdown
A Stack
A Stack with Layers
A Stack with Layers and Instances
Enough talking

DEMO TIME
Chef in AWS OpsWorks
vs.
Chef Server
Main Differences
• 
• 
• 
• 
• 

Chef Setup
One run vs. discrete events
Push vs. pull
Discovery: search & AWS OpsWorks attribute tree
Data bags
Chef Setup
Chef Solo
&
OpsWorks Backend

Chef Client
&
Chef Server
control

simple

Customization Options
Built-in layers
Override Chef attributes via custom JSON
Override Chef attributes via custom cookbook
Overwrite Chef template file
Deploy hooks
Provide custom recipe to extend built-in layer
Provide custom recipe to create custom layer
Life Cycle Events
•  Give you fine-grained control
•  Faster to execute
•  Context
Push vs. Pull
•  On-demand and automatic
•  Respond immediately to changes in the stack
Discovery: Chef Search
AWS OpsWorks does not offer attribute search
Alternative:
node[:opsworks] with similar capabilities
to partial_search
AWS OpsWorks Attribute Tree
Find all Rails application servers
rails_servers = node['opsworks']['layers']['rails-app']['instances']
rails_ips = rails_servers.map{|i| i['private_ip'] }
template "/etc/rails-server.conf" do
...
variables({
:ips => rails_server_ips
})
end
Encrypted Data Bags

•  Upload encrypted JSON to S3
•  Have instances access via IAM roles in a recipe
Custom JSON
Arbitrary JSON on stack that is available in Chef
{
‘foo‘: {
‘bar‘: true,
‘baz‘: false
}
}

if node.foo.bar
...
elsif node.foo.baz
...
end
Store Secrets on Amazon S3
Access from instance via instance profiles
bucket = node['acme']['bucket']
key = node['acme']['key']
s3 = AWS::S3.new
obj = s3.buckets[bucket].objects[key]
obj.read
The Future
Better Chef Citizen
Chef 11.8 local server mode:
•  Data bags
•  (local) Chef search
More information about AWS OpsWorks
• 
• 
• 
• 
• 
• 
• 

Try it out https://console.aws.amazon.com/opsworks/
Follow us on twitter @AWSOpsWorks
Find us on YouTube
Blog http://blogs.aws.amazon.com/application-management
Docs http://aws.amazon.com/documentation/opsworks/
User tests opsworks-user-tests@amazon.com
Work with us http://jobs.aws-berlin.com
Thank You
@jweiss

More Related Content

PDF
ChefConf 2014 - AWS OpsWorks Under The Hood
PPTX
Understand AWS OpsWorks - A DevOps Tool from AWS
PDF
Docker on AWS OpsWorks
PDF
Amazon Elastic Beanstalk
PDF
An introduction to serverless architectures (February 2017)
PPTX
Moving Viadeo to AWS (2015)
PDF
Amazon ECS (December 2015)
PDF
Continuous Deployment with Amazon Web Services
ChefConf 2014 - AWS OpsWorks Under The Hood
Understand AWS OpsWorks - A DevOps Tool from AWS
Docker on AWS OpsWorks
Amazon Elastic Beanstalk
An introduction to serverless architectures (February 2017)
Moving Viadeo to AWS (2015)
Amazon ECS (December 2015)
Continuous Deployment with Amazon Web Services

What's hot (13)

PDF
Building serverless apps with Node.js
PPTX
DevOps with Elastic Beanstalk - TCCC-2014
PPTX
AWS elastic beanstalk
PDF
A real-life account of moving 100% to a public cloud
PDF
전 세계 팬들이 모일 수 있는 플랫폼 만들기 - 강진우 (beNX) :: AWS Community Day 2020
PDF
[Jun AWS 201] Elastic Beanstalk for Startups
PDF
Building a data warehouse with Amazon Redshift … and a quick look at Amazon ...
PDF
Optimizing CakePHP 2.x Apps
PDF
Docker Paris #28
PDF
Amazon ECS (March 2016)
PPTX
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
PPTX
Scalable Application Development on AWS
PDF
AWS Cloud Development Kit (CDK)를 이용한 코드 기반 인프라 개발 및 배포 - 공찬호(리얼리티매직) :: AWS C...
Building serverless apps with Node.js
DevOps with Elastic Beanstalk - TCCC-2014
AWS elastic beanstalk
A real-life account of moving 100% to a public cloud
전 세계 팬들이 모일 수 있는 플랫폼 만들기 - 강진우 (beNX) :: AWS Community Day 2020
[Jun AWS 201] Elastic Beanstalk for Startups
Building a data warehouse with Amazon Redshift … and a quick look at Amazon ...
Optimizing CakePHP 2.x Apps
Docker Paris #28
Amazon ECS (March 2016)
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
Scalable Application Development on AWS
AWS Cloud Development Kit (CDK)를 이용한 코드 기반 인프라 개발 및 배포 - 공찬호(리얼리티매직) :: AWS C...
Ad

Similar to AWS OpsWorks & Chef at the Hamburg Chef User Group 2014 (11)

PDF
AWS CloudFormation (February 2016)
PPT
DevOpsCon Cloud Workshop
PDF
A 60-mn tour of AWS compute (March 2016)
PPTX
Cloud Formation
PDF
AWS Elastic Container Service
PDF
intro elastic container service amazon aws
PPT
Docker in the Cloud
PDF
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
PDF
Application Lifecycle Management on AWS
PDF
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
PPTX
Amazon Webservices for Java Developers - UCI Webinar
AWS CloudFormation (February 2016)
DevOpsCon Cloud Workshop
A 60-mn tour of AWS compute (March 2016)
Cloud Formation
AWS Elastic Container Service
intro elastic container service amazon aws
Docker in the Cloud
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
Application Lifecycle Management on AWS
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
Amazon Webservices for Java Developers - UCI Webinar
Ad

More from Jonathan Weiss (20)

PPTX
DevOpsDays Amsterdam - Observations in the cloud
PDF
Amazon SWF and Gordon
PDF
Introduction to Backbone.js
PDF
Scalarium and CouchDB
PDF
Build your own clouds with Chef and MCollective
PDF
NoSQL - Motivation and Overview
PDF
NoSQL - An introduction to CouchDB
PDF
Running on Amazon EC2
PDF
Amazon EC2 in der Praxis
PDF
Infrastructure Automation with Chef
PDF
Rails in the Cloud
PDF
EventMachine
PDF
CouchDB on Rails
PDF
Rails in the Cloud - Experiences from running on EC2
PDF
CouchDB on Rails - RailsWayCon 2010
PDF
CouchDB on Rails - FrozenRails 2010
PDF
NoSQL - Post-Relational Databases - BarCamp Ruhr3
PDF
Ruby on CouchDB - SimplyStored and RockingChair
PDF
No SQL - BarCamp Nürnberg 2010
PPTX
BarCamp Nürnberg - Infrastructure As A Service
DevOpsDays Amsterdam - Observations in the cloud
Amazon SWF and Gordon
Introduction to Backbone.js
Scalarium and CouchDB
Build your own clouds with Chef and MCollective
NoSQL - Motivation and Overview
NoSQL - An introduction to CouchDB
Running on Amazon EC2
Amazon EC2 in der Praxis
Infrastructure Automation with Chef
Rails in the Cloud
EventMachine
CouchDB on Rails
Rails in the Cloud - Experiences from running on EC2
CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - FrozenRails 2010
NoSQL - Post-Relational Databases - BarCamp Ruhr3
Ruby on CouchDB - SimplyStored and RockingChair
No SQL - BarCamp Nürnberg 2010
BarCamp Nürnberg - Infrastructure As A Service

Recently uploaded (20)

PPTX
A Presentation on Touch Screen Technology
PDF
DP Operators-handbook-extract for the Mautical Institute
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
TLE Review Electricity (Electricity).pptx
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Hindi spoken digit analysis for native and non-native speakers
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
1. Introduction to Computer Programming.pptx
PDF
NewMind AI Weekly Chronicles - August'25-Week II
A Presentation on Touch Screen Technology
DP Operators-handbook-extract for the Mautical Institute
OMC Textile Division Presentation 2021.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
A comparative analysis of optical character recognition models for extracting...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Approach and Philosophy of On baking technology
TLE Review Electricity (Electricity).pptx
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Hindi spoken digit analysis for native and non-native speakers
Digital-Transformation-Roadmap-for-Companies.pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Heart disease approach using modified random forest and particle swarm optimi...
cloud_computing_Infrastucture_as_cloud_p
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
MIND Revenue Release Quarter 2 2025 Press Release
1. Introduction to Computer Programming.pptx
NewMind AI Weekly Chronicles - August'25-Week II

AWS OpsWorks & Chef at the Hamburg Chef User Group 2014

  • 1. AWS OpsWorks & Chef Jonathan Weiss @jweiss January 14th, 2014 © 2014 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
  • 3. AWS OpsWorks Integrated Application management on EC2 •  EC2, ELB, VPC, EIP, EBS, … •  Chef-Solo & Built-in layers •  Monitoring with CloudWatch •  Auto Scaling, Auto Healing •  Fine-grained permissions •  App deployment
  • 4. AWS Application Management Services Higher-level Services Elastic Beanstalk Convenience OpsWorks Do it yourself CloudFormation EC2 Control
  • 5. How does it work?
  • 6. The Heart of the Service Agent on each Agent on each Amazon EC2 instance EC2 instance Understands a set of commands that are triggered by AWS OpsWorks. The agent then runs a Chef solo run.
  • 9. A Stack with Layers
  • 10. A Stack with Layers and Instances
  • 12. Chef in AWS OpsWorks vs. Chef Server
  • 13. Main Differences •  •  •  •  •  Chef Setup One run vs. discrete events Push vs. pull Discovery: search & AWS OpsWorks attribute tree Data bags
  • 14. Chef Setup Chef Solo & OpsWorks Backend Chef Client & Chef Server
  • 15. control simple Customization Options Built-in layers Override Chef attributes via custom JSON Override Chef attributes via custom cookbook Overwrite Chef template file Deploy hooks Provide custom recipe to extend built-in layer Provide custom recipe to create custom layer
  • 16. Life Cycle Events •  Give you fine-grained control •  Faster to execute •  Context
  • 17. Push vs. Pull •  On-demand and automatic •  Respond immediately to changes in the stack
  • 18. Discovery: Chef Search AWS OpsWorks does not offer attribute search Alternative: node[:opsworks] with similar capabilities to partial_search
  • 19. AWS OpsWorks Attribute Tree Find all Rails application servers rails_servers = node['opsworks']['layers']['rails-app']['instances'] rails_ips = rails_servers.map{|i| i['private_ip'] } template "/etc/rails-server.conf" do ... variables({ :ips => rails_server_ips }) end
  • 20. Encrypted Data Bags •  Upload encrypted JSON to S3 •  Have instances access via IAM roles in a recipe
  • 21. Custom JSON Arbitrary JSON on stack that is available in Chef { ‘foo‘: { ‘bar‘: true, ‘baz‘: false } } if node.foo.bar ... elsif node.foo.baz ... end
  • 22. Store Secrets on Amazon S3 Access from instance via instance profiles bucket = node['acme']['bucket'] key = node['acme']['key'] s3 = AWS::S3.new obj = s3.buckets[bucket].objects[key] obj.read
  • 24. Better Chef Citizen Chef 11.8 local server mode: •  Data bags •  (local) Chef search
  • 25. More information about AWS OpsWorks •  •  •  •  •  •  •  Try it out https://console.aws.amazon.com/opsworks/ Follow us on twitter @AWSOpsWorks Find us on YouTube Blog http://blogs.aws.amazon.com/application-management Docs http://aws.amazon.com/documentation/opsworks/ User tests opsworks-user-tests@amazon.com Work with us http://jobs.aws-berlin.com