Cloud DevOps
Engineer
Syllabus
u dacity.com
u dacity.com
Cloud DevOps Engineer
BEFORE YOU START
Overview:
Companies are looking for talented DevOps engineers to
remain competitive in this agile world. Enroll now to
operationalize infrastructure at scale and deliver applications
and services at high velocity, an essential skill for advancing
your career. Learn to design and deploy infrastructure as
code, build and monitor CI/CD pipelines for different
deployment strategies, and deploy scalable microservices
using Kubernetes.
Prerequisites Educational Objectives
A w ell - prepared learner h as e x perience w it h :
A graduate of this program will be able to design and
Application Architecture
deploy infrastructure as code on AWS, build and
Basic programming in Python or Javascript
monitor CI/CD pipelines for different deployment
strategies on the AWS platform using GitHub
Linux command line proficiency
Actions, and deploy scalable microservices using
Networking basics
Kubernetes on the AWS platform.
Database basics
Length of Program*: Skill level: School:
4 months
Intermediate
Cloud Computing
Software/Hardware and version requirements:
There are no software and version requirements to complete this Nanodegree program. All coursework and
projects can be completed via Student Workspaces in the Udacity online classroom. Udacity’s basic tech
requirements can be found at https://www.udacity.com/tech/requirements.
*The length of this program is an estimation of total hours the average student may take to complete all required coursework,
including lecture and project time. If you spend about 5-10 hours per week working through the program, you should finish within
the time provided. Actual hours may vary.
u dacity.com
Cloud D evO p s Engineer
Course #1: Cloud Fundamentals
The cloud has become a key enabler for innovation with beneficial features like high
availability, unlimited capacity, and on-demand scalability and elasticity. In this course,
students will learn the fundamentals of cloud computing while being introduced to
computing power, security, storage, networking, messaging, and management services in
the cloud. While learning the fundamentals, students will explore tools and services
offered by Amazon Web Services (AWS) through interactive hands-on exercises. By the
end of the course, students will have deployed their first website to AWS.
PROJ ECT # 1
Deploy Static Website on AWS
The cloud is perfect for hosting static websites that only include HTML, CSS, and JavaScript files
that require no server-side processing. In this project, students will deploy a static website to
AWS. First, they will create a S3 bucket, configure the bucket for website hosting, and secure it
using IAM policies. Next, they will upload the website files to their bucket and speed up content
delivery using AWS’s content distribution network service, CloudFront. Lastly, they will access
their website in a browser using the unique S3 endpoint.
y
Supportin gL esson Content
Securit
Describe AW S security services and their uses
Create an I AM policy and review the generated J ON
A r
Cloud Computing
ttach a custom policy to a new use
Identify the types of Cloud computing
-
Detail the benefits of using sign on services for enterprise
Detail the benefits of using public, private, and hybrid cloud and application environments
deployment models
Describe the shared responsibility model and identify the N et w or k ing &E lasticit y
responsibility of the user Identify the benefits of networking in the clou d
Create an A uto Scaling G rou p
Servers in the Cloud and Compute Services
Configure and enable a N etwork Load Balance r
Launch and connect to an EC2 Instance via PuTTY or SSH
A utomatically launch A z
ma on EC2 instances in response to
Leverage the EBS dashboard to review a new EBS volume
specified conditions
Launch a virtual server within a secure network
Create and test a Lambda function
M essaging & Containers
Identify the purpose and uses of S N S messaging
Deploy a sample app to Elastic Beanstalk
Send alerts via S N S by creating, subscribing, and publishing
an alert message to a topic
Storage & Content D eliver y
U pload files to a newly created S 3 bucke t
AW M S anagement
Create a cloud based - N Q
oS L Database leveraging Create a Cloud W atch event to notify via an S N S topic when
DynamoD B
an EC2 instance is create d
Create a M Q yS L database using R S
D Create an S 3 bucket with AW S Cloud F ormation
A ccess private S 3 data via a Cloud F
ront distribution Create an S 3 bucket via the CLI
udacity.com
Cloud D evO p s Engineer
Course #2: Deploy Infrastructure as Code (IAC)
Learn how to provision cloud infrastructure resources using code and industry standard
practices. Learners will gain a thorough understanding of CloudFormation essentials,
including templates, stacks, and intrinsic functions. They will also acquire expertise in
creating networking and web application architectures that conform to real-world best
practices, and represent them visually using infrastructure diagrams. After that, they will
use CloudFormation and bash scripting to implement all the required networking,
compute, load balancing, storage and database resources for their real world design.
PROJ ECT # 2
Deploy a high-availability web app using CloudFormation
In this project, learners will need to apply all the skills they learned throughout the course,
demonstrating their competence in creating infrastructure diagrams, implementing
infrastructure with CloudFormation, and using scripts to facilitate automation. The project will
require the learners to design an infrastructure diagram for the solution, and then utilize
CloudFormation to deploy a dummy server on an EC2 instance, using networking, auto scaling,
load balancer and storage resources. They will also need to build their own bash scripts to
manage their CloudFormation stacks.
Infrastructure Diagrams
Supporting Lesson Content
Assess foundational resources for your infrastructure
deployments in AWS.
Design cloud architecture diagrams to implement business
Getting Started with CloudFormation
requirements following real-world best practices.
Describe Infrastructure as a Code (IAC) as one of the best
practices used in the DevOps model.
Configure the AWS CLI using the AWS Identity and Access
N etwor k ing Infrastructure
Management (IAM) service.
Use the AWS CloudFormation CLI to trigger infrastructure
Explain the fundamentals of CloudFormation.
deployments.
Contrast the manual vs. automated (script-based) Deploy basic networking AWS resources using
provisioning of cloud resources. CloudFormation (VPC, subnets, gateways, and routing).
Parametrize your CloudFormation stacks using a JSON file.
Ser v ers and Securit y Grou p s Communicate CloudFormation stacks using template outputs.
Create security groups with CloudFormation using the least
privilege principle.
Storage and Data b ases
Centralize server configuration using Launch Templates in
Deploy highly available RDS databases using CloudFormation.
CloudFormation.
Configure secure S3 buckets using CloudFormation.
Deploy highly available servers with AutoScaling Groups in
CloudFormation.
Preview changes to CloudFormation stacks using change sets.
Apply load balancing principles to servers using Automate infrastructure workflows using parameterized
CloudFormation. scripts.
udacity.com
Cloud D evO p s Engineer
Course #3: Microservices at Scale using
AWS & Kubernetes
In this course you will learn how to set up infrastructure to deploy and manage
microservice applications with Kubernetes. You will first focus on how containers
and microservices have changed how applications are deployed. Students then learn
how Kubernetes is used to tie everything together. The course will have hands-on
exercises to learn how to build applications with Docker, automate the Docker build
process, and use Kubernetes to manage deployments.
PROJ ECT # 3
Operationalizing a Coworking Space Microservice
In this project, students will take an existing application and deploy it with Kubernetes. The
existing application is a set of APIs that enables users to request one-time tokens and
administrators to authorize access to a coworking space. This service follows a
microservice pattern and the APIs are split into distinct services that can be deployed and
managed independently of one another. Students will demonstrate course skills by going
through the end to end process to deploy this application to Kubernetes. This will be
accomplished by building Docker images of the application with AWS CodeBuild, setting up
a Kubernetes cluster, and deploying to the cluster with Docker images and Helm Charts.
Supporting L esson Content
Containers for DevOps on AWS Kubernetes on AWS Fundamentals
Identify the need for and use of Docker
H w o lz
to operationa i e Docker containers w ith container
Use Docker to create images
orchestratio n
Push images to a container repository
Creating and managing a K b
u l
ernetes c uster w ith EKS
Use Docker to create containers
l
Dep oying Docker images w ith K b
u ernetes
Mci roservi c es for DevOps on AWS Operationali z in g Kubernetes
Understand w hy microser v l w
ices are popu ar ith de v l
e opers
Understand ho w to maintain K b u l
ernetes app ications in
H w o to use b l l
ui d too s to e ffi l b l
cient y l l
ui d mu tip e Docker
productio n
images
Use H l l
e m charts to simp ify dep oyments l
udacity.com
Cloud D evO p s Engineer
Course #4: Building a Continuous
Integration Pipeline
In this course, you will learn how to stretch for Continuous Delivery as your “true
north” while you build CI/CD systems that automate the “stuff” between developers
and the cloud. You’ll gain essential knowledge and put it into practice as you learn
about Continuous Integration and Continuous Deployment. You’ll combine your
existing knowledge with new tools like Git Hub Actions to implement and deploy to
variety of environments. You’ll also learn how to keep an eye on your deployments
with proactive monitoring and alerting.
PROJ ECT # 4
Movie Picture Pipelne
In this project, students will design and implement a CI/CD pipeline using GitHub Actions.
Students will demonstrate the skills they learned in this course to execute the deployment
and verification of frontend and backend applications to an existing Kubernees cluster.
S upporting L
esson Content
Introduction to CI/CD Continuous Integration and
Continuous Deplo ym ent
Identify use cases for CI/CD
Design a CI/CD pipeline using a visual mocku
fi
Describe the principles of Continuous Delivery
Articulate the bene ts of CI/CD to stakeholders
E b
na ling Continuous Deli v y
er
w h
it Deplo ym ent Pipelines
Building a Continuous Integration Pipeline
Create/deploy the necessary infrastructure/resources for
building CI/CD pipeline s
Create a variety of YAML Workflows
Secure a CI/CD pipeline by leveraging secret storage
Design a git branching strategy to support a development
team's workflow
U z -
tili e caching strategies to speed up application build time s
Create a custom GitHub action and deploy it to GitHub
Create alerts to monitor your pipeline s
Marketplace
Automate deploying an application to multiple AW S Design and execute a CI pipeline based on a given set of
accounts requirements
udacity.com
Data A n a lyst
Course #1 Instructor
Kesha Williams. Instructor
Kesha has over 20 years experience in software development and is a software engineering
manager at Chick-fil-A, routinely leading innovation teams in proving out the use of cloud
services to solve complex business problems. She was recently named an Alexa Champion
by Amazon.
Course #2 Instructor
Carlos Rivas. Instructor
Carlos is a Senior Solutions Architect at Infiniti Consulting where he helps institutions move
traditional data centers to the cloud. He has worked for several large telecommunication
providers managing and configuring network infrastructure, using Java, Groovy, Python,
Perl, and PHP.
Course #3 Instructor
Justin Lee. Data Platform Engineer
Justin Lee designs and builds modern scalable systems and consults for Fortune 500
companies. He currently works in the Silicon Valley as a platform engineer to enable large
volumes of users' data workflows. He has a BS in Computer Science from UCLA and is often
mentoring and teaching developers through Codementor.
Course #4 Instructor
Byron Sommardahl. Chief Technology Officer
Byron is co-founder and Chief Technology Officer of Acklen Avenue, an agile software
development company. Byron has been developing software since he was 9 years old, and
is a true believer in anything that improves software maintainability, usability, and delivery.
udacity.com
Learn More at
w w w.u dacity.com
u dacity.com