SlideShare una empresa de Scribd logo
1 de 58
Descargar para leer sin conexión
DMG202 - Zero to Sixty:
AWS OpsWorks
Thomas Metschke, Amazon
November 13th, 2013

© 2013 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
Helps you to model your entire application from
load balancers to databases starting from
templates for common technologies or building
your own.
You have full control of deployments, scaling,
monitoring, and automation of each component.
AWS Application Management Services
Higher-level services

Elastic Beanstalk
Convenience

OpsWorks

Do it yourself

CloudFormation

EC2
Control
The Heart of AWS OpsWorks
Agent on each
EC2 instance

talks with

OpsWorks
The Heart of AWS OpsWorks
Agent on each
EC2 instance

Understands a set of commands
that are triggered by OpsWorks.
The agent then runs Chef solo.
The Heart of AWS OpsWorks
Agent on each
EC2 instance

Understands a set of commands
that are triggered by OpsWorks.
The agent then runs Chef solo.
The Heart of AWS OpsWorks
Agent on each
EC2 instance

Understands a set of commands
that are triggered by OpsWorks.
The agent then runs Chef solo.
AWS OpsWorks Agent Events

setup

configure

deploy

undeploy

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

DEMO TIME
Recap of Demo
•
•
•
•
•
•

Created a new Stack from scratch
Created an app and database layer
Started instances in different Availability Zones
Configured Auto Scaling
Load balanced by Elastic Load Balancing
Deployed an application
Continuous Integration
John Gaa
VP of Engineering at BeachMint
•
•
•
•

Founded in 2011
Next generation social commerce company
Parent to: JewelMint, ShoeMint, StyleMint, & IntiMint
Over 6 million registered customers
Problem Set …
Our Store Verticals are Powered By
•
•
•
•
•
•

Amazon RDS
Amazon ElastiCache
Amazon SQS
Amazon SNS
Amazon CloudFront
Amazon Redshift

RDS

ElastiCache
SQS

SNS
CloudFront

Redshift
• Multiple releases a day
• 1 sysadmin
• 100+ instances between production
and test environments
Jenkins & AWS OpsWorks to the Rescue
Confidence to Release Every Day
•
•
•
•

Unit tests
Integration tests
Load testing
Manual testing
What it Looks Like in AWS OpsWorks
Environments are represented as
stacks

Our different verticals are
represented as separate layers within
each stack
Architecture Repeated in Each Environment
IntiMint

ShoeMint

StyleMint

Stack

JavaScript widget
API
Checkout

RDS

Registration

Solr

Product

ElastiCache

Drupal

Social

Drools

Layers

JewelMint
The Details
AWS OpsWorks in Our CI Processes
• Get instances associated to a layer
• Update code based on gittag version stored in
custom JSON
• Target the instances and run Chef scripts
The Glue: Custom JSON
{
"environment":{
"env":"production"
},
"jewelmint":{
"gittag":"20131008d_release" },
"intimint":{
"gittag":"v3.7.0_release" },
"stylemint":{
"gittag":"v3.7.0_release" },
"shoemint":{
"gittag":"v3.7.0_release" },
"cdn":{
"media":{
"origin":"beachmint-origin-domain.com",
"domain":"beachmint-cloudfront.cloudfront.net"
}
},
"solr":{
"gittag":"master",
"server_name":"beachmint-solr-domain.com",
"nodes":{ "1":"node-ip-1",
"2":"node-ip-2",
"3":"node-ip-3" }
}
}

"environment":{
"env":"production”
},

Determines what
environment to be built
The Glue: Custom JSON
{
"environment":{
"env":"production"
},
"jewelmint":{
"gittag":"20131008d_release" },
"intimint":{
"gittag":"v3.7.0_release" },
"stylemint":{
"gittag":"v3.7.0_release" },
"shoemint":{
"gittag":"v3.7.0_release" },
"cdn":{
"media":{
"origin":"beachmint-origin-domain.com",
"domain":"beachmint-cloudfront.cloudfront.net"
}
},
"solr":{
"gittag":"master",
"server_name":"beachmint-solr-domain.com",
"nodes":{ "1":"node-ip-1",
"2":"node-ip-2",
"3":"node-ip-3" }
}
}

"jewelmint"{
"gittag":"20131008d_release" },
"intimint":{
"gittag":"v3.7.0_release" },
"stylemint":{
"gittag":"v3.7.0_release" },
"shoemint":{
"gittag":"v3.7.0_release" },

Code version to be
deployed to a layer
The Glue: Custom JSON
{
"environment":{
"env":"production"
},
"jewelmint":{
"gittag":"20131008d_release" },
"intimint":{
"gittag":"v3.7.0_release" },
"stylemint":{
"gittag":"v3.7.0_release" },
"shoemint":{
"gittag":"v3.7.0_release" },
"cdn":{
"media":{
"origin":"beachmint-origin-domain.com",
"domain":"beachmint-cloudfront.cloudfront.net"
}
},
"solr":{
"gittag":"master",
"server_name":"beachmint-solr-domain.com",
"nodes":{ "1":"node-ip-1",
"2":"node-ip-2",
"3":"node-ip-3" }
}
}

