AWS Opsworks
for developers (and designers :) )

Wojciech Ziniewicz @fribulusxax
Historia

●
●
●

Capistrano UI + users

●
●
●

Capistrano
Nice UI
Event based
deployment
Chef
EC2 support
Scaling

●
●
●
●...
AWS Opsworks
●
●
●
●
●
●

Identity and Access Management (IAM)
EC2
Chef
Layer templates
Custom stuff
UI
Secret wisdom
Basic Ruby + JSON
●
●
●
●

IaC
auto-provisioning
deploy ruby with ruby
fun!
Stack : region, linux distro
Layer: java, rails, nodejs, lb … etc
Instance: medium, large etc..
Apps: repo + url
+

+

=

JSON
{
"deploy": {
"myapp_staging": {
"database": {
"adapter": "postgresql",
"username": "myapp_staging",
"database": "myapp_st...
Instances lifecycle events
●
●
●
●
●

Setup
Configure
Deploy
Undeploy
Shutdown
Built-in (~20 cookbooks)

Każdy lifecycle event ma “podpięte”
recepty chefa
Custom recipes (1k+ cookbooks?)
Custom example
{ "deploy": {
"my_fancy_app": {
"hipchat_token" : "69d2627efe8f564c1cc0b6341e3291",
"hipchat_room_id": "206...
Custom example
Opsworks agent
● Agent runs on instances
● Listens for lifecycle events
● Lifecycle events trigger chef-solo run
Let’s sum up
1.
2.
3.
4.

User sets stack environment json (aws)
User produces lifecycle events (e.g. deploy)
Agent consum...
Autoscaling
Idempotent recipes
+
Lack of persistent storage
=
Auto provisioning && Autoscaling
Addons
- resources
- permissions
- monitoring
Dziekuję za uwagę - pytania?
Köszönöm a figyelmet - kérdése?
Aws opsworks for developers and designers
Upcoming SlideShare
Loading in …5
×

Aws opsworks for developers and designers

2,456 views

Published on

Is AWS Opsworks something that a designer or a developer can do?

Published in: Technology
  • Be the first to comment

Aws opsworks for developers and designers

  1. 1. AWS Opsworks for developers (and designers :) ) Wojciech Ziniewicz @fribulusxax
  2. 2. Historia ● ● ● Capistrano UI + users ● ● ● Capistrano Nice UI Event based deployment Chef EC2 support Scaling ● ● ● ● ● chef +11.4 +vpc +ruby 2.0 +resources (EIPs + EBS api)
  3. 3. AWS Opsworks ● ● ● ● ● ● Identity and Access Management (IAM) EC2 Chef Layer templates Custom stuff UI
  4. 4. Secret wisdom
  5. 5. Basic Ruby + JSON ● ● ● ● IaC auto-provisioning deploy ruby with ruby fun!
  6. 6. Stack : region, linux distro Layer: java, rails, nodejs, lb … etc Instance: medium, large etc.. Apps: repo + url
  7. 7. + + = JSON
  8. 8. { "deploy": { "myapp_staging": { "database": { "adapter": "postgresql", "username": "myapp_staging", "database": "myapp_staging", "password": "supersecret" }, "symlink_before_migrate":{ "config/application.yml" : "config/application.yml" } } } }
  9. 9. Instances lifecycle events ● ● ● ● ● Setup Configure Deploy Undeploy Shutdown
  10. 10. Built-in (~20 cookbooks) Każdy lifecycle event ma “podpięte” recepty chefa
  11. 11. Custom recipes (1k+ cookbooks?)
  12. 12. Custom example { "deploy": { "my_fancy_app": { "hipchat_token" : "69d2627efe8f564c1cc0b6341e3291", "hipchat_room_id": "206231", "hipchat_run_on" : "rails-app1", [...] } } }
  13. 13. Custom example
  14. 14. Opsworks agent ● Agent runs on instances ● Listens for lifecycle events ● Lifecycle events trigger chef-solo run
  15. 15. Let’s sum up 1. 2. 3. 4. User sets stack environment json (aws) User produces lifecycle events (e.g. deploy) Agent consumes events (ec2 instance) Agent runs cookbooks against previously set json
  16. 16. Autoscaling Idempotent recipes + Lack of persistent storage = Auto provisioning && Autoscaling
  17. 17. Addons - resources - permissions - monitoring
  18. 18. Dziekuję za uwagę - pytania? Köszönöm a figyelmet - kérdése?

×