Menu Close

Chapter 11(4/4) – DevOps

AWS OpsWorks – configs management service using Chef

AWS CloudFormation – create/manage a collection of AWS resources orderly

AWS Elastic Beanstalk – service to upload app code and run automatically

AWS Trusted Advisor – inspect your AWS environment and give RECOMMs

AWS Config – provides resource inventory, configs changes, change mgmt..

AWS OpsWorks

A configuration management service that helps you configure and operate applications using Chef

Use cases: host multi-tier web application, support continuous integration

  • Supports both Linux or Windows servers, including existing Amazon EC2 instances or servers running in your own data center
  • A Stack is OpsWorks core component, it’s a container for AWS resources such as EC2 instances, RDS database instances..
  • A Layer is a set of resources that server a particular purpose, Layers depend on Chef recipes to handle tasks
  • You store application and related files in a repository, such as an Amazon S3 or Git repo. Each application is represented by an app
  • The App specifies the application type and contains the info needed to deploy the application from the repository to your instance
  • OpsWorks sends all resource metrics to Amazon CloudWatch

AWS CloudFormation

A service that helps create and manage a collection of AWS resources, provisioning and updating them in an orderly and predictable fashion.

Use cases: quickly launch new test environment, reliably replicate configuration between environments, launch applications in new AWS regions

  • Templates and stacks
  • Templates defines your AWS resources and their properties. It’s a text file with JSON standard
  • Stack is a collection of managed related AWS resources

AWS Elastic Beanstalk

A service allows developers to upload their application codes and will get the application up and running automatically

  • An AWS Elastic Beanstalk application is the logical collection of these AWS Elastic Beanstalk components, which includes environments, versions, and environment configurations (similar to a folder)
  • An application version refers to a specific, labeled iteration of deployable code for a web application
  • An environment is an application version that is deployed onto AWS resources
  • An environment configuration identifies a collection of parameters and settings that define how an environment and its associated resources behave.
  • AWS Elastic Beanstalk provides platform support for the programming languages Java, Node.js, PHP, Python, Ruby, and Go with support for the web containers Tomcat, Passenger, Puma, and Docker.

AWS Trusted Advisor

A service inspects your AWS environment and makes recommendations

Provides best practices in 4 categories:

  1. Cost Optimization
  2. Security
  3. Fault Tolerance
  4. Performance Improvement

4 AWS Trusted Advisor are accessible at no cost:

  1. Service Limits – checks usage more than 80% of the service limit
  2. Security Groups – Specific Ports Unrestricted –  Checks security groups for rules that allow unrestricted access (0.0.0.0/0) to specific ports
  3. IAM Use – Checks for your use of AWS IAM
  4. MFA on Root Account – Checks the root account and warns if MFA is not enabled

AWS Config

A service provides you with AWS resource inventory, configuration history, and configuration change notification

Use cases: change management, continuous audit and compliance, troubleshooting, security and incident analysis

Leave a Reply

Your email address will not be published. Required fields are marked *