AWS Certified Devops Engineer – Professional (2018)
The AWS Certified DevOps Engineer – Professional exam tests the candidate’s technical expertise in provisioning, operating, and managing distributed application systems on the AWS platform. For this exam, you should know how to:
Implement and manage continuous delivery systems and methodologies on AWS
Understand, implement, and automate security controls, governance processes, and compliance validation
Define and deploy monitoring, metrics, and logging systems on AWS
Implement systems that are highly available, scalable, and self-healing on the AWS platform
Design, manage, and maintain tools to automate operational processes
This course is designed to provide you with the knowledge and skills required to pass the AWS Certified DevOps Engineer – Professional exam and to successfully apply these skills in the workplace.
This lesson discusses the AWS Certified DevOps Professional Certification, and covers the course objective of preparing the student for passing the certification exam. It also details the sections covered in the syllabus.
This video introduces the course instructor.
This lesson explains the format of the AWS Certified DevOps Professional exam and walks you through the exam registration process.
This lesson introduces you to the DevOps Doctrine, an interactive diagramming tool used throughout the course. The DevOps Doctrine is organized to match each section presented in the course, and although it is used in the video lessons, it can also be accessed as a standalone tool. You can access the tool in the Downloads section of the course at the provided URL. In this lesson, we'll learn how to navigate through the DevOps Doctrine by section and drill down further by lesson.
DevOps Doctrine Link: https://bit.ly/2JKRJLj
This video gives you a walkthrough on how to use the AWS Free Tier Tracking and Billing Widget for you own AWS Account!
Deployment with EC2 and Auto Scaling
This lesson will give you an overview of Auto Scaling and some of the key techniques for using Auto Scaling groups. This lesson covers the theoretical concepts behind Auto Scaling and sets the stage for upcoming lessons in the section. We will also walk through how to create a Launch Configuration and an Auto Scaling group.
This lesson provides a detailed explanation of the available termination policies for an Auto Scaling group as well as a detailed walkthrough of the default termination policy. Understanding the default termination policy will give you a solid foundation for understanding termination policies as a whole. We will also learn how to set up termination policies for an Auto Scaling group in the AWS Management Console.
In this lesson, we’ll learn how to suspend Auto Scaling processes. We’ll discuss which Auto Scaling processes can be suspended and walk through how to suspend Auto Scaling processes from the AWS Management Console. In addition, we’ll monitor the behavior of an Auto Scaling group while the launch process is suspended.
This lesson explains the proper use and configuration of lifecycle hooks for Auto Scaling groups. We'll go through a step-by-step review of the lifecycle of an EC2 instance and discuss how and why a lifecycle hook can be applied to an EC2 instance during instance launch or termination. This lesson lays the groundwork for "Auto Scaling Lifecycle Hooks Part Two," which is a hands-on lesson.
This lesson provides a hands-on walkthrough of how to create a lifecycle hook for an Auto Scaling group. We’ll create a launch configuration, an Auto Scaling group, and a lifecycle hook for the Auto Scaling group. Finally, we’ll manually launch an instance to monitor and verify the proper execution of the lifecycle hook.
This lesson reviews the AWS API, CLI, and SDK with a specific focus on Auto Scaling. We’ll discuss the documentation on each of these topics, including where to find it and how to use it. In addition, we’ll open up the Command Line Interface and use Auto Scaling commands to create an Auto Scaling group and a launch configuration.
A common use case is to have an SQS queue backed by an AWS Auto Scaling group. In general, the queue will store data that needs to be processed (in this lesson, the queue will store customer orders from a web application). The Auto Scaling group can then be configured to scale out or in based on the size of the queue, with CloudWatch alarms configured to trigger on queue size. This lesson provides a hands-on walkthrough of this use case using both the AWS Management Console and the AWS Command Line Interface to configure the scaling parameters.
Deployment Concepts with EC2
This lesson will teach you how to use IAM roles to delegate permissions with EC2. It is often necessary for applications to access resources in the AWS environment. Using IAM roles that can be attached to an EC2 instance is a best practice for allowing applications on an EC2 instance to access other resources and services. This lesson provides a hands-on walkthrough of how to create an IAM role, attach the role to an EC2 instance, and access an S3 bucket using the role.
When creating an Elastic Load Balancer, you have the option of storing the access logs for the Load Balancer in S3. This lesson provides a detailed discussion of access logs and their contents. It also provides a hands-on walkthrough of how to configure access logs for an Elastic Load Balancer and set up delivery of those access logs to a specified S3 Bucket.
An Elastic Load Balancer performs health checks on all instances registered to it. In this lesson, we’ll discuss how to properly configure these health checks. We will create an Auto Scaling group; register the instances in the group with the Elastic Load Balancer; and configure, monitor, and troubleshoot health checks for this architecture.
In this lesson, we’ll learn about encrypted communication between clients and the ELB and between the ELB and backend instances, as well as how to configure ELB listeners. You’ll learn not only how to encrypt data to the load balancer but also to take it a step further by encrypting data the entire end-to-end distance.
This lesson details the various options and techniques for backing up EC2. You’ll learn about EC2 snapshots, AMIs, and their various uses and creation techniques. We’ll use the Management Console to create snapshots and AMIs and launch an EC2 instance in a new region from an AMI (a common disaster recovery technique).
CloudWatch for DevOps
CloudWatch is an essential tool for the DevOps engineer. CloudWatch supports the DevOps tasks of automation, communication, and collaboration by providing access to monitoring and logging tools. CloudWatch metrics work with Elastic Load Balancers and can be used to determine the scaling actions of Auto Scaling groups. Custom metrics are a very powerful tool, allowing the DevOps engineer to leverage CloudWatch monitoring in a wide range of scenarios. This lesson introduces all of these concepts before each is covered in further detail later in the section.
This lesson covers the core concepts and terminology a DevOps engineer needs to know when working with CloudWatch. Becoming familiar with these concepts lays the foundation for moving forward in this section of the course.
This lesson explains the differences between ELB logging and metrics, what metrics we have access to, and how we can pull statistics from those metrics. You will learn how to configure, capture, and interpret metrics for the Elastic Load Balancer.
This lesson explains the different Auto Scaling and EC2 metrics and how they can be used to monitor your infrastructure and application. We then discuss how different scaling policies work, including how to use step adjustments in order to react more or less aggressively depending on the severity of an alarm breach.
In addition to EC2 metrics, logging is extremely powerful for troubleshooting and monitoring data that is not supported with CloudWatch EC2 metrics out of the box. In this lesson, you’ll learn how you can publish data specific to your application and requirements and why this is important.
This lesson focuses on how to notify personnel of CloudWatch alarms. One way to do this is to create an SNS topic and have personnel subscribe to it. In this lesson, we’ll set up a CloudWatch alarm, link it to an SNS topic, and use it to notify the appropriate personnel of the alarm via email.
This lesson explains how Kinesis can be used with CloudWatch to consume CloudWatch log data. DevOps engineers often have to stream CloudWatch log data to other services. Kinesis can be used both as an endpoint for CloudWatch logs and as a vehicle for streaming log data to another service, such as Elastic MapReduce, for more in-depth analysis.
CloudFormation for DevOps
This lesson focuses on the core concepts of CloudFormation and lays the foundation for the rest of the section. We’ll take a look at how to create, update, and delete or roll back stacks as well as the techniques used to perform each of these tasks.
This lesson explains the different deployment strategies and methods available with CloudFormation. You will learn about bootstrapping EC2 instances and how helper scripts can be used to manage this process. Additionally, we will learn how CloudFormation can work with other technologies, such as Puppet, OpsWorks, and Elastic Beanstalk, for deployments.
Wait conditions can be used to pause the creation of a CloudFormation stack and wait for a signal (or multiple signals) before continuing to create the stack. In this lesson, you will learn how to use wait conditions and to recognize the proper use cases for wait conditions.
Creation policies are very useful for creating and configuring instances with an application. In this lesson, you will learn how to use creation policies to pause the creation of EC2 instances or instances within an Auto Scaling group.
This lesson will provide a hands-on walkthrough of how to use the CreationPolicy attribute with an Auto Scaling group to make sure the instances were bootstrapped properly before creating the rest of the stack.
CloudFormation provides helper scripts to assist with provisioning EC2 instances. In this lesson, we will learn how to use the following four helper scripts: cfn-init, cfn-signal, cfn-hu, and cfn-get-metadata.
Stack policies are used to control which resources can be updated and by what actions. In this lesson, we will learn how to configure stack policies in the JSON format and allow or deny actions on specific resources.
Update policies play a crucial role in deploying updates when using Auto Scaling groups in CloudFormation. In this lesson, we will learn about the different update options we have, how they differ from one another, and when to use each one.
Elastic Beanstalk for DevOps
This lesson provides an introduction to Elastic Beanstalk and demonstrates how to create an Elastic Beanstalk environment.
This lesson explains the different application deployment strategies available in Elastic Beanstalk: all at once, rolling, rolling with an additional batch, and immutable. We’ll discuss the pros, cons, and use cases for each method.
This lesson explains how Docker can be used with Elastic Beanstalk to perform deployments. We’ll discuss the differences between single- and multi-container deployments and walk through a single-container deployment.
This lesson explains how CloudFormation can be used with Elastic Beanstalk for deployments. This type of deployment combines CloudFormation’s control over versioning and infrastructure with Elastic Beanstalk’s ease of application deployment. To demonstrate this, we’ll walk through an example of this type of deployment.
Application Deployments on OpsWorks
In this lesson, we’ll learn how to configure Elastic Beanstalk environments using configuration files and saved configurations, and by applying changes directly to the environment. We’ll take a look at some example config files, and we'll discuss precedence.
This lesson provides an in-depth look at the essential parts of OpsWorks, including stack creation, the purpose and methods of creating layers within a stack, instance creation, and application deployment to instances. We’ll also walk through how to create an OpsWorks stack.
In this lesson, we’ll discuss the fundamentals of creating an OpsWorks stack. Understanding stack architecture, including layers and instances, is an essential DevOps skill that is often tested on the AWS DevOps Professional Certification exam.
This lesson explains the different deployment strategies for OpsWorks. OpsWorks deployments can be done manually, by rolling updates, or by blue/green deployments. In this lesson, we’ll go over each of these techniques and discuss the pros and cons of using each method. We'll also go through a hands-on walkthrough of a manual deployment.
This lesson provides a review of the essential concepts of AWS DynamoDB. We’ll walk through the structure and principles of DynamoDB using a few tables as well as review and create several indexes, partition keys, and sort keys. Finally, we’ll look at a scenario in which a secondary index would be useful, which sets the stage for the next lesson.
In this lesson, we’ll take a detailed look at local and global secondary indexes and walk through how to create each type of index. In the previous lesson, we saw a situation where we needed a secondary index on a table, and in this lesson we’ll learn how to create that secondary index. In addition, we’ll learn the difference between local and global secondary indexes.
This lesson explains provisioned throughput, including how to perform in-depth calculations of provisioned throughput. We’ll learn the difference between provisioned throughput calculations for read and write operations as well as the differences in provisioned throughput for local and global secondary indexes. We’ll also take a look at AWS Auto Scaling for DynamoDB (although this is not expected to be on the exam at the time of recording).
This lesson explains how to provide access to DynamoDB from outside an AWS account using web identify federation. We’ll walk through how to configure web identity federation and discuss how to use cross-account access with Data Pipeline (or DynamoDB Streams) to propagate DynamoDB data to other regions.
Data Pipeline with DynamoDB
This lesson demonstrates how AWS Data Pipeline can be used to import data from and export data to DynamoDB. We’ll walk through how to set up and activate a data pipeline and discuss other use cases for the Data Pipeline service.
S3 Concepts for DevOps
This lesson explains the different ways that S3 can be used for DevOps deployments. We’ll discuss credential storage and access using the IAM role, cross-account access, exporting load balancer access logs to S3, and S3 lifecycle management policies. In addition, we’ll walk through how to attach an IAM role to an EC2 instance for S3 access, which allows you to access S3 programmatically from an application on the EC2 instance.
This lesson discusses AWS S3 lifecycle management. We provide an overview of S3 and discuss possible scenarios and key words that you may encounter on the AWS Certified DevOps Professional exam. Finally, we’ll walk through how to configure lifecycle management for an S3 bucket.
In this lesson, we’ll learn about granting cross-account access to an S3 bucket. We’ll take a look at a scenario in which a company has two AWS accounts: Development and Production. Instead of having to duplicate accounts for team members, we can use cross-account access to grant employees access to both accounts. To demonstrate this, we will give developers on the Development account access to an S3 bucket in the Production account.
This lesson explains how S3 can be used to store log files from an Elastic Load Balancer. We’ll walk through how to configure the Elastic Load Balancer to send access logs to S3 as well as how to configure S3 to allow the ELB access to S3 to store the log files. Finally, we’ll verify that our configuration was successful.
A/B Testing and Blue/Green Deployments for DevOps
This lesson introduces the core concepts of blue/green deployments. After learning the basics, we’ll discuss the different patterns used to perform blue/green deployments. Finally, we’ll walk through two simple patterns, setting the stage for a deeper dive into the remaining patterns later in the section.
In this lesson, we will learn how to use Route 53 to perform blue/green deployments. This pattern uses a DNS or IP address endpoint to switch over from a blue environment to a green environment. We can also perform a switchover from within the OpsWorks and Elastic Beanstalk consoles instead of directly interacting with Route 53. We will walk through how to change the alias record in Route 53 to perform a switchover as well as take a look at weighted routing in Route 53.
This lesson focuses on how to perform blue/green deployments using Auto Scaling groups in the AWS Management Console. In this lesson, we will not use Route 53 to facilitate a blue/green deployment. Instead, we will attach a second Auto Scaling group (Green) to the Elastic Load Balancer and gradually increase it to the desired size. We will then decommission the instances in the original Auto Scaling group.
In this lesson, we’ll learn how to use Auto Scaling group launch configurations to perform blue/green deployments from the AWS Management Console. When we can’t or don’t want to use Route 53 to manage traffic flow to the blue and green environments, we can instead create a second launch configuration (Green) and attach it to our Auto Scaling group. We then double the size of the Auto Scaling group, and the new instances will be created using the Green launch configuration. Once these instances have been successfully deployed, we can decommission the old (Blue) instances.
This lesson explains the concept of A/B testing. Although A/B testing is not the same as blue/green deployments, they are similar. Like blue/green deployments, A/B testing is used to compare two different versions of an application in order to find out which is more effective at engaging users. We can manage two versions of an application and the traffic flow to each using Route 53 and weighted routing. In this lesson, we’ll take a look at some of these techniques using the AWS Management Console, Route 53, and CloudFront.
The Scenario Solver
This lesson introduces the Scenario Solver, a learning tool that provides scenarios with partial graphical solutions and enables you to use your knowledge of AWS DevOps to come up with solutions.
In this lesson, we’ll take a look at two CloudWatch scenarios in the Scenario Solver. This activity will test your understanding of CloudWatch and the CloudWatch tools that interact with other AWS services and challenge you to create a well-designed logging and alarm solution.
This lesson uses the Scenario Solver to test your understanding of Auto Scaling groups. You’ll use various Auto Scaling tools and techniques to solve the scenarios presented.
This lesson will test your ability to perform deployments using Elastic Beanstalk. To solve the presented scenarios, you’ll need to understand the tools and techniques used to perform deployments with Elastic Beanstalk.
This lesson will test your ability to perform deployments with CloudFormation. To solve the presented scenarios, you’ll need a solid grasp of the tools and techniques available for performing deployments in CloudFormation.
This lesson will test your ability to perform deployments using EC2. To solve the presented scenarios, you’ll need a solid understanding of the tools and techniques available to you when working with EC2.
This lesson will test your ability to perform deployments with OpsWorks. Understanding the fundamentals of OpsWorks, including the construction and hierarchy of stacks, is an important skillset for the DevOps engineer.
This lesson goes over the steps you can take to ensure your success on the exam. We’ll outline a full strategy for preparing for the exam, including study tips, key terms you should know, how and when to schedule your exam, and helpful test-taking strategies.
This lesson discusses your options for continued learning after you've completed the AWS Certified DevOps Professional course.
In this video, Linux Academy Founder and CEO Anthony James explains the steps you can take to get recognized after successfully passing your certification exam. Anthony will explain how to connect with him on LinkedIn and Twitter so that he can endorse you for the skills you have mastered by getting your certification.