Devops Fundamentals Aws

Tags:

Step by step Practical course to Automate Continuous Integration/Delivery process with Ansible,Jenkins,GIT,Docker on AWS

Last updated 2022-01-10 | 4.4

- You will know how to Practically Implement Continuous Integration & Delivery for any Projects
- Understand working with AWS Cloud Linux Servers from Scratch to Setup Deployment
- Real time hands on Deploying Apps into Dockerized Containers by setting up Dockers in AWS

What you'll learn

You will know how to Practically Implement Continuous Integration & Delivery for any Projects
Understand working with AWS Cloud Linux Servers from Scratch to Setup Deployment
Real time hands on Deploying Apps into Dockerized Containers by setting up Dockers in AWS
Knowledge on Ansible tool to automate the Scripts/tasks in any Linux Servers
Ability to achieve Continuous Integration with Ansible + Docker + Jenkins + GIT
Git Web Hook Integration with Jenkins to achieve Continuous Integration Solution

* Requirements

* None
* Everything including Linux basics are taught from Scratch

Description

Lets get into Devops World from Scratch with  real time Hands On Projects to build Solutions for CI/CD through Jenkins with deploying Docker Containerized apps into AWS Linux Servers from Git hub.
We will also learn Automation tool called Ansible which will generate Scripts to automate the process of Deployment using Docker Containers in various machines.

This Course assumes that students do not have any prior knowledge on Devops tools and will start everything from Scratch including Linux Basic Commands.
By end of this course, You will get Practical Project experience in understanding how all the Devops tools connected together to build robust Automation Infrastructure.

Below are the topics on high level we will go over in this course :

What are Hosting Servers and Application Servers?
Demo to understand what Deployment is?
How code developed is hosted on the servers and accessed through browser?
Demo on Jenkins Job creation for deployment of app in Server.
Drawbacks with current design and why to choose Linux OS


Create and Launch AWS Linux Instance to manage Jenkins
Connect to Linux Server through SSH
Install JAVA on Linux Server
Install Jenkins, Maven and GIT to have job for Deployment


Create new Linux server (App Server) in AWS for Deploying App
Create User in Server which can manage deploy
Connect Jenkins server to App Server through SSH Plugin
Create a Jenkin Job which deploys app into App Server


Install Docker in App Server
Create a Docker file which Install TomCat Server and Deploy App
Create Image from the file and deploy into Container
Access the App through public Ip:port which is running on Container


Install Ansible and its need for Deployment
Create Ansible Playbook to automate all docker related commands
Fix the problems of stopping and starting containers through Ansible yml file
Create SSH Key and hosts file for establishing connection through Ansible
Pass the Ansible Playbook commands into Jenkins Job for automatic Deployment in App server

Create another Linux App Server B through AWS
Create User in Server which can manage deploy
Establish connection to App Server B from App server A through Ssh keys
Ping the App Server B from Server A through Ansible command for connection check
Develop a yml playbook file which pushes the docker image to Docker Hub in Server A
Modify the Jenkins job to deploy the App into Server B through Ansible Commands


Adding Post build action run automated tests after new Code successfully Deployed
What is Pipeline and understand the basics of Jenkin Pipeline
Creating the JenkinsFile with the complete job configuration design to run end to end deployment process
Checkin the JenkiFile into Code repo and automate the complete CI/CD process through Jenkins!!



Wish you all the Best and See you in the Course :)


Who this course is for:

  • Software Engineers
  • QA Engineers
  • Aspirants to shift career to Devops

Course content

13 sections • 62 lectures

What is Devops and Course FAQ's - Must Watch Preview 10:39

I am from QA/Testing background. How this course helps in my career Preview 01:16

Getting Started with Deployment Basics Preview 13:07

Download Hello world project from GIT Preview 00:22

Deploying Hello World App in TomCat Server Preview 10:41

Spin up Jenkins Instance in Windows for Deployment Preview 12:01

What is Continuous Integration & Continuous Delivery Preview 06:39

Test your knowledge till section-2

Installation Notes download for the entire Course Preview 00:09

Create Amazon AWS Account to launch Linux Servers Preview 05:14

Launch EC2 (Linux) Instance from AWS Console with necessary configurations Preview 07:13

CAUTION on AWS Charges Preview 08:21

What is SSH Client and how to connect to AWS Linux Servers Preview 12:04

Understand the basic linux commands with Java Installation Preview 13:42

Setting Java and Maven path in Bash Profile in Linux Preview 09:54

How to configure Maven in Linux from Apache http server Preview 12:59

Install Jenkins on Linux and start the Jenkin Server Preview 12:25

Create new Jenkin Job for Deploying the Apps Preview 15:01

Test your knowledge on Linux commands and tools

How to Deploy the App into another Linux Server from Jenkins Preview 12:00

Use Publish over SSH plugin in Jenkins to connect to new Server Preview 19:11

Important Note about this Section Preview 00:21

What is Docker? How it helps in Automation Industry? Preview 09:17

What are containers and Images in Docker Software? Preview 08:23

How exactly Virtual machines are different from Docker Preview 08:56

How to Install Docker into Machines with Prerequisites needed Preview 07:25

Understand working with DockerHub Preview 16:44

Install Docker on Linux and give Group Permissions Preview 13:25

Create Container and Install Tomcat Server Image for Deployment Preview 09:53

How to Login into Container and inspect folders and files Preview 15:32

Understand Creatind Docker file to automate all the manual Deploy process Preview 15:17

Docker file download Preview 00:02

Start and Run the Docker Container and deploy the App in the Linux Server Preview 12:55

Important Note on Billing Preview 00:11

What is SSH Connection and how to communicate with other Servers Preview 18:39

Generate SSH keys and copy the keys to make a connection Preview 05:07

SSH Configuration Steps Preview 00:41

Test your knowledge on Jenkins, Dockers, Advanced Linux tools

What is Ansible and how it can address deploying into multiple Servers Preview 10:12

Install Ansible and understand the importance of Playbook Yaml files Preview 15:03

Create Ansible Playbook Script which can automate the Docker deployment Preview 14:26

Executing Ansible Scripts on to another QA Server with SSH Connection Preview 12:37

How to copy and transfer Deployment files to QA Server Preview 15:42

Ansible playbook file download Preview 00:21

Create Jenkins Job which can deploy App into QA Server using Ansible Preview 04:29

Summary Preview 00:33

Important Note on GIT Preview 00:20

How to Achieve COntinuous Integration with GitHub Hook in Jenkins Preview 12:10

Parameterize Jenkin Build to deploy in multiple Environments Preview 10:43

Test your knowledge on Ansible, GIT & Jenkins Continuous Integration

Note about this Section Preview 00:05

Introduction to GIT Preview 08:41

Importance of Github and its uses Preview 09:05

Creating Git config and repositories Preview 06:32

How to push code to remote repository Preview 01:40

Understanding Staging and commit in git Preview 11:35

Add remote repository and push the committed code Preview 08:53

End to end working example on Git commands -1 Preview 15:48

End to end working example on Git commands -2 Preview 06:15

Importance of Branching in GIT Preview 24:55

How to resolve Merge conflicts with GIT Preview 14:17