"cdn":{
"media":{
"origin":"beachmint-origin-domain.com",
"domain":"beachmint-cloudfront.cloudfront.net" }},
"solr":{
"gittag":"master",
"server_name":"beachmint-solr-domain.com",
"nodes":{
"1":"node-ip-1",
"2":"node-ip-2",
"3":"node-ip-3" }}

Configuration and
attributes of
supporting systems
Commit

Build Stack

Jenkins post
commit hook

Get
instances
Update code
on instances

use AwsCommonAws;
$aws = Aws::factory('./config.php');
$opsWorks = $aws->get('OpsWorks');
//Get the Stack we are updating
$onlineInstanceIds = array();
$allInstances = $opsWorks->describeInstances(array('LayerId' => $layerId))>get("Instances");
foreach($allInstances as $instance) {
if ($instance['Status'] == 'online') {
$onlineInstanceIds[] = $instance['InstanceId'];
}
}

Run selenium
or unit tests
Y

Create new
tag

pass

Update git tag
on custom json

Update code
on instances

N

Stop

Load Stack

Run load
test

Ready for
QA
Commit

Build Stack

Jenkins post
commit hook

Get
instances
Update code
on instances

use AwsCommonAws;
$aws = Aws::factory('./config.php');
$opsWorks = $aws->get('OpsWorks');
$deployment = $opsWorks->createDeployment(array(
'StackId' => $stackId,
'Command' => array(
'Name' => 'execute_recipes',
'Args' => array(
'recipes' => $recipe
)
),
'InstanceIds' => $onlineInstanceIds
));

Run selenium
or unit tests
Y

Create new
tag

pass

Update git tag
on custom json

Update code
on instances

N

Stop

Load Stack

Run load
test

Ready for
QA
Load Testing
•
•
•
•
•

Code
Configuration
EC2 instance type
System architecture configuration
Capacity planning
Commit

Build Stack

Jenkins post
commit hook

Get
instances
Update code
on instances

//Get the Stack’s custom JSON from OpsWorks
$customJsonArray = json_decode($theBuildStack[0]["CustomJson"]);
//Replace the gittag with the new tag
$customJsonArray->{"jewelmint"}->{"gittag"} = "thenewgittag";
//Convert back to string
$modifiedJson = json_encode($customJsonArray);
//Update Stack settings in OpsWorks
$updateRes = $opsWorks->updateStack(array("StackId" => "the-buildstackid","CustomJson" => $modifiedJson));

Run selenium
or unit tests
Y

Create new
tag

pass

Update git tag
on custom json

Update code
on instances

N

Stop

Load Stack

Run load
test

Ready for
QA
Commit

Build Stack

Jenkins post
commit hook

Get
instances
Update code
on instances

use AwsCommonAws;
$aws = Aws::factory('./config.php');
$opsWorks = $aws->get('OpsWorks');
$deployment = $opsWorks->createDeployment(array(
'StackId' => $stackId,
'Command' => array(
'Name' => 'execute_recipes',
'Args' => array(
'recipes' => $recipe
)
),
'InstanceIds' => $onlineInstanceIds
));

Run selenium
or unit tests
Y

Create new
tag

pass

Update git tag
on custom json

Update code
on instances

N

Stop

Load Stack

Run load
test

Ready for
QA
Path to Production
• QA and Product group determines what goes to
production
• Each release candidate has a tag associated
with it
• QA updates QA and Stage environments using a
tool based on the AWS SDK
Thanks!

www.jewelmint.com
www.stylemint.com
www.intimint.com
www.shoemint.com
Automate Standard Operating Procedures
3 AM – Alarm goes off
Wouldn’t it be nice to have help?
The idea: gather and ship logs to Amazon S3
as soon as the CPU load is to high
We will use the
following setup
AWS OpsWorks stores 1-minute
metrics in CloudWatch
Every instance creates an
alarm for high CPU load
CloudWatch alarm action:
write to SNS topic
SNS publishes to
queue in SQS
Watcher instance polls
SQS for notifications
On alarm notification,
call OpsWorks API to …
Execute a script on the
affected server
Logs are gathered and
written to Amazon S3
And Again

DEMO TIME
Demo Recap
•
•
•
•

Instances set up alarms on CloudWatch
Alarms create notification in SNS
SNS publishes to SQS queue
Watcher instance polls queue and calls AWS
OpsWorks to execute recipe on instance
• The recipe runs a script to upload logs to S3
More Information about AWS OpsWorks
•
•
•
•

If not done yet, do the AWS OpsWorks lab!
Find us in the AWS Booth
Follow us on Twitter @AWSOpsWorks
Find us on YouTube

• AWS OpsWorks survey
http://tinyurl.com/OpsWorksSurvey2013
Other Talks During re:Invent
DMG304 - AWS OpsWorks Under the Hood
• Jonathan Weiss & Reza Spagnolo
• Thursday, Nov 14, 3:00 PM - 4:00 PM – Murano 3206
DMG305 - How Intuit Leveraged AWS OpsWorks
as the Engine of Our PaaS
• Capen Brinkley & Rick Mendes of Intuit, Inc.
• Thursday, Nov 14, 4:15 PM - 5:15 PM – Murano 3206
Please give us your feedback on this
presentation

