Nanodegree key: nd9991
Version: 1.0.0
Locale: en-us
In this program, you’ll develop the skills you need to join the rapidly growing cloud devops field.
Content
Part 01 (Elective): Prerequisite: Networking
This lesson will cover the basic knowledge and tools required to configure and investigate network connectivity.
-
Module 01: Prerequisite: Networking
-
Lesson 01: Networking
This lesson will cover the basic knowledge and tools required to configure and investigate network connectivity.
- Concept 01: Interview
- Concept 02: Lesson Map & Learning Objectives
- Concept 03: Network Communication Model
- Concept 04: Addressing
- Concept 05: Addressing and Networks
- Concept 06: OSI Model
- Concept 07: Switching
- Concept 08: Frame Structure
- Concept 09: Switching At Scale
- Concept 10: Virtual LANs
- Concept 11: Routing
- Concept 12: Wireshark
- Concept 13: Domain Name System
- Concept 14: Types of DNS Records
- Concept 15: DNS Hierarchy
- Concept 16: Load Balancing
- Concept 17: Load Balancing Approaches
- Concept 18: Outro
-
Part 02 : Welcome to the Nanodegree Program
-
Module 01: Orientation
-
Lesson 01: Welcome to Cloud DevOps Engineer Nanodegree Program
Welcome to the Cloud DevOps Engineer Nanodegree program! In this lesson, you will learn more about the structure of the program and meet the team.
-
Lesson 02: Introduction to Cloud DevOps
- Concept 01: Meet Your Instructors
- Concept 02: Introduction
- Concept 03: Support for DevOps Adoption
- Concept 04: All In vs Baby Steps
- Concept 05: Change Model (ELSA)
- Concept 06: Success Predictors
- Concept 07: Coming from Grassroots _1
- Concept 08: From Management_1
- Concept 09: The Start
- Concept 10: Working with Strong Hierarchy_1
- Concept 11: Dealing with Silos
- Concept 12: Best Practices
- Concept 13: Metrics_1
- Concept 14: Antipattern Hiring a DevOps Team
-
-
Module 02: Career Support
-
Lesson 01: Get Help with Your Account
What to do if you have questions about your account or general questions about the program.
-
Lesson 02: Knowledge, Community, and Careers
You are starting a challenging but rewarding journey! Take 5 minutes to read how to get help with projects and content.
-
-
Module 03: Jobs in Cloud Computing
-
Lesson 01: Jobs in Cloud Computing
To kick off your industry research, learn about different jobs found in Cloud Computing.
-
Part 03 : 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. Learn the fundamentals of cloud computing while being introduced to compute power, security, storage, networking, messaging, and management services in the cloud. While learning the fundamentals, you will explore tools and services offered by Amazon Web Services (AWS) through interactive hands-on exercises. By the end of the course, you will have deployed your first website to AWS, and you will be prepared to continue your learning journey in the Cloud Developer Nanodegree program.
-
Module 01: Cloud Fundamentals
-
Lesson 01: Cloud Computing
Learn the basics of cloud computing including cloud deployment models, benefits, and popular options.
- Concept 01: Course Introduction
- Concept 02: Instructor Introduction
- Concept 03: Lesson Introduction
- Concept 04: What is Cloud Computing?
- Concept 05: Types of Cloud Computing
- Concept 06: Cloud Computing Deployment Model
- Concept 07: Common Benefits
- Concept 08: Options
- Concept 09: Services
- Concept 10: Global Infrastructure
- Concept 11: Shared Responsibility Model
- Concept 12: Lab: Setup free-tier account
- Concept 13: Lesson Recap
-
Lesson 02: Foundational & Compute Service
Learn why we need servers, compute power, and security.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need servers in the cloud?
- Concept 03: Elastic Cloud Compute (EC2)
- Concept 04: Demo - Elastic Cloud Compute (EC2)
- Concept 05: Elastic Block Store (EBS)
- Concept 06: Demo - Elastic Block Store (EBS)
- Concept 07: Why do we need security in the cloud for our servers?
- Concept 08: Virtual Private Cloud (VPC)
- Concept 09: Demo - Virtual Private Cloud (VPC)
- Concept 10: Lab - Launch an EC2 instance
- Concept 11: Why do we need compute power in the cloud?
- Concept 12: Lambda
- Concept 13: Demo - Lambda
- Concept 14: Lab - Create and execute a Lambda
- Concept 15: Elastic Beanstalk
- Concept 16: Lab - Deploy App to Beanstalk
- Concept 17: Lesson Recap
-
Lesson 03: Storage & Content Delivery
Learn why we need storage and content delivery in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need storage in the cloud?
- Concept 03: S3 & Glacier
- Concept 04: Demo - S3 & Glacier
- Concept 05: DynamoDB
- Concept 06: Demo - DynamoDB
- Concept 07: Lab - DynamoDB
- Concept 08: Relational Database Service (RDS)
- Concept 09: Demo - Relational Database Service (RDS)
- Concept 10: RedShift
- Concept 11: Lab - RDS
- Concept 12: Why do we need content delivery in the cloud?
- Concept 13: Cloud Front
- Concept 14: Demo - Cloud Front
- Concept 15: Lab - S3 & Cloud Front
- Concept 16: Lesson Recap
-
Lesson 04: Security
Learn the importance of security in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need security for applications?
- Concept 03: AWS Shield
- Concept 04: AWS Web Application Firewall
- Concept 05: Identity and Access Management (IAM)
- Concept 06: Demo - Identity and Access Management (IAM)
- Concept 07: Lab - IAM
- Concept 08: Lesson Recap
-
Lesson 05: Networking & Elasticity
Learn the basics of networking and elasticity in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need networking in the cloud?
- Concept 03: Route 53
- Concept 04: Why do we need elasticity in the cloud?
- Concept 05: EC2 Auto Scaling
- Concept 06: Demo - EC2 Auto Scaling
- Concept 07: Elastic Load Balancing
- Concept 08: Demo - Elastic Load Balancing
- Concept 09: Lab - EC2 Auto Scaling
- Concept 10: Lesson Recap
-
Lesson 06: Messaging & Containers
Learn the basics of messaging and containers in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need messaging in the cloud?
- Concept 03: Simple Notification Service (SNS)
- Concept 04: Demo - Simple Notification Service (SNS)
- Concept 05: Why do we need queuing technology?
- Concept 06: Simple Queue Service (SQS)
- Concept 07: Demo - Simple Queue Service
- Concept 08: Lab - SNS
- Concept 09: Why do we need containers?
- Concept 10: Elastic Container Service (ECS)
- Concept 11: Demo - Elastic Container Service
- Concept 12: Lesson Recap
-
Lesson 07: AWS Management
Learn why we need logging, auditing, and resource management in the cloud.
- Concept 01: Introduction
- Concept 02: Why do we need logging and auditing in the cloud?
- Concept 03: Cloud Trail
- Concept 04: Demo - Cloud Trail
- Concept 05: Cloud Watch
- Concept 06: Demo - Cloud Watch
- Concept 07: Lab - Cloud Watch
- Concept 08: What is Infrastructure as Code and why do we need it?
- Concept 09: Cloud Formation
- Concept 10: Demo - Cloud Formation
- Concept 11: Lab - Cloud Formation
- Concept 12: AWS Command Line Interface (CLI)
- Concept 13: Demo - AWS Command Line Interface (CLI)
- Concept 14: Lesson Recap
- Concept 15: Course Recap
-
Lesson 08: Deploy Static Website on AWS
In this project, you will deploy a static website to AWS.
-
Part 04 : Deploy Infrastructure as Code (IAC)
With the advent of cloud computing, along came several tools that enabled us to deploy the underlying infrastructure components that provide security and services to our servers by writing scripts. In this course, you’ll learn how to deploy this infrastructure using CloudFormation, AWS’ tool for Infrastructure as Code.
You will use CloudFormation to deploy Infrastructure patterns that are used in the industry broadly and can be readily used to deploy any cloud application. Like in the real world, you will begin with initial business requirements that you will turn into Cloud Architecture Diagrams. Then you will deploy this architecture using CloudFormation.
-
Module 01: Infrastructure as Code
-
Lesson 01: Getting Started with CloudFormation
Set up the necessary tools to get started with AWS CloudFormation and deploy your first server.
- Concept 01: Introduction
- Concept 02: Course Overview
- Concept 03: What is DevOps
- Concept 04: Why you need DevOps
- Concept 05: What are the benefits of Cloud DevOps?
- Concept 06: Set up Tools
- Concept 07: Creating Access Key ID for IAM User
- Concept 08: Configuring AWS CLI
- Concept 09: Adding Additional Keys
- Concept 10: Understanding CloudFormation
- Concept 11: Getting Started With CloudFormation Script
- Concept 12: Testing CloudFormation
- Concept 13: Creating a VPC: Manually vs Automated
- Concept 14: Automating with CloudFormation
- Concept 15: Verifying in console
- Concept 16: Conclusion
-
Lesson 02: Infrastructure Diagrams
Convert business requirements into infrastructure diagrams and understand the principles behind design choices.
- Concept 01: Introduction
- Concept 02: Generalizing to other cloud providers
- Concept 03: Setting up Lucidcharts
- Concept 04: Exercise: Setting Up Lucid Charts
- Concept 05: Diagramming AWS Accounts and Regions
- Concept 06: Exercise: Diagramming AWS accounts & regions
- Concept 07: Diagramming Availability Zones
- Concept 08: Exercise: Diagramming Availability Zones
- Concept 09: Virtual Private Cloud
- Concept 10: Exercise: Virtual Private Cloud
- Concept 11: Public vs Private Subnets
- Concept 12: Exercise: Public vs Private Subnets
- Concept 13: IGW Internet Gateway
- Concept 14: Exercise: IGW Internet Gateway
- Concept 15: Network Address Translation
- Concept 16: Exercise: NAT's
- Concept 17: Autoscaling groups
- Concept 18: Exercise: Autoscaling Groups
- Concept 19: Load Balancers
- Concept 20: Exercise: Load Balancers
- Concept 21: Security Groups
- Concept 22: Exercise: Security Groups
- Concept 23: Routing Table
- Concept 24: Exercise: Routing Table
- Concept 25: S3
- Concept 26: Exercise: S3
- Concept 27: Reviewing Our Diagram
- Concept 28: Conclusion
-
Lesson 03: Networking Infrastructure
Learn about various networking components that can be used in a VPC.
-
Lesson 04: Servers and Security Groups
Implement security groups and understand the concept of least-privilege as it applies to network traffic
- Concept 01: Introduction
- Concept 02: Setting Up Our Environment
- Concept 03: Understanding Security Groups
- Concept 04: Security Groups
- Concept 05: Creating Autoscaling Group
- Concept 06: Launch Configuration
- Concept 07: Debugging Launch Configuration
- Concept 08: Adding Target Groups and Listeners
- Concept 09: Updating the Stack with the Load Balancer
- Concept 10: Debugging Our Security Group
- Concept 11: Final Review
- Concept 12: Conclusion
-
Lesson 05: Storage and Databases
Deploy relational database and encryption service for your application.
-
Lesson 06: Deploy a high-availability web app using CloudFormation
In this project, you’ll deploy web servers for a highly available web app using CloudFormation.
Project Description - Deploy a high-availability web app using CloudFormation
Project Rubric - Deploy a high-availability web app using CloudFormation
-
-
Module 02: Career Support
-
Lesson 01: Optimize Your GitHub Profile
Other professionals are collaborating on GitHub and growing their network. Submit your profile to ensure your profile is on par with leaders in your field.
- Concept 01: Prove Your Skills With GitHub
- Concept 02: Introduction
- Concept 03: GitHub profile important items
- Concept 04: Good GitHub repository
- Concept 05: Interview with Art - Part 1
- Concept 06: Identify fixes for example “bad” profile
- Concept 07: Quick Fixes #1
- Concept 08: Quick Fixes #2
- Concept 09: Writing READMEs with Walter
- Concept 10: Interview with Art - Part 2
- Concept 11: Commit messages best practices
- Concept 12: Reflect on your commit messages
- Concept 13: Participating in open source projects
- Concept 14: Interview with Art - Part 3
- Concept 15: Participating in open source projects 2
- Concept 16: Starring interesting repositories
- Concept 17: Next Steps
-
Part 05 : Build CI/CD Pipelines, Monitoring & Logging
In this course, you’ll learn the process of taking software from source code to deployment and beyond. You’ll learn about automated testing, choosing the right deployment strategy for your business needs and deploying appropriate CI/CD pipelines. You’ll also learn about monitoring and logging to ensure that your application is running at peak performance and stays that way.
You’ll also learn to manage and make changes to your servers in an automated way, using Ansible, a leading Configuration Management tool.
-
Module 01: Build CI/CD Pipelines, Monitoring & Logging
-
Lesson 01: Continuous Integration and Continuous Deployment
Set up Jenkins environment and learn the fundamentals of pipelines
- Concept 01: Introduction
- Concept 02: Course Overview
- Concept 03: Interview: Career Skills
- Concept 04: What is CI/CD and a Pipeline?
- Concept 05: AWS Setup
- Concept 06: IAM and EC2 Setup
- Concept 07: AWS Setup Quiz
- Concept 08: Jenkins Intro
- Concept 09: Connect to EC2 Instance using SSH
- Concept 10: Installing Jenkins
- Concept 11: Install Blue Ocean Plugin into Jenkins
- Concept 12: Jenkins Quiz
- Concept 13: Review and Practice Exercises
-
Lesson 02: Jenkins Pipeline and Deployment Strategies
Managing the complexity of CI/CD and choosing the correct deployment strategy
- Concept 01: Introduction
- Concept 02: Install AWS Plugin into Jenkins
- Concept 03: Intro to Blue Ocean
- Concept 04: Adding a Repo to a Pipeline
- Concept 05: Multiple Pipelines
- Concept 06: Pipeline Triggers
- Concept 07: Pipeline Testing
- Concept 08: Security Testing with Aqua
- Concept 09: Deployment Strategies
- Concept 10: Deployment Big Picture
- Concept 11: Deployment Practice
-
Lesson 04: Monitoring
Configuring Monitoring with Prometheus and ELK Stack
-
Lesson 05: Jenkins Pipelines on AWS
In this project you will deploy and run an instance on AWS, configure Jenkins, and create a pipeline to deploy a static website on S3.
-
Part 06 : Microservices at Scale using AWS & Kubernetes
In this course, you learn to create and deploy a kubernetes cluster, configure kubernetes autoscale and load test a kubernetes application. You’ll learn to operationalize both existing and new microservices and apply containers best practices. You’ll learn to deploy Machine Learning microservices that are elastic and fault tolerant. You’ll learn to pick the appropriate abstraction for microservices: Serverless (AWS Lambda) or Container Orchestration (Kubernetes).
-
Module 01: Microservices at Scale using AWS & Kubernetes
-
Lesson 01: Deploy an Event-Driven Microservice
Learn about cloud-native applications and deploy functions as a service (FaaS) using AWS Lambda and Cloud9.
- Concept 01: Lesson Outline
- Concept 02: Functions as a Service (FaaS)
- Concept 03: A Model for Serverless
- Concept 04: Benefits of FaaS
- Concept 05: Cloud-Native
- Concept 06: Characteristics of Cloud-Native Systems
- Concept 07: AWS Account & Resources
- Concept 08: Cloud9 Environment
- Concept 09: Lambda Functions
- Concept 10: Deploying and Testing
- Concept 11: Tutorial: Making Change
- Concept 12: Event-Handling
- Concept 13: Events & Response
- Concept 14: Create a Test
- Concept 15: Deploy & Use API Gateway
- Concept 16: Creating a Virtual Environment
- Concept 17: Exercise: Wikipedia
- Concept 18: Exercise Code
- Concept 19: Wikipedia Example
- Concept 20: Test & Response
- Concept 21: Summary
-
Lesson 02: Using Docker Format Containers
Setup a local development environment and learn to run Docker containers, locally. Learn how to lint and test some source code and Docker files.
- Concept 01: Docker Containers
- Concept 02: Exercise: Setting Up a Local Environment
- Concept 03: Makefiles
- Concept 04: Exercise: Create A Basic Makefile
- Concept 05: Install Docker
- Concept 06: Linting and CircleCI
- Concept 07: Running Dockerfiles
- Concept 08: Exercise: Deploying to Amazon ECR
- Concept 09: Summary
-
Lesson 03: Containerization of an Existing Application
Build and run a containerized application, specifying the source code, app dependencies, and writing a complete Dockerfile.
-
Lesson 04: Container Orchestration with Kubernetes
Deploy an application on a Kubernetes cluster. Learn how the components of a cluster can be used to automatically scale resources.
- Concept 01: Install Kubernetes
- Concept 02: Overview of Kubernetes
- Concept 03: Monitoring, Logging and Debugging with Kubernetes
- Concept 04: Exercise: Prometheus Monitoring
- Concept 05: Exercise: Logging
- Concept 06: Exercise: Debugging
- Concept 07: Auto Scaling with CPU or Memory
- Concept 08: [Placeholder] Exercise: Autoscaling
- Concept 09: Summary
-
Lesson 05: Operationalizing Microservices
Learn about continuous integration and development (CI/CD pipeline) and implement fault-tolerance and load tests to create more robust applications.
-
Lesson 06: Operationalize a Machine Learning Microservice API
In this project, you will continue your work on operationalizing microservices by deploying a machine learning inference API using docker and kubernetes.
Project Description - Operationalize a Machine Learning Microservice API
Project Rubric - Operationalize a Machine Learning Microservice API
-
-
Module 02: Career Support
-
Lesson 01: Take 30 Min to Improve your LinkedIn
Find your next job or connect with industry peers on LinkedIn. Ensure your profile attracts relevant leads that will grow your professional network.
- Concept 01: Get Opportunities with LinkedIn
- Concept 02: Use Your Story to Stand Out
- Concept 03: Why Use an Elevator Pitch
- Concept 04: Create Your Elevator Pitch
- Concept 05: Use Your Elevator Pitch on LinkedIn
- Concept 06: Create Your Profile With SEO In Mind
- Concept 07: Profile Essentials
- Concept 08: Work Experiences & Accomplishments
- Concept 09: Build and Strengthen Your Network
- Concept 10: Reaching Out on LinkedIn
- Concept 11: Boost Your Visibility
- Concept 12: Up Next
-
Part 07 : Capstone
-
Module 01: Capstone
-
Lesson 01: Capstone
In the capstone project, students define the scope of the project and select the right deployment strategy based on different business requirements.
-