11 - Automating Your AWS Workloads Flashcards

1
Q

What is automation in the context of cloud architecture?

A

Automation is a best practice that allows common tasks to be repeated faster than doing them manually.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

List some benefits of automation.

A
  • Rapid testing and experimentation
  • Reducing expenses
  • Minimizing human error
  • Rolling back changes safely and completely
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

True or False: Automation replaces humans in all tasks.

A

False

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the two approaches to automation mentioned?

A
  • Imperative
  • Declarative
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the imperative approach to automation?

A

It involves scripting where explicit steps are provided to carry out a task.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is an example of an imperative approach?

A

Writing a Bash script to install a web server on an instance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does the declarative approach focus on?

A

It focuses on declaring the desired result of a task rather than how to carry it out.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is CloudFormation?

A

CloudFormation is an AWS service that takes a declarative approach to building and configuring AWS infrastructure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Define Infrastructure as Code (IaC).

A

IaC is using code to define your infrastructure and configurations, which reduces human error.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are some AWS services that enable automation?

A
  • CloudFormation
  • CodeCommit
  • CodeBuild
  • CodeDeploy
  • CodePipeline
  • EC2 Auto Scaling
  • Systems Manager
  • OpsWorks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are templates in CloudFormation?

A

Templates are text files that define the resources CloudFormation will create and how to configure them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

In what formats can CloudFormation templates be written?

A
  • JSON
  • YAML
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is a stack in CloudFormation?

A

A stack is a container that organizes the resources described in a template.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What happens when you delete a stack in CloudFormation?

A

CloudFormation automatically deletes all the resources in that stack.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the purpose of stack updates in CloudFormation?

A

To modify individual resources in a stack by adjusting the template.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is a change set in CloudFormation?

A

A change set allows you to review specific changes before executing them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is drift detection in CloudFormation?

A

A feature that monitors stacks for manual changes and alerts you when they occur.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

How does CloudFormation compare to the AWS CLI?

A

CloudFormation keeps resources in a stack and manages updates easily, while the AWS CLI requires manual management of resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is CodeCommit?

A

CodeCommit is a service that allows you to create private Git repositories integrated with AWS services.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is the primary purpose of CodeBuild?

A

CodeBuild is a fully managed service that prepares source code for deployment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What is continuous integration (CI)?

A

A practice where developers check in code multiple times a day, with automated testing to ensure functionality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What types of build environments does CodeBuild offer?

A
  • build.general1.small
  • build.general1.medium
  • build.general1.large
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is CodeDeploy used for?

A

CodeDeploy is used to automatically deploy applications to various environments like EC2 and on-premises servers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What must be installed on an instance to use CodeDeploy?

A

