SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Thomas Kaschwig and Jonathan Weiss
Amazon Web Services
October 2015
DVO301
AWS OpsWorks Under the Hood
Agenda
• Chef in AWS OpsWorks
• Chef 12.x integration
• Windows support
• Amazon ECS integration + Demo
• Amazon EC2 import and on-premises servers + Demo
Chef in AWS OpsWorks
Modeling in AWS OpsWorks
AWS OpsWorks architecture
AWS OpsWorks
Backend
AWS OpsWorks
Agent
Amazon EC2, Amazon EBS, Amazon RDS,
Amazon VPC, Elastic Load Balancing,
Amazon ECS, Auto Scaling, auto-healing,...
On-instance execution via
Chef client/zero
Command
JSON
Command
Log+Status
Chef integration
Chef Client/Zero
&
AWS OpsWorks
Backend
Chef Client
&
Chef Server
Chef integration
• Supports Chef 11.10 and Chef 12.x
• Built-in convenience cookbooks / bring your own
• Chef run is triggered by lifecycle event firing:
push vs. pull
• Event comes with stack state JSON
Lifecycle events
Setup event
• Sent when instance boots
• Includes deploy event
• Use for initial installation of
software & services
Configure event
• Sent to all instances when any
instance enters or leaves online
state
• Use for making sure the
configuration is up-to-date
Deploy event
• Sent when you deploy via
UI/API; part of each setup
• Use for custom deployment
Undeploy event
• Sent via UI/API when apps are
deleted
• Use to remove apps from
running instances
Shutdown event
• Sent when an instance
is shut down
• Configurable timeout
• Use for clean shutdown
Custom recipes
Chef 12.x Integration
Custom recipes – Chef 11.10
Single Chef run with a merged run_list
AWS
OpsWorks
Recipes
Your
Custom
Recipes
Combined Chef run using the same environment
Custom recipes – Chef 12.x
Two separate Chef runs and thus separate run_lists
AWS
OpsWorks
Recipes
Your
Custom
Recipes
Internal environment Customer environment
chef-client 12.x
Chef 12.x environment
Customer-only Chef run:
• Empty run_list
• No OpsWorks cookbooks polluting your namespace
• node[:opsworks] no longer present, use search instead
Search
Stack state JSON available through search
search(:node, “name:web1”)
search(:node, “name:web*”)
Attributes generated on nodes are not available
Search
appserver = search(:node, "role:php-app").first
Chef::Log.info(”Private IP: #{appserver[:private_ip]}")
Exposes: hostname/FQDN, IP/DNS, private IP/DNS,
instance type, AMI ID, AZ, …
Roles
appserver = search(:node, "role:php-app").first
Chef::Log.info(”Private IP: #{appserver[:private_ip]}")
AWS OpsWorks layers mapped as roles
Search
search(:aws_opsworks_app, "name:myapp")
search(:aws_opsworks_app, ”deploy:true")
search(:aws_opsworks_layer, "name:rails*")
search(:aws_opsworks_rds_db_instance)
search(:aws_opsworks_volume)
search(:aws_opsworks_ecs_cluster)
search(:aws_opsworks_elastic_load_balancer)
search(:aws_opsworks_user)
http://docs.aws.amazon.com/opsworks/latest/userguide/attributes-json-windows.html
Data Bags
Define in custom JSON
{
"opsworks": {
"data_bags": {
"bag_name1": {
"item_name1: {
"key1" : “value1”,
"key2" : “value2”,
...
}
},
"bag_name2": {
"item_name1": {
"key1" : “value1”,
"key2" : “value2”,
...
}
},
...
}
}
}
{
"opsworks": {
"data_bags": {
"myapp": {
"mysql": {
"username": "default-user",
"password": "default-pass"
}
}
}
}
}
mything = data_bag_item("myapp", "mysql")
Chef::Log.info("username: #{mything['username']}")
Recipe
Encrypted Data Bags
Alternative handling:
• App environment variables
• Upload encrypted JSON to Amazon S3
• Leverage IAM roles for Amazon EC2 in recipe
App environment variables
user = ENV[“payment_provider_user“]
password = ENV[“payment_provider_password“]
PaymentGateway.new(user, password)
Windows support
Windows support
Supported as default AMIs:
• Windows Server 2012 R2 Standard
• Windows Server 2012 R2 SQL Server Express
• Windows Server 2012 R2 SQL Server Standard
• Windows Server 2012 R2 SQL Server Web
Chef environment on Windows
Chef environment:
• Chef 12
• Only custom layers
• No Berkshelf
RDP session management
AWS OpsWorks can grant RDP access to IAM users
RDP session management
AWS OpsWorks can grant RDP access to IAM users
Amazon ECS integration
Amazon EC2 Container Service (Amazon ECS)
• Highly scalable and fast container management service
that makes it easy to run and manage Docker containers
on a cluster of Amazon EC2 instances
• Lets you launch and manage container-enabled
applications with simple API calls
• Monitor the state of your cluster with a centralized
service
Amazon ECS integration in AWS OpsWorks
• Streamlined ECS container instances provisioning and
management
• ECS container instances operating system and package
updates
• User permission management
• ECS container instance performance monitoring
• Amazon EBS volume management
• Public and Elastic IP address management
• Security group management
Demo
Amazon EC2 import
and on-premises servers
Motivation
• Manage servers not running on Amazon EC2 with
AWS OpsWorks
• Enable hybrid environments
• Run development and test stacks on EC2 before
deploying to your on-premises fleet
• Scale out from your on-premises server infrastructure to
Amazon EC2
Support for on-premises servers (I)
• Deploy and operate applications on any server with
Internet connection including physical hardware and
VMs in your datacenter
• AWS OpsWorks can update operating systems and
software across your entire fleet
• AWS OpsWorks can run scripts or Chef recipes for you
on your entire fleet
• You can control who can run scripts and you are able to
view a history of each script that has been run
Support for on-premises servers (II)
• Manage operating system users and ssh/sudo access
• Amazon CloudWatch metrics for CPU, memory and load
for your on-premises servers
• Pricing: $0.02/hour per registered on-premises server
Support for existing Amazon EC2 instances
• Installs the AWS OpsWorks agent on already running
Amazon EC2 instances
• Registers the instances to existing OpsWorks stacks
• Assigns the instances to one or multiple OpsWorks
layers
• Benefit from AWS OpsWorks management features
• No additional charges
Registration lifecycle
AWS CLI
aws opsworks register
Registering
RegisteredAssigning
Online
Running
Setup
Running
Setup
Demo
Q & A
Remember to complete
your evaluations!
Thank you!

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

AWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar SeriesAWS Infrastructure as Code - September 2016 Webinar Series
AWS Infrastructure as Code - September 2016 Webinar Series
 
AWS Webcast - SharePoint 2013
AWS Webcast - SharePoint 2013AWS Webcast - SharePoint 2013
AWS Webcast - SharePoint 2013
 
Amazon ECS Deep Dive
Amazon ECS Deep DiveAmazon ECS Deep Dive
Amazon ECS Deep Dive
 
Monitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesMonitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar Series
 
Aws meetup building_lambda
Aws meetup building_lambdaAws meetup building_lambda
Aws meetup building_lambda
 
DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring
 
Getting Maximum Performance from Amazon Redshift (DAT305) | AWS re:Invent 2013
Getting Maximum Performance from Amazon Redshift (DAT305) | AWS re:Invent 2013Getting Maximum Performance from Amazon Redshift (DAT305) | AWS re:Invent 2013
Getting Maximum Performance from Amazon Redshift (DAT305) | AWS re:Invent 2013
 
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
 
(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...
(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...
(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...
 
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
 
(SEC309) Amazon VPC Configuration: When Least Privilege Meets the Penetration...
(SEC309) Amazon VPC Configuration: When Least Privilege Meets the Penetration...(SEC309) Amazon VPC Configuration: When Least Privilege Meets the Penetration...
(SEC309) Amazon VPC Configuration: When Least Privilege Meets the Penetration...
 
DevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - TorontoDevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
DevOps on AWS: Deep Dive on Infrastructure as Code - Toronto
 
CloudFormation Best Practices
CloudFormation Best PracticesCloudFormation Best Practices
CloudFormation Best Practices
 
AWS re:Invent 2016: NEW SERVICE: Centrally Manage Multiple AWS Accounts with ...
AWS re:Invent 2016: NEW SERVICE: Centrally Manage Multiple AWS Accounts with ...AWS re:Invent 2016: NEW SERVICE: Centrally Manage Multiple AWS Accounts with ...
AWS re:Invent 2016: NEW SERVICE: Centrally Manage Multiple AWS Accounts with ...
 
Containers on AWS
Containers on AWSContainers on AWS
Containers on AWS
 
PaaSing Your Code Around
PaaSing Your Code AroundPaaSing Your Code Around
PaaSing Your Code Around
 
AWS CloudFormation (February 2016)
AWS CloudFormation (February 2016)AWS CloudFormation (February 2016)
AWS CloudFormation (February 2016)
 
Container Management on AWS with ECS, Docker and Blox - Level 400
Container Management on AWS with ECS, Docker and Blox - Level 400Container Management on AWS with ECS, Docker and Blox - Level 400
Container Management on AWS with ECS, Docker and Blox - Level 400
 
Getting Started with Docker on AWS
Getting Started with Docker on AWSGetting Started with Docker on AWS
Getting Started with Docker on AWS
 
Deployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and ToolsDeployment and Management on AWS:
 A Deep Dive on Options and Tools
Deployment and Management on AWS:
 A Deep Dive on Options and Tools
 

Andere mochten auch

Andere mochten auch (20)

(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
 
AWS Lambda and Serverless Cloud
AWS Lambda and Serverless CloudAWS Lambda and Serverless Cloud
AWS Lambda and Serverless Cloud
 
AWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows ServerAWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
AWS July Webinar Series: Introducing AWS OpsWorks for Windows Server
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic Beanstalk
 
Agile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic BeanstalkAgile Deployment using Git and AWS Elastic Beanstalk
Agile Deployment using Git and AWS Elastic Beanstalk
 
Deploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic BeanstalkDeploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
Deploy, Manage, and Scale your Apps with AWS Elastic Beanstalk
 
IAM Recommended Practices
IAM Recommended PracticesIAM Recommended Practices
IAM Recommended Practices
 
Customer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWSCustomer Sharing: iCook - Continuous Deployment with AWS
Customer Sharing: iCook - Continuous Deployment with AWS
 
AWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web ServicesAWS Webcast - Getting Started with Amazon Web Services
AWS Webcast - Getting Started with Amazon Web Services
 
Big Data Architectural Patterns
Big Data Architectural PatternsBig Data Architectural Patterns
Big Data Architectural Patterns
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWS
 
Bootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWSBootcamp: Getting Started on AWS
Bootcamp: Getting Started on AWS
 
AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and Docker
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 
AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)AWS 101: Cloud Computing Seminar (2012)
AWS 101: Cloud Computing Seminar (2012)
 
Introduction to Amazon Web Services
Introduction to Amazon Web ServicesIntroduction to Amazon Web Services
Introduction to Amazon Web Services
 
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
 
(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS(DVO401) Deep Dive into Blue/Green Deployments on AWS
(DVO401) Deep Dive into Blue/Green Deployments on AWS
 
(APP202) Deploy, Manage, Scale Apps w/ AWS OpsWorks & AWS Elastic Beanstalk |...
(APP202) Deploy, Manage, Scale Apps w/ AWS OpsWorks & AWS Elastic Beanstalk |...(APP202) Deploy, Manage, Scale Apps w/ AWS OpsWorks & AWS Elastic Beanstalk |...
(APP202) Deploy, Manage, Scale Apps w/ AWS OpsWorks & AWS Elastic Beanstalk |...
 
Introduction to chef
Introduction to chefIntroduction to chef
Introduction to chef
 

Ähnlich wie (DVO301) AWS OpsWorks Under the Hood

Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
Amazon Web Services
 

Ähnlich wie (DVO301) AWS OpsWorks Under the Hood (20)

Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorks
 
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
 
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
 
ChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The HoodChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The Hood
 
A 60-mn tour of AWS compute (March 2016)
A 60-mn tour of AWS compute (March 2016)A 60-mn tour of AWS compute (March 2016)
A 60-mn tour of AWS compute (March 2016)
 
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container DayECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
 
Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
Managing Docker & ECS Based Applications with AWS Elastic Beanstalk - DevDay ...
 
NEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# ApplicationsNEW LAUNCH! Developing Serverless C# Applications
NEW LAUNCH! Developing Serverless C# Applications
 
Deploy, Manage, and Scale Your Apps with OpsWorks and Elastic Beanstalk
Deploy, Manage, and Scale Your Apps with OpsWorks and Elastic BeanstalkDeploy, Manage, and Scale Your Apps with OpsWorks and Elastic Beanstalk
Deploy, Manage, and Scale Your Apps with OpsWorks and Elastic Beanstalk
 
AWS Elastic Beanstalk: Running Multi-Container Docker Applications - DevDay L...
AWS Elastic Beanstalk: Running Multi-Container Docker Applications - DevDay L...AWS Elastic Beanstalk: Running Multi-Container Docker Applications - DevDay L...
AWS Elastic Beanstalk: Running Multi-Container Docker Applications - DevDay L...
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
 
Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013
Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013
Zero to Sixty: AWS OpsWorks (DMG202) | AWS re:Invent 2013
 
컴퓨팅 서비스 업데이트 - EC2, ECS, Lambda (김상필) :: re:Invent re:Cap Webinar 2015
컴퓨팅 서비스 업데이트 - EC2, ECS, Lambda (김상필) :: re:Invent re:Cap Webinar 2015컴퓨팅 서비스 업데이트 - EC2, ECS, Lambda (김상필) :: re:Invent re:Cap Webinar 2015
컴퓨팅 서비스 업데이트 - EC2, ECS, Lambda (김상필) :: re:Invent re:Cap Webinar 2015
 
Getting Started with Serverless and Container Architectures
Getting Started with Serverless and Container ArchitecturesGetting Started with Serverless and Container Architectures
Getting Started with Serverless and Container Architectures
 
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...
 
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
Day 3 - DevOps Culture - Continuous Integration & Continuous Deployment on th...
 
AWS Lambda in C#
AWS Lambda in C#AWS Lambda in C#
AWS Lambda in C#
 
AWS Elastic Container Service
AWS Elastic Container ServiceAWS Elastic Container Service
AWS Elastic Container Service
 
無伺服器架構和Containers on AWS入門
無伺服器架構和Containers on AWS入門 無伺服器架構和Containers on AWS入門
無伺服器架構和Containers on AWS入門
 
Continuous Delivery to Amazon EC2 Container Service
Continuous Delivery to Amazon EC2 Container ServiceContinuous Delivery to Amazon EC2 Container Service
Continuous Delivery to Amazon EC2 Container Service
 

Mehr von Amazon 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 AWS
Amazon 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 Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon 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
 

Mehr von 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
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

(DVO301) AWS OpsWorks Under the Hood

  • 1. © 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Thomas Kaschwig and Jonathan Weiss Amazon Web Services October 2015 DVO301 AWS OpsWorks Under the Hood
  • 2. Agenda • Chef in AWS OpsWorks • Chef 12.x integration • Windows support • Amazon ECS integration + Demo • Amazon EC2 import and on-premises servers + Demo
  • 3. Chef in AWS OpsWorks
  • 4. Modeling in AWS OpsWorks
  • 5. AWS OpsWorks architecture AWS OpsWorks Backend AWS OpsWorks Agent Amazon EC2, Amazon EBS, Amazon RDS, Amazon VPC, Elastic Load Balancing, Amazon ECS, Auto Scaling, auto-healing,... On-instance execution via Chef client/zero Command JSON Command Log+Status
  • 6. Chef integration Chef Client/Zero & AWS OpsWorks Backend Chef Client & Chef Server
  • 7. Chef integration • Supports Chef 11.10 and Chef 12.x • Built-in convenience cookbooks / bring your own • Chef run is triggered by lifecycle event firing: push vs. pull • Event comes with stack state JSON
  • 9. Setup event • Sent when instance boots • Includes deploy event • Use for initial installation of software & services
  • 10. Configure event • Sent to all instances when any instance enters or leaves online state • Use for making sure the configuration is up-to-date
  • 11. Deploy event • Sent when you deploy via UI/API; part of each setup • Use for custom deployment
  • 12. Undeploy event • Sent via UI/API when apps are deleted • Use to remove apps from running instances
  • 13. Shutdown event • Sent when an instance is shut down • Configurable timeout • Use for clean shutdown
  • 16. Custom recipes – Chef 11.10 Single Chef run with a merged run_list AWS OpsWorks Recipes Your Custom Recipes Combined Chef run using the same environment
  • 17. Custom recipes – Chef 12.x Two separate Chef runs and thus separate run_lists AWS OpsWorks Recipes Your Custom Recipes Internal environment Customer environment chef-client 12.x
  • 18. Chef 12.x environment Customer-only Chef run: • Empty run_list • No OpsWorks cookbooks polluting your namespace • node[:opsworks] no longer present, use search instead
  • 19. Search Stack state JSON available through search search(:node, “name:web1”) search(:node, “name:web*”) Attributes generated on nodes are not available
  • 20. Search appserver = search(:node, "role:php-app").first Chef::Log.info(”Private IP: #{appserver[:private_ip]}") Exposes: hostname/FQDN, IP/DNS, private IP/DNS, instance type, AMI ID, AZ, …
  • 21. Roles appserver = search(:node, "role:php-app").first Chef::Log.info(”Private IP: #{appserver[:private_ip]}") AWS OpsWorks layers mapped as roles
  • 22. Search search(:aws_opsworks_app, "name:myapp") search(:aws_opsworks_app, ”deploy:true") search(:aws_opsworks_layer, "name:rails*") search(:aws_opsworks_rds_db_instance) search(:aws_opsworks_volume) search(:aws_opsworks_ecs_cluster) search(:aws_opsworks_elastic_load_balancer) search(:aws_opsworks_user) http://docs.aws.amazon.com/opsworks/latest/userguide/attributes-json-windows.html
  • 23. Data Bags Define in custom JSON { "opsworks": { "data_bags": { "bag_name1": { "item_name1: { "key1" : “value1”, "key2" : “value2”, ... } }, "bag_name2": { "item_name1": { "key1" : “value1”, "key2" : “value2”, ... } }, ... } } }
  • 24. { "opsworks": { "data_bags": { "myapp": { "mysql": { "username": "default-user", "password": "default-pass" } } } } } mything = data_bag_item("myapp", "mysql") Chef::Log.info("username: #{mything['username']}") Recipe
  • 25. Encrypted Data Bags Alternative handling: • App environment variables • Upload encrypted JSON to Amazon S3 • Leverage IAM roles for Amazon EC2 in recipe
  • 26. App environment variables user = ENV[“payment_provider_user“] password = ENV[“payment_provider_password“] PaymentGateway.new(user, password)
  • 28. Windows support Supported as default AMIs: • Windows Server 2012 R2 Standard • Windows Server 2012 R2 SQL Server Express • Windows Server 2012 R2 SQL Server Standard • Windows Server 2012 R2 SQL Server Web
  • 29. Chef environment on Windows Chef environment: • Chef 12 • Only custom layers • No Berkshelf
  • 30. RDP session management AWS OpsWorks can grant RDP access to IAM users
  • 31. RDP session management AWS OpsWorks can grant RDP access to IAM users
  • 33. Amazon EC2 Container Service (Amazon ECS) • Highly scalable and fast container management service that makes it easy to run and manage Docker containers on a cluster of Amazon EC2 instances • Lets you launch and manage container-enabled applications with simple API calls • Monitor the state of your cluster with a centralized service
  • 34. Amazon ECS integration in AWS OpsWorks • Streamlined ECS container instances provisioning and management • ECS container instances operating system and package updates • User permission management • ECS container instance performance monitoring • Amazon EBS volume management • Public and Elastic IP address management • Security group management
  • 35. Demo
  • 36. Amazon EC2 import and on-premises servers
  • 37. Motivation • Manage servers not running on Amazon EC2 with AWS OpsWorks • Enable hybrid environments • Run development and test stacks on EC2 before deploying to your on-premises fleet • Scale out from your on-premises server infrastructure to Amazon EC2
  • 38. Support for on-premises servers (I) • Deploy and operate applications on any server with Internet connection including physical hardware and VMs in your datacenter • AWS OpsWorks can update operating systems and software across your entire fleet • AWS OpsWorks can run scripts or Chef recipes for you on your entire fleet • You can control who can run scripts and you are able to view a history of each script that has been run
  • 39. Support for on-premises servers (II) • Manage operating system users and ssh/sudo access • Amazon CloudWatch metrics for CPU, memory and load for your on-premises servers • Pricing: $0.02/hour per registered on-premises server
  • 40. Support for existing Amazon EC2 instances • Installs the AWS OpsWorks agent on already running Amazon EC2 instances • Registers the instances to existing OpsWorks stacks • Assigns the instances to one or multiple OpsWorks layers • Benefit from AWS OpsWorks management features • No additional charges
  • 41. Registration lifecycle AWS CLI aws opsworks register Registering RegisteredAssigning Online Running Setup Running Setup
  • 42. Demo
  • 43. Q & A