The Ultimate DevOps Course 2023 – Jenkins, Terraform, AWS


Videos & Step by Step Labs to learn how to automate your build, package, and tests jobs for a Spring Boot App in AWS

What you will learn

Learn and Understand DevOps Fundamentals

Understand the core concepts of Architecting DevOps Pipelines for Specific Goals

Learn how to manage source code, build scripts, and application configuration required to build, deploy, test, and release applications.

Learn how to build a DevOps Pipeline that automatically builds, packages and tests a spring boot application from scratch

Learn how to integrate DevOps tools such as: Jenkins, Packer, Maven, GitHub, JMeter & Terraform in AWS.

Learn how to create your DevOps Infrastructure and Pipelines using your own GitHub and AWS Accounts.

Learn how to build and run automated tests against every completed build to ensure the software is always in a working state.

Learn how to automatically provision infrastructure as code with Terraform as part of your DevOps Pipelines

Learn how to build a complete and decouple DevOps Lifecycle Pipeline that includes five independent and decoupled jobs

Present yourself with confidence in the project meetings and DevOps Jobs Interviews

Learn how to use JMeter to automatically test your applications as part of your DevOps Pipelines

Learn how to create highly complex Jenkins CICD pipelines

Learn how to build AWS AMI Images with Packer

Learn how DevOps applies to the Software Development Life Cycle

Learn how to extend your DevOps Pipelines architecture both horizontally and vertically

Description

Course material last updated: March 2023

This is a project-based DevOps Course, meaning that at the end of the course, you will have a complete DevOps Pipeline and DevOps Infrastructure that will automatically build, package, and test the Java Spring Boot Application – PetClinic.  You will build this DevOps Pipeline and Infrastructure from scratch. The DevOps pipeline is composed of 5 separate, independent, and decoupled jobs, each stored on their own git repository. The five jobs are the following: the build job, the packaging job, the manual/exploratory testing job, the API testing job, and the performance testing job.

DevOps CICD is a software engineering approach to automate the delivery of software. It aims to build, test, and release software faster and more frequently. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production.

In this course, you will learn techniques, processes, and tools to achieve continuous delivery by connecting and automating all phases of software delivery, including configuration management, automated acceptance testing, dependency management, and the creation and management of testing environments. These techniques are widely applicable to all sorts of different software projects—big, small, highly technical, or short sprints to early value.

Using a practical approach, the course covers the CICD tools, strategies, and concepts of Continuous Delivery. You will create your own Jenkins Pipeline to build, test and deploy jobs as well as integrate Jenkins with integration and delivering tools such as Maven, JUnit, GitHub, JMeter, Packer, and Terraform on AWS.

Prerequisites: Knowledge of AWS Environment is desirable but not required. Students should have knowledge of basic System Integration and Test methods, tools, and terms.

Software:

  • AWS account
  • PDF Reader / Google Word Access
  • Open-source software (download links will be provided)

Hardware:

  • A personal computer terminal

What Past Students Are Saying

The best part of the class is the various aspects of DevOps and the CI/CD pipeline. I learned a lot. Thank you!


Subscribe to latest coupons on our Telegram channel.

-Kuowen

Just an outstanding instructor. Keenly knowledgeable in a cutting-edge field, yet available for consultation and approachable across the range of coding experience amongst a wide range of experience in the student group. The course is exceedingly well-organized, and gives great “bang-for the buck”.

This class was fantastic for me! It helped to fill in gaps in my experience – I was familiar with some of the tools and practices, but not all, and putting together the final project facilitated my understanding of the mechanisms of a working CI/CD pipeline.

-Todd

I really liked that the course focused on the hands-on learning (labs) evenly with the theoretical. For this topic especially, the hands-on learning is critical and is something that is missing in other courses.

I liked this course on DevOps, because at work, we are in the process of establishing a DevSecOps and going through this course gave me hands-on experience, and I appreciate that very much.

Norma is an expert in the field of DevOps. She has a pleasant personality also. Whenever we encountered any problems, she would try to address it.

I really liked the approach the instructor took to help and assist my learning and development throughout the course. The instructor was very friendly and approachable. She has immense amount of knowledge and experience in DevOps and it shows. I will keep in touch with her for further coursework for myself as well as my team. I appreciate her hardwork and great attitude!

Instructor Teaching & Software Experience:

  • 648 – Number of students taught using this course material in a Virtual Instructor Led Training (VILT) course
  • 5+ Years Teaching at Private Technical Companies and UCSD University
  • 25+ Years of working in the Software Industry

Instructor Education & AWS Certifications

  • BS in Computer Science (SDSU)
  • AWS Architecture Certification
  • AWS Developer Certification
  • AWS System Integration Certification
  • AWS DevOps Professional Certification
English
language

Content

Welcome! & DevOps Introduction

About Your Instructor
Please introduce yourself via our DevOps Forum:
Course Highlights
Jenkins Server Preview
DevOps Course Quick Start
Course Objectives
Prerequisites For This Course
DevOps Goals
DevOps Life Cycle
DevOps Roles
DevOps Tools
DevOps Continuous Integration & Continuous Delivery Definitions
**Assignment: Create Your Accounts
**Step by Step LAB: Configure your Workstation with AWS and Git