The CodeDeploy agent.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What is CodeDeploy?
A service that deploys applications, scripts, configuration files, and files to EC2 or on-premises instances ## Footnote CodeDeploy requires the installation of the CodeDeploy agent on the target instance.
26
What operating systems are supported by the CodeDeploy agent?
* Amazon Linux * Ubuntu Server * Microsoft Windows Server * Red Hat Enterprise Linux (RHEL)
27
What are the deployment options available in CodeDeploy?
* Deploy according to resource tags * Based on Auto Scaling group membership * Manually selecting instances
28
What are the two types of upgrade deployments supported by CodeDeploy?
* In-Place Deployment * Blue/Green Deployment
29
What is an In-Place Deployment?
Deploys the application to existing instances, stopping the application if it's running, cleaning up, deploying the new version, and restarting the application.
30
What is a Blue/Green Deployment?
Deploys the application to a new set of instances, optionally decommissioning old instances and redirecting traffic if using an elastic load balancer.
31
How does deploying to ECS differ from deploying to EC2?
Instead of deploying application files to an instance, you deploy Docker images that run your application in containers.
32
What is Amazon Lambda?
Amazon's serverless computing platform that runs functions written in various languages.
33
How does CodeDeploy handle updates to existing Lambda functions?
CodeDeploy creates a new version of the function and allows for gradual or immediate traffic shifting to the new version.
34
What is the purpose of CodePipeline?
Orchestrates and automates the process of moving software from development to production through various stages.
35
What stages can be included in CodePipeline?
* Source * Build * Test * Approval * Deploy * Invoke
36
What is the function of the Approval action in CodePipeline?
Requires manual approval before proceeding to the next stage.
37
What are the two types of providers that can perform actions in CodePipeline?
* Source Providers * Build and Test Providers * Deploy Providers
38
What is CodeStar?
A service that integrates various developer tools and allows for project management and collaboration.
39
What is a Command Document in Systems Manager?
Scripts that run to configure systems to the desired state.
40
What does Configuration Compliance feature in Systems Manager do?
Shows whether instances are in compliance with the desired configuration state.
41
What is the function of the Distributor in Systems Manager?
Deploys installable software packages to instances.
42
What is AppConfig in Systems Manager?
A feature that configures, validates, and monitors application configuration data.
43
What is EC2 Auto Scaling?
Automatically launches preconfigured EC2 instances to meet user demand.
44
What are Launch Configurations and Launch Templates?
Define characteristics of instances for Auto Scaling, with templates offering more flexibility.
45
What is the desired capacity in an Auto Scaling group?
The number of instances that Auto Scaling aims to maintain.
46
What does self-healing mean in the context of Auto Scaling?
Re-creates failed instances to maintain the expected number of instances.
47
What is dynamic scaling?
Automatically launches or terminates instances based on demand.
48
What is predictive scaling in Auto Scaling?
Creates scheduled scaling actions based on historical usage patterns.
49
What is the difference between imperative and declarative approaches in configuration management?
Imperative focuses on how to achieve a desired state, while declarative focuses on defining the desired state.
50
What is the purpose of AWS Distributor?
To deploy and install software packages from a ZIP archive stored in an S3 bucket.
51
What is AppConfig in AWS Systems Manager?
A feature that can configure, validate, and monitor application configuration data.
52
How does AppConfig manage configuration changes?
By allowing configurations to be stored in S3, Git repositories, or Systems Manager and using rules to validate them.
53
What must be done to use AppConfig in an application?
Instrument the application using the AppConfig SDK.
54
What is OpsWorks?
A set of three services that allow a declarative approach to configuration management.
55
Which configuration management platforms does OpsWorks use?
Chef and Puppet Enterprise.
56
What is the difference between OpsWorks Stacks and traditional configuration management?
OpsWorks Stacks provides a simple approach for deploying applications without needing to manage Puppet or Chef servers.
57
What does an OpsWorks layer specify?
Instance-level settings such as security groups and public IP address usage.
58
What types of instances can OpsWorks provision?
Linux or Windows EC2 instances.
59
What is a service layer in OpsWorks?
A layer that extends the functionality of a stack to include other AWS services.
60
Name two examples of service layers in OpsWorks.
* Relational Database Service (RDS) * Elastic Load Balancing (ELB)
61
True or False: OpsWorks stacks are the same as CloudFormation stacks.
False.
62
What is the fundamental concept of automation in AWS?
Defining a task as code that a system carries out.
63
What are the two approaches to writing automation code?
* Imperative commands * Declarative statements
64
What type of automation do AWS Systems Manager and CodeDeploy use?
Imperative approach.
65
What is the main focus of configuration management?
Achieving and maintaining configuration consistency and compliance.
66
What do AWS Developer Tools automate?
Software development, testing, and deployment processes.
67
What does EC2 Auto Scaling do?
Automatically provisions a set number of EC2 instances based on demand.
68
What are Automation documents in Systems Manager used for?
Automating administrative AWS tasks.
69
What is continuous integration?
The practice of regularly checking in code and performing automated build and test actions.
70
What does continuous delivery allow for?
Deploying the application to production after manual approval.