Deployment and Provisioning Flashcards
OpsWorks
automate deployments
monitor deployments
maintain deployments
useful tool for longer application lifecycles.
Chef
open source tool that automates infrastructure by turning it in to code.
Stacks
represent a set of resources that we want to manage as a group – EC2 instance, EBS volumes, load balancers
we could build a stack for a development, staging, or production environment.
Layers
Used to represent and configure components of a stack
Can use built-in layers and customize those or create completely custom layers.
recipes are added to layers.
Instances
- must be associated with at least one layer
- could build a stack for a development, staging, or production environment
- can run as 24/7
- load-based or time-based.
Apps
are deployed to the application layer through a source code repository like GIT, SVN, or even S3.
we can deploy an app against a layer and have OpsWorks execute recipes to prepare instances for the application
Recipes
- create using Ruby language and based off of the Chef deployment software
- custom recipes can customize different layers in an application
- run at certain pre-defined events within a stack
- Setup – occurs on a new instance after first boot
- Configure - occurs on all stack instances when they enter or leave the online state
- Deploy - occurs when we deploy an app
- Undeploy - happens when we delete an app from a set of application instances
- Shutdown - happened when we shut down an instance(but before it is actually stopped).
CloudFormation
- allows you to create and provision resources in a reusable template fashion
- turns your resources into stacks that work as units
- allows you to source control your infrastructure
- JSON compatible template
Anatomy of a cloudFormation template
- -AWSTempalteForamtVersion
- -Description
- -Metadata
- -Parameters
- -Mappings
- -Conditions
- -Resources(required)
- -Outputs