DMG202
As a thank you, we will select prize
winners daily for completed surveys!
Backup Slides
Recipes
• Default
Writes Ruby script to the instance and runs it

• create_alarm
Writes a Ruby script to create an alarm and ties it to the right SNS
topic

• send_logs
Writes a Ruby script to the instance that can pack and ship the logs
to S3
Watcher Code
queue = AWS::SQS.new.queues["<%= node[:watcher][:sqs][:url] %>"]
queue.poll(:initial_timeout => false) do |msg|
begin
alarm = JSON.parse(msg.body)['Subject'].start_with?('ALARM')
instance_id = JSON.parse((JSON.parse(msg.body)['Message']))['Trigger']
['Dimensions'].first['value']
if alarm
opsworks = AWS::OpsWorks.new.client
deployment = opsworks.create_deployment(
:stack_id => "<%= node[:opsworks][:stack][:id] %>",
:instance_ids => [instance_id],
:command => {
:name => 'execute_recipes',
:args => {'recipes' => <%= node[:watcher][:execute_recipes] %>}
},) end end end
Alarm Creation
id = "<%= node[:opsworks][:instance][:id] %>"
action ="<%= node[:watcher][:sns][:arn] %>"
alarm = AWS::CloudWatch.new.alarms.create("#{id}_cpu_idle", {
:namespace => 'AWS/OpsWorks',
:metric_name => 'cpu_idle',
:dimensions => [{:name => 'InstanceId', :value => id}],
:comparison_operator => 'LessThanOrEqualToThreshold',
:evaluation_periods => 1,
:period => 60,
:statistic => 'Average',
:threshold => 20,
:actions_enabled => true,
:alarm_actions => ["#{action}"],
:alarm_description => 'watching the available CPU on the instance'
})
Pack and Send Logs – Generated Ruby Script
timestamp = Time.now.utc.to_i
archive = "/tmp/#{timestamp}.tgz"
source = "/var/log"
s3bucket = "<%= node[:watcher][:s3][:bucket] %>"
object = "<%= node[:opsworks][:stack][:name] %>/<%= node[:opsworks][:instance][:hostname]
%>/#{timestamp}.tgz"
`cd #{File.dirname(source)} && tar czf #{archive} #{File.basename(source)}`

s3 = AWS::S3.new.buckets[s3bucket].objects[object].write(:file => archive)

Más contenido relacionado

La actualidad más candente

Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionAmazon Web Services
 
(SEC303) Architecting for End-To-End Security in the Enterprise
(SEC303) Architecting for End-To-End Security in the Enterprise(SEC303) Architecting for End-To-End Security in the Enterprise
(SEC303) Architecting for End-To-End Security in the EnterpriseAmazon Web Services
 
Continuous Delivery to Amazon ECS - AWS August Webinar Series
Continuous Delivery to Amazon ECS - AWS August Webinar SeriesContinuous Delivery to Amazon ECS - AWS August Webinar Series
Continuous Delivery to Amazon ECS - AWS August Webinar SeriesAmazon Web Services
 
Migrating the GoPro Plus Cloud Service to Amazon ECS
Migrating the GoPro Plus Cloud Service to Amazon ECSMigrating the GoPro Plus Cloud Service to Amazon ECS
Migrating the GoPro Plus Cloud Service to Amazon ECSAmazon Web Services
 
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS Amazon Web Services
 
AWS Summit Seoul 2015 - 국내 사례로 본 클라우드 운영 최적화 (이주완-메가존)
AWS Summit Seoul 2015 -  국내 사례로 본 클라우드 운영 최적화  (이주완-메가존)AWS Summit Seoul 2015 -  국내 사례로 본 클라우드 운영 최적화  (이주완-메가존)
AWS Summit Seoul 2015 - 국내 사례로 본 클라우드 운영 최적화 (이주완-메가존)Amazon Web Services Korea
 
Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Amazon Web Services
 
(SEC401) Encryption Key Storage with AWS KMS at Okta
(SEC401) Encryption Key Storage with AWS KMS at Okta(SEC401) Encryption Key Storage with AWS KMS at Okta
(SEC401) Encryption Key Storage with AWS KMS at OktaAmazon Web Services
 
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...Amazon Web Services
 
Incident Response in the Cloud | AWS Public Sector Summit 2017
Incident Response in the Cloud | AWS Public Sector Summit 2017Incident Response in the Cloud | AWS Public Sector Summit 2017
Incident Response in the Cloud | AWS Public Sector Summit 2017Amazon Web Services
 
Automated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAutomated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAmazon Web Services
 
(SEC315) AWS Directory Service Deep Dive
(SEC315) AWS Directory Service Deep Dive (SEC315) AWS Directory Service Deep Dive
(SEC315) AWS Directory Service Deep Dive Amazon Web Services
 
(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the CloudAmazon Web Services
 
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013Amazon Web Services
 
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMail
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMailAWS Enterprise Summit Netherlands - WorkSpaces & WorkMail
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMailAmazon Web Services
 
(SEC306) Defending Against DDoS Attacks
(SEC306) Defending Against DDoS Attacks(SEC306) Defending Against DDoS Attacks
(SEC306) Defending Against DDoS AttacksAmazon Web Services
 
網路安全自動化 - 縮短應用維安的作業時間
網路安全自動化 - 縮短應用維安的作業時間網路安全自動化 - 縮短應用維安的作業時間
網路安全自動化 - 縮短應用維安的作業時間Amazon Web Services
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudAmazon Web Services
 
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸Amazon Web Services
 

La actualidad más candente (20)

Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced Session
 
(SEC303) Architecting for End-To-End Security in the Enterprise
(SEC303) Architecting for End-To-End Security in the Enterprise(SEC303) Architecting for End-To-End Security in the Enterprise
(SEC303) Architecting for End-To-End Security in the Enterprise
 
Continuous Delivery to Amazon ECS - AWS August Webinar Series
Continuous Delivery to Amazon ECS - AWS August Webinar SeriesContinuous Delivery to Amazon ECS - AWS August Webinar Series
Continuous Delivery to Amazon ECS - AWS August Webinar Series
 
Migrating the GoPro Plus Cloud Service to Amazon ECS
Migrating the GoPro Plus Cloud Service to Amazon ECSMigrating the GoPro Plus Cloud Service to Amazon ECS
Migrating the GoPro Plus Cloud Service to Amazon ECS
 
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
High Performance MongoDB Clusters with Amazon EBS Provisioned IOPS
 
AWS Summit Seoul 2015 - 국내 사례로 본 클라우드 운영 최적화 (이주완-메가존)
AWS Summit Seoul 2015 -  국내 사례로 본 클라우드 운영 최적화  (이주완-메가존)AWS Summit Seoul 2015 -  국내 사례로 본 클라우드 운영 최적화  (이주완-메가존)
AWS Summit Seoul 2015 - 국내 사례로 본 클라우드 운영 최적화 (이주완-메가존)
 
Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017Security best practices on AWS - Pop-up Loft TLV 2017
Security best practices on AWS - Pop-up Loft TLV 2017
 
Towards Full Stack Security
Towards Full Stack SecurityTowards Full Stack Security
Towards Full Stack Security
 
(SEC401) Encryption Key Storage with AWS KMS at Okta
(SEC401) Encryption Key Storage with AWS KMS at Okta(SEC401) Encryption Key Storage with AWS KMS at Okta
(SEC401) Encryption Key Storage with AWS KMS at Okta
 
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...
(SEC311) Architecting for End-to-End Security in the Enterprise | AWS re:Inve...
 
Incident Response in the Cloud | AWS Public Sector Summit 2017
Incident Response in the Cloud | AWS Public Sector Summit 2017Incident Response in the Cloud | AWS Public Sector Summit 2017
Incident Response in the Cloud | AWS Public Sector Summit 2017
 
Automated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAutomated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWS
 
(SEC315) AWS Directory Service Deep Dive
(SEC315) AWS Directory Service Deep Dive (SEC315) AWS Directory Service Deep Dive
(SEC315) AWS Directory Service Deep Dive
 
(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud(SEC310) Keeping Developers and Auditors Happy in the Cloud
(SEC310) Keeping Developers and Auditors Happy in the Cloud
 
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013
AWS Elastic Beanstalk under the Hood (DMG301) | AWS re:Invent 2013
 
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMail
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMailAWS Enterprise Summit Netherlands - WorkSpaces & WorkMail
AWS Enterprise Summit Netherlands - WorkSpaces & WorkMail
 
(SEC306) Defending Against DDoS Attacks
(SEC306) Defending Against DDoS Attacks(SEC306) Defending Against DDoS Attacks
(SEC306) Defending Against DDoS Attacks
 
網路安全自動化 - 縮短應用維安的作業時間
網路安全自動化 - 縮短應用維安的作業時間網路安全自動化 - 縮短應用維安的作業時間
網路安全自動化 - 縮短應用維安的作業時間
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸
透過Amazon CloudFront 和AWS WAF來執行安全的內容傳輸
 

Destacado

AWS Webcast - Getting Started with AWS OpsWorks
AWS Webcast - Getting Started with AWS OpsWorksAWS Webcast - Getting Started with AWS OpsWorks
AWS Webcast - Getting Started with AWS OpsWorksAmazon Web Services
 
Gatling - Bordeaux JUG
Gatling - Bordeaux JUGGatling - Bordeaux JUG
Gatling - Bordeaux JUGslandelle
 
How to Cover All Your Backend Testing Needs with API and UI Tests
How to Cover All Your Backend Testing Needs with API and UI TestsHow to Cover All Your Backend Testing Needs with API and UI Tests
How to Cover All Your Backend Testing Needs with API and UI TestsBlazeMeter
 
Hands On, Duchess 10/17/2012
Hands On, Duchess 10/17/2012Hands On, Duchess 10/17/2012
Hands On, Duchess 10/17/2012slandelle
 
'Shift-Right' - Rapid Evolution with DesignOps
'Shift-Right' - Rapid Evolution with DesignOps'Shift-Right' - Rapid Evolution with DesignOps
'Shift-Right' - Rapid Evolution with DesignOpsCA Technologies
 
Pre-Con Lab: Test Automation Across Nine Open Source Tools—Taurus
Pre-Con Lab: Test Automation Across Nine Open Source Tools—TaurusPre-Con Lab: Test Automation Across Nine Open Source Tools—Taurus
Pre-Con Lab: Test Automation Across Nine Open Source Tools—TaurusCA Technologies
 
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...Amazon Web Services
 
Beyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersBeyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersMaxim Zaks
 
Configuration Management with AWS OpsWorks
Configuration Management with AWS OpsWorksConfiguration Management with AWS OpsWorks
Configuration Management with AWS OpsWorksAmazon Web Services
 
DAT201 Migrating Databases to AWS - AWS re: Invent 2012
DAT201 Migrating Databases to AWS - AWS re: Invent 2012DAT201 Migrating Databases to AWS - AWS re: Invent 2012
DAT201 Migrating Databases to AWS - AWS re: Invent 2012Amazon Web Services
 
Best Practices in Architecting for the Cloud Webinar - Jinesh Varia
Best Practices in Architecting for the Cloud Webinar - Jinesh VariaBest Practices in Architecting for the Cloud Webinar - Jinesh Varia
Best Practices in Architecting for the Cloud Webinar - Jinesh VariaAmazon Web Services
 
AWS Enterprise Summit London | National Rail Enquiries Darwin Migration
AWS Enterprise Summit London | National Rail Enquiries Darwin MigrationAWS Enterprise Summit London | National Rail Enquiries Darwin Migration
AWS Enterprise Summit London | National Rail Enquiries Darwin MigrationAmazon Web Services
 
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013Amazon Web Services
 
AWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS CloudAWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS CloudAmazon Web Services
 
Architecting Enterprise Applications In The Cloud
Architecting Enterprise Applications In The CloudArchitecting Enterprise Applications In The Cloud
Architecting Enterprise Applications In The CloudAmazon Web Services
 
AWS Webinar: What is Cloud Computing? November 2013
AWS Webinar: What is Cloud Computing?  November 2013AWS Webinar: What is Cloud Computing?  November 2013
AWS Webinar: What is Cloud Computing? November 2013Amazon Web Services
 
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...Amazon Web Services
 

Destacado (20)

AWS Webcast - Getting Started with AWS OpsWorks
AWS Webcast - Getting Started with AWS OpsWorksAWS Webcast - Getting Started with AWS OpsWorks
AWS Webcast - Getting Started with AWS OpsWorks
 
Gatling - Bordeaux JUG
Gatling - Bordeaux JUGGatling - Bordeaux JUG
Gatling - Bordeaux JUG
 
How to Cover All Your Backend Testing Needs with API and UI Tests
How to Cover All Your Backend Testing Needs with API and UI TestsHow to Cover All Your Backend Testing Needs with API and UI Tests
How to Cover All Your Backend Testing Needs with API and UI Tests
 
Hands On, Duchess 10/17/2012
Hands On, Duchess 10/17/2012Hands On, Duchess 10/17/2012
Hands On, Duchess 10/17/2012
 
'Shift-Right' - Rapid Evolution with DesignOps
'Shift-Right' - Rapid Evolution with DesignOps'Shift-Right' - Rapid Evolution with DesignOps
'Shift-Right' - Rapid Evolution with DesignOps
 
Pre-Con Lab: Test Automation Across Nine Open Source Tools—Taurus
Pre-Con Lab: Test Automation Across Nine Open Source Tools—TaurusPre-Con Lab: Test Automation Across Nine Open Source Tools—Taurus
Pre-Con Lab: Test Automation Across Nine Open Source Tools—Taurus
 
Introducing AWS OpsWorks
Introducing AWS OpsWorksIntroducing AWS OpsWorks
Introducing AWS OpsWorks
 
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
Configuration Management with AWS OpsWorks  by Amir Golan, Senior Product Man...
 
Beyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffersBeyond JSON - An Introduction to FlatBuffers
Beyond JSON - An Introduction to FlatBuffers
 
Configuration Management with AWS OpsWorks
Configuration Management with AWS OpsWorksConfiguration Management with AWS OpsWorks
Configuration Management with AWS OpsWorks
 
DAT201 Migrating Databases to AWS - AWS re: Invent 2012
DAT201 Migrating Databases to AWS - AWS re: Invent 2012DAT201 Migrating Databases to AWS - AWS re: Invent 2012
DAT201 Migrating Databases to AWS - AWS re: Invent 2012
 
Big Data in the Cloud
Big Data in the Cloud Big Data in the Cloud
Big Data in the Cloud
 
Best Practices in Architecting for the Cloud Webinar - Jinesh Varia
Best Practices in Architecting for the Cloud Webinar - Jinesh VariaBest Practices in Architecting for the Cloud Webinar - Jinesh Varia
Best Practices in Architecting for the Cloud Webinar - Jinesh Varia
 
AWS Enterprise Summit London | National Rail Enquiries Darwin Migration
AWS Enterprise Summit London | National Rail Enquiries Darwin MigrationAWS Enterprise Summit London | National Rail Enquiries Darwin Migration
AWS Enterprise Summit London | National Rail Enquiries Darwin Migration
 
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013
AWS Compute Services State of the Union (CPN202) | AWS re:Invent 2013
 
AWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS CloudAWS Webcast - Build Agile Applications in AWS Cloud
AWS Webcast - Build Agile Applications in AWS Cloud
 
AWS SeMINAR SERIES 2015 Sydney
AWS SeMINAR SERIES 2015 SydneyAWS SeMINAR SERIES 2015 Sydney
AWS SeMINAR SERIES 2015 Sydney
 
Architecting Enterprise Applications In The Cloud
Architecting Enterprise Applications In The CloudArchitecting Enterprise Applications In The Cloud
Architecting Enterprise Applications In The Cloud
 
AWS Webinar: What is Cloud Computing? November 2013
AWS Webinar: What is Cloud Computing?  November 2013AWS Webinar: What is Cloud Computing?  November 2013
AWS Webinar: What is Cloud Computing? November 2013
 
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...
Dole Food's Global Collaboration Platform and Web Presence on AWS (ENT209) | ...
 

Similar a Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013

DevOps for the Enterprise: Virtual Office Hours
DevOps for the Enterprise: Virtual Office HoursDevOps for the Enterprise: Virtual Office Hours
DevOps for the Enterprise: Virtual Office HoursAmazon Web Services
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...Amazon Web Services
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the HoodAmazon Web Services
 
AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)Amazon Web Services
 
Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorksJonathan Weiss
 
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...Ian Massingham
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...Amazon Web Services
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesAmazon Web Services
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesAmazon Web Services
 
Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde Codemotion
 
AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAmazon Web Services
 
Introducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platformIntroducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platformAmazon Web Services
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks
 
Cloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesCloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesAmazon Web Services
 
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...Amazon Web Services
 
From Docker Straight to AWS
From Docker Straight to AWSFrom Docker Straight to AWS
From Docker Straight to AWSDevOps.com
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 

Similar a Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013 (20)

DevOps for the Enterprise: Virtual Office Hours
DevOps for the Enterprise: Virtual Office HoursDevOps for the Enterprise: Virtual Office Hours
DevOps for the Enterprise: Virtual Office Hours
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood(DVO301) AWS OpsWorks Under the Hood
(DVO301) AWS OpsWorks Under the Hood
 
Managing Your Cloud Assets
Managing Your Cloud AssetsManaging Your Cloud Assets
Managing Your Cloud Assets
 
AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)AWS Summit London 2014 | Deployment Done Right (300)
AWS Summit London 2014 | Deployment Done Right (300)
 
Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorks
 
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
AWS DevOps Event - AWS Services enabling DevOps - Continuous Integration & Au...
 
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
AWS re:Invent 2016: Application Lifecycle Management in a Serverless World (S...
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web Services
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web Services
 
Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde
 
AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWS
 
Introducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platformIntroducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platform
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
 
Cloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesCloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web Services
 
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...
Moving to Containers: Building with Docker and Amazon ECS - CON310 - re:Inven...
 
From Docker Straight to AWS
From Docker Straight to AWSFrom Docker Straight to AWS
From Docker Straight to AWS
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 

Más de Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

Más de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Último

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 

Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013

  • 1. DMG202 - Zero to Sixty: AWS OpsWorks Thomas Metschke, Amazon November 13th, 2013 © 2013 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.
  • 2. AWS OpsWorks Helps you to model your entire application from load balancers to databases starting from templates for common technologies or building your own. You have full control of deployments, scaling, monitoring, and automation of each component.
  • 3. AWS Application Management Services Higher-level services Elastic Beanstalk Convenience OpsWorks Do it yourself CloudFormation EC2 Control
  • 4. The Heart of AWS OpsWorks Agent on each EC2 instance talks with OpsWorks
  • 5. The Heart of AWS OpsWorks Agent on each EC2 instance Understands a set of commands that are triggered by OpsWorks. The agent then runs Chef solo.
  • 6. The Heart of AWS OpsWorks Agent on each EC2 instance Understands a set of commands that are triggered by OpsWorks. The agent then runs Chef solo.
  • 7. The Heart of AWS OpsWorks Agent on each EC2 instance Understands a set of commands that are triggered by OpsWorks. The agent then runs Chef solo.
  • 8. AWS OpsWorks Agent Events setup configure deploy undeploy shutdown
  • 10. A Stack with Layers
  • 11. A Stack with Layers and Instances
  • 13. Recap of Demo • • • • • • Created a new Stack from scratch Created an app and database layer Started instances in different Availability Zones Configured Auto Scaling Load balanced by Elastic Load Balancing Deployed an application
  • 15. John Gaa VP of Engineering at BeachMint
  • 16. • • • • Founded in 2011 Next generation social commerce company Parent to: JewelMint, ShoeMint, StyleMint, & IntiMint Over 6 million registered customers
  • 18. Our Store Verticals are Powered By • • • • • • Amazon RDS Amazon ElastiCache Amazon SQS Amazon SNS Amazon CloudFront Amazon Redshift RDS ElastiCache SQS SNS CloudFront Redshift
  • 19. • Multiple releases a day • 1 sysadmin • 100+ instances between production and test environments
  • 20. Jenkins & AWS OpsWorks to the Rescue
  • 21. Confidence to Release Every Day • • • • Unit tests Integration tests Load testing Manual testing
  • 22. What it Looks Like in AWS OpsWorks Environments are represented as stacks Our different verticals are represented as separate layers within each stack
  • 23. Architecture Repeated in Each Environment IntiMint ShoeMint StyleMint Stack JavaScript widget API Checkout RDS Registration Solr Product ElastiCache Drupal Social Drools Layers JewelMint
  • 25. AWS OpsWorks in Our CI Processes • Get instances associated to a layer • Update code based on gittag version stored in custom JSON • Target the instances and run Chef scripts
  • 26. The Glue: Custom JSON { "environment":{ "env":"production" }, "jewelmint":{ "gittag":"20131008d_release" }, "intimint":{ "gittag":"v3.7.0_release" }, "stylemint":{ "gittag":"v3.7.0_release" }, "shoemint":{ "gittag":"v3.7.0_release" }, "cdn":{ "media":{ "origin":"beachmint-origin-domain.com", "domain":"beachmint-cloudfront.cloudfront.net" } }, "solr":{ "gittag":"master", "server_name":"beachmint-solr-domain.com", "nodes":{ "1":"node-ip-1", "2":"node-ip-2", "3":"node-ip-3" } } } "environment":{ "env":"production” }, Determines what environment to be built
  • 27. The Glue: Custom JSON { "environment":{ "env":"production" }, "jewelmint":{ "gittag":"20131008d_release" }, "intimint":{ "gittag":"v3.7.0_release" }, "stylemint":{ "gittag":"v3.7.0_release" }, "shoemint":{ "gittag":"v3.7.0_release" }, "cdn":{ "media":{ "origin":"beachmint-origin-domain.com", "domain":"beachmint-cloudfront.cloudfront.net" } }, "solr":{ "gittag":"master", "server_name":"beachmint-solr-domain.com", "nodes":{ "1":"node-ip-1", "2":"node-ip-2", "3":"node-ip-3" } } } "jewelmint"{ "gittag":"20131008d_release" }, "intimint":{ "gittag":"v3.7.0_release" }, "stylemint":{ "gittag":"v3.7.0_release" }, "shoemint":{ "gittag":"v3.7.0_release" }, Code version to be deployed to a layer
  • 28. The Glue: Custom JSON { "environment":{ "env":"production" }, "jewelmint":{ "gittag":"20131008d_release" }, "intimint":{ "gittag":"v3.7.0_release" }, "stylemint":{ "gittag":"v3.7.0_release" }, "shoemint":{ "gittag":"v3.7.0_release" }, "cdn":{ "media":{ "origin":"beachmint-origin-domain.com", "domain":"beachmint-cloudfront.cloudfront.net" } }, "solr":{ "gittag":"master", "server_name":"beachmint-solr-domain.com", "nodes":{ "1":"node-ip-1", "2":"node-ip-2", "3":"node-ip-3" } } } "cdn":{ "media":{ "origin":"beachmint-origin-domain.com", "domain":"beachmint-cloudfront.cloudfront.net" }}, "solr":{ "gittag":"master", "server_name":"beachmint-solr-domain.com", "nodes":{ "1":"node-ip-1", "2":"node-ip-2", "3":"node-ip-3" }} Configuration and attributes of supporting systems
  • 29. Commit Build Stack Jenkins post commit hook Get instances Update code on instances use AwsCommonAws; $aws = Aws::factory('./config.php'); $opsWorks = $aws->get('OpsWorks'); //Get the Stack we are updating $onlineInstanceIds = array(); $allInstances = $opsWorks->describeInstances(array('LayerId' => $layerId))>get("Instances"); foreach($allInstances as $instance) { if ($instance['Status'] == 'online') { $onlineInstanceIds[] = $instance['InstanceId']; } } Run selenium or unit tests Y Create new tag pass Update git tag on custom json Update code on instances N Stop Load Stack Run load test Ready for QA
  • 30. Commit Build Stack Jenkins post commit hook Get instances Update code on instances use AwsCommonAws; $aws = Aws::factory('./config.php'); $opsWorks = $aws->get('OpsWorks'); $deployment = $opsWorks->createDeployment(array( 'StackId' => $stackId, 'Command' => array( 'Name' => 'execute_recipes', 'Args' => array( 'recipes' => $recipe ) ), 'InstanceIds' => $onlineInstanceIds )); Run selenium or unit tests Y Create new tag pass Update git tag on custom json Update code on instances N Stop Load Stack Run load test Ready for QA
  • 31. Load Testing • • • • • Code Configuration EC2 instance type System architecture configuration Capacity planning
  • 32. Commit Build Stack Jenkins post commit hook Get instances Update code on instances //Get the Stack’s custom JSON from OpsWorks $customJsonArray = json_decode($theBuildStack[0]["CustomJson"]); //Replace the gittag with the new tag $customJsonArray->{"jewelmint"}->{"gittag"} = "thenewgittag"; //Convert back to string $modifiedJson = json_encode($customJsonArray); //Update Stack settings in OpsWorks $updateRes = $opsWorks->updateStack(array("StackId" => "the-buildstackid","CustomJson" => $modifiedJson)); Run selenium or unit tests Y Create new tag pass Update git tag on custom json Update code on instances N Stop Load Stack Run load test Ready for QA
  • 33. Commit Build Stack Jenkins post commit hook Get instances Update code on instances use AwsCommonAws; $aws = Aws::factory('./config.php'); $opsWorks = $aws->get('OpsWorks'); $deployment = $opsWorks->createDeployment(array( 'StackId' => $stackId, 'Command' => array( 'Name' => 'execute_recipes', 'Args' => array( 'recipes' => $recipe ) ), 'InstanceIds' => $onlineInstanceIds )); Run selenium or unit tests Y Create new tag pass Update git tag on custom json Update code on instances N Stop Load Stack Run load test Ready for QA
  • 34. Path to Production • QA and Product group determines what goes to production • Each release candidate has a tag associated with it • QA updates QA and Stage environments using a tool based on the AWS SDK
  • 37. 3 AM – Alarm goes off
  • 38. Wouldn’t it be nice to have help?
  • 39. The idea: gather and ship logs to Amazon S3 as soon as the CPU load is to high
  • 40. We will use the following setup
  • 41. AWS OpsWorks stores 1-minute metrics in CloudWatch
  • 42. Every instance creates an alarm for high CPU load
  • 45. Watcher instance polls SQS for notifications
  • 46. On alarm notification, call OpsWorks API to …
  • 47. Execute a script on the affected server
  • 48. Logs are gathered and written to Amazon S3
  • 50. Demo Recap • • • • Instances set up alarms on CloudWatch Alarms create notification in SNS SNS publishes to SQS queue Watcher instance polls queue and calls AWS OpsWorks to execute recipe on instance • The recipe runs a script to upload logs to S3
  • 51. More Information about AWS OpsWorks • • • • If not done yet, do the AWS OpsWorks lab! Find us in the AWS Booth Follow us on Twitter @AWSOpsWorks Find us on YouTube • AWS OpsWorks survey http://tinyurl.com/OpsWorksSurvey2013
  • 52. Other Talks During re:Invent DMG304 - AWS OpsWorks Under the Hood • Jonathan Weiss & Reza Spagnolo • Thursday, Nov 14, 3:00 PM - 4:00 PM – Murano 3206 DMG305 - How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS • Capen Brinkley & Rick Mendes of Intuit, Inc. • Thursday, Nov 14, 4:15 PM - 5:15 PM – Murano 3206
  • 53. Please give us your feedback on this presentation DMG202 As a thank you, we will select prize winners daily for completed surveys!
  • 55. Recipes • Default Writes Ruby script to the instance and runs it • create_alarm Writes a Ruby script to create an alarm and ties it to the right SNS topic • send_logs Writes a Ruby script to the instance that can pack and ship the logs to S3
  • 56. Watcher Code queue = AWS::SQS.new.queues["<%= node[:watcher][:sqs][:url] %>"] queue.poll(:initial_timeout => false) do |msg| begin alarm = JSON.parse(msg.body)['Subject'].start_with?('ALARM') instance_id = JSON.parse((JSON.parse(msg.body)['Message']))['Trigger'] ['Dimensions'].first['value'] if alarm opsworks = AWS::OpsWorks.new.client deployment = opsworks.create_deployment( :stack_id => "<%= node[:opsworks][:stack][:id] %>", :instance_ids => [instance_id], :command => { :name => 'execute_recipes', :args => {'recipes' => <%= node[:watcher][:execute_recipes] %>} },) end end end
  • 57. Alarm Creation id = "<%= node[:opsworks][:instance][:id] %>" action ="<%= node[:watcher][:sns][:arn] %>" alarm = AWS::CloudWatch.new.alarms.create("#{id}_cpu_idle", { :namespace => 'AWS/OpsWorks', :metric_name => 'cpu_idle', :dimensions => [{:name => 'InstanceId', :value => id}], :comparison_operator => 'LessThanOrEqualToThreshold', :evaluation_periods => 1, :period => 60, :statistic => 'Average', :threshold => 20, :actions_enabled => true, :alarm_actions => ["#{action}"], :alarm_description => 'watching the available CPU on the instance' })
  • 58. Pack and Send Logs – Generated Ruby Script timestamp = Time.now.utc.to_i archive = "/tmp/#{timestamp}.tgz" source = "/var/log" s3bucket = "<%= node[:watcher][:s3][:bucket] %>" object = "<%= node[:opsworks][:stack][:name] %>/<%= node[:opsworks][:instance][:hostname] %>/#{timestamp}.tgz" `cd #{File.dirname(source)} && tar czf #{archive} #{File.basename(source)}` s3 = AWS::S3.new.buckets[s3bucket].objects[object].write(:file => archive)