Jenkins Introduction, Installation & Setup

Section RoadMap
LESSON: Jenkins Introduction
Jenkins Installation: Create an Instance Role for your EC2 Instance
Jenkins Installation: Create a Security Group for Your EC2 Instance
Jenkins Installation: Create your EC2 Instance and assign the SG and EC2 Role
Jenkins Installation: Connect to your EC2
Jenkins Installation: Install Jenkins in an EC2 Instance
Jenkins Installation: Jenkins Global Configuration
Jenkins Installation: Jenkins Additional Configuration
Stopping and Restarting your EC2 Instance
**Step by Step LAB: Jenkins Installation
LESSON: Jenkins Tour
Tips On Using The Lab Documents
LESSON: Jenkins Job
**Step by Step LAB: Create Freestyle, Upstream and Downstream Jenkins Jobs
Jenkins Job: Step By Step Freestyle Jobs Introduction
**Step by Step LAB: Create Freestyle, Upstream and Downstream Jenkins Jobs
Jenkins Views
Create a Jenkins Views that includes all of your Freestyle Jobs
Create a Jenkins Views that includes all of your Freestyle Jobs (Step By Step)

Jenkins Pipelines Introduction & Phase 1 Pipeline job

Road Map – Section 3
LESSON: Pipelines & JenkinsFiles
Pipelines & JenkinsFiles Resources
Jenkins Pipeline Job: introduction
Jenkins Pipeline Job PART 1: Create Your GitHub Repo
Jenkins Pipeline Job PART 2: Run the Spring PetClinic App on your local terminal
Jenkins Pipeline Job Part 3: Run the PetClinic Application from Jenkins
Jenkinsfile Explanation
**Step by Step LAB: Create a Jenkins Pipeline Job

Packer Introduction & Phase 2 Pipeline Job

Class RoadMap
LESSON: Packer Introduction
Jenkins Package Job: Install Packer on your Jenkins EC2 Instance
Create the Packer GitHub Repo Part 1: Create the PetClinic Package Repo
Create the Packer GitHub Repo Part 2A: Base Image Explanation
Create the Packer GitHub Repo Part 2B: Create Base Image
Create the Packer GitHub Repo Part 2C: Create PetClinic Image from your local PC
Create the Packer GitHub Repo Part 2D: Package Repo Explanation
Add the Package Job to Jenkins Part 1: Install Packer on Jenkins
Add the Package Job to Jenkins Part 2: Add the Package Job to Jenkins
Add the Package Job to Jenkins Part 3: Add Package Job to the MultiJob Pipeline
**Step by Step LAB: Create Package Job – Build Application AMI

Terraform Introduction & Phase 3: Exploratory Testing Job

Road Map
LESSON: DevOps & Terraform
LESSON: Terraform Introduction
LESSON: Terraform Language
Exploratory Testing Job: Install Terraform On Your Local Terminal
Create the Exploratory GitHub Repo Part 1: Create The PetClinic Repo
Create the Exploratory GitHub Repo Part 2: Terraform Local Run & Explanation
Add the Exploratory Job to Jenkins Part 1: Install Terraform on Jenkins
Add the Exploratory Job to Jenkins Part 2: Prework for PetClinic on Jenkins
Add the Exploratory Job to Jenkins Part 3: Add Exploratory Job to Jenkins
Add the Exploratory Job to Jenkins Part 3: Add Job to MultiJob Pipeline
**Step by Step LAB: Exploratory Testing Job

JMeter Introduction & Phase 3: JMeter API Test

Road Map
LESSON: JMeter
Install JMeter on your local windows machine
Install JMeter on your local ubuntu machine (optional)
Create the API Testing GitHub Repo Part 1: Create The PetClinic API Repo
Create the API Testing GitHub Repo Part 2: JMeter API Test Explanation
Create the API Testing GitHub Repo Part 3: Create JMeter API Test
Create the API Testing GitHub Repo Part 4: Run Your JMeter Test On Your Local PC
Create the API Testing GitHub Repo Part 5: JMeter API Repo Explained
Add the API Job to Jenkins Part 1: Install JMeter on Jenkins
Add the API Job to Jenkins Part 2: Add the PetClinic API Job to Jenkins
Add the API Job to Jenkins Part 3: Add Job to Your MultiJob Pipeline
**Step by Step LAB: API Testing Job

Final Job – JMeter Performance Test

Road Map
Create the Performance Testing GitHub Repo Part 1: Create Performance Test Repo
Create the Performance Testing GitHub Repo Part 2: Create the Performance Job
Create the Performance Testing GitHub Repo Part 3: Performance Repo Explained
Add the Performance Job to Jenkins Part 1: Add the Job to Jenkins
Add the API Job to Jenkins Part 2: Add the Job to your MultiJob Pipeline
**Step by Step LAB: Performance Testing Job

DevOps Improvement (Optional)

Assignment: DevOps Improvement