Session 0: Case-Study of a Fortune 500 Global Bank |
|
Banks current challenges |
|
00:00:00 |
|
Banks Current Infrastructure and technical landscape |
|
00:00:00 |
|
Banks business objectives |
|
00:00:00 |
|
Create a project plan to achieve the business objectives |
|
00:00:00 |
Labs/Assessments |
|
Theory Session |
|
00:00:00 |
Session 1: Before DevOps |
|
Course Overview |
|
00:00:00 |
|
Evaluation of Software Development and Methodology |
|
00:00:00 |
|
Comparison of different Methodology |
|
00:00:00 |
|
Software Development Life Cycle and Tool Sets |
|
00:00:00 |
|
Introduction of Agile Methodology (Main Principle, Ceremonies, User Story, Roles etc.) |
|
00:00:00 |
|
Challenges in Agile |
|
00:00:00 |
Labs/Assessments |
|
Theory Session |
|
00:00:00 |
Session 2: DevOps Introduction |
|
Who coined the term and how the movement started |
|
00:00:00 |
|
Ellaborate DevOps, DevTestOps, DevSecOps |
|
00:00:00 |
|
Need for DevOps : in the context of our case study and in general |
|
00:00:00 |
|
DevOps Key Players and trends |
|
00:00:00 |
|
DevOps : Toolset |
|
00:00:00 |
|
Is Agile mandatory for the culture of DevOps |
|
00:00:00 |
|
Continuous Delivery Vs Continuous Deployment |
|
00:00:00 |
|
Amazon and Netflix case study |
|
00:00:00 |
Labs/Assessments |
|
Theory Session |
|
00:00:00 |
Session 3: Git - SCM - Source Control Management |
|
Installation of Git and Create GitHub Account |
|
00:00:00 |
|
Introduction to SCM |
|
00:00:00 |
|
Types of SCMs |
|
00:00:00 |
|
Creating repo(repositories) |
|
00:00:00 |
|
Adding source code files to repo |
|
00:00:00 |
|
Branches and Best practices |
|
00:00:00 |
|
Track Files and logs |
|
00:00:00 |
|
Merging, Cloning, tagging |
|
00:00:00 |
|
gitignore |
|
00:00:00 |
|
Working on Git Command Line |
|
00:00:00 |
|
Hello World Project set-up on eclipse |
|
00:00:00 |
|
Understand how SCM will help our Bank |
|
00:00:00 |
Labs/Assessments |
|
Add files and commit |
|
00:00:00 |
|
Commit to Local and push changes to Remote |
|
00:00:00 |
|
Pull changes from the remote repository |
|
00:00:00 |
|
Create branches, merge them, revert a commit, and tag commit |
|
00:00:00 |
Session 4:LINUX Basics and Course Tool Set-up |
|
What is Linux |
|
00:00:00 |
|
Brief History |
|
00:00:00 |
|
Linux Basics |
|
00:00:00 |
|
Various Linux Distributions |
|
00:00:00 |
|
Linux adoption in industry examples |
|
00:00:00 |
|
Linux file system |
|
00:00:00 |
|
Linux important directories |
|
00:00:00 |
|
Package Management RPM |
|
00:00:00 |
|
Using Yum for installation |
|
00:00:00 |
|
Understanding Linux commands basics |
|
00:00:00 |
|
Working with basic commands |
|
00:00:00 |
|
Working with commands required for DevOps training |
|
00:00:00 |
|
Linux command history |
|
00:00:00 |
|
Globbing and Quoting |
|
00:00:00 |
|
Linux file handling commands |
|
00:00:00 |
|
pipes, grep and regular expression |
|
00:00:00 |
|
Text Editors vi, vim, nano |
|
00:00:00 |
|
Security and permissions |
|
00:00:00 |
|
Shell scripting |
|
00:00:00 |
|
Connecting two machines using SSH |
|
00:00:00 |
Labs/Assessments |
|
Practicing Linux command and other aspects for every topic listed |
|
00:00:00 |
|
Use absolute and relative path |
|
00:00:00 |
|
Use RPM and yum to install Apache server |
|
00:00:00 |
|
List files in various ways and learn how to work with hidden files |
|
00:00:00 |
|
Try setting and removing environment variables |
|
00:00:00 |
|
Use command history and reuse the previous commands by using |
|
00:00:00 |
|
reaching out to files and folders using globbing |
|
00:00:00 |
|
Use and for quoting and backslash |
|
00:00:00 |
|
try locate and find commands |
|
00:00:00 |
|
try less, head, and tail commands to view file content |
|
00:00:00 |
|
modify files using redirection |
|
00:00:00 |
|
searchin content using pipes, grep and regular expression |
|
00:00:00 |
|
Create a file using vim and understand various shortcuts to edit files |
|
00:00:00 |
|
Create uses, give permissions, changing permissions and ownership |
|
00:00:00 |
|
Write scripts and executing to connect to EC2 instance |
|
00:00:00 |
Labs/Assessments |
|
Create an EC2 instance. We will use this instance for most of our labs and assignments |
|
00:00:00 |
|
You will also create 2-3 additional instances during the training to work with multiple machines |
|
00:00:00 |
Session 6:Devlopment Enviornment - Java-Eclipse-Maven |
|
Installation of JDK and JRE and environment variable set up |
|
00:00:00 |
|
Installation of eclipse |
|
00:00:00 |
|
Installation of Maven |
|
00:00:00 |
|
Introduction to Apache Maven |
|
00:00:00 |
|
Maven Repository : Central vs local |
|
00:00:00 |
|
Understanding the Maven Lifecycle |
|
00:00:00 |
|
Understanding POM.xml |
|
00:00:00 |
|
Plugins |
|
00:00:00 |
|
Introducing Maven Dependencies |
|
00:00:00 |
|
Maven Build Properties |
|
00:00:00 |
|
Executing Tests using Maven |
|
00:00:00 |
|
Using Maven : Benefits to our Bank |
|
00:00:00 |
Labs/Assessments |
|
Create and build a Java project using Maven |
|
00:00:00 |
|
Compile project using Maven |
|
00:00:00 |
|
Run Test using Maven |
|
00:00:00 |
|
Execute Java project using Maven |
|
00:00:00 |
Session 7: Jenkins - Continuous Integration |
|
Installation and Configuration Jenkins |
|
00:00:00 |
|
What is CI and CD |
|
00:00:00 |
|
Manage Configuration |
|
00:00:00 |
|
Jenkins Projects |
|
00:00:00 |
|
Build Accounts |
|
00:00:00 |
|
Setup Build Jobs |
|
00:00:00 |
|
Plugins |
|
00:00:00 |
|
Scheduling Builds |
|
00:00:00 |
|
Master and Slave Setup |
|
00:00:00 |
|
Running jobs on Slave |
|
00:00:00 |
|
Configuring a Jekins Pipeline |
|
00:00:00 |
|
Local website up and running |
|
00:00:00 |
|
Benefits of CI to our Bank |
|
00:00:00 |
Labs/Assessments |
|
Matrix Based Security in Jenkins |
|
00:00:00 |
|
Plugin manager hands-on |
|
00:00:00 |
|
Jenkins Freestyle project Configuration |
|
00:00:00 |
|
Configure a Jenkins jobs |
|
00:00:00 |
|
Maven Build (Compile Job and Test Job) |
|
00:00:00 |
|
Jenkins Pipleline with github |
|
00:00:00 |
|
Quiz |
|
00:00:00 |
Session 8: Introduction of Code Quality, Code Coverage, Junit, BDD , Cucumber & Selenium |
|
Sonar Qube and Cobertura |
|
00:00:00 |
|
How does this help our Bank |
|
00:00:00 |
Labs/Assessments |
|
Run Code coverage using Cobertura and Integrate using Jenkins |
|
00:00:00 |
Session 9:Docker Session & Orchestration Tools |
|
Installation and Configuration Docker |
|
00:00:00 |
|
Containers and Docker |
|
00:00:00 |
|
How to run containers : command Line |
|
00:00:00 |
|
Understanding Container Lifecycle |
|
00:00:00 |
|
Creating custom images |
|
00:00:00 |
|
Redirecting ports |
|
00:00:00 |
|
Creating docker file |
|
00:00:00 |
|
Creating docker images for our bank |
|
00:00:00 |
Labs/Assessments |
|
Run simple web application over tomcat server running on docker |
|
00:00:00 |
|
Deploy web application using Ansible through Jenkins over tomcat instance of Docker. |
|
00:00:00 |
Session 10: Kubernetes |
|
Installation and Configuration Kubernetes |
|
00:00:00 |
|
Container orchestration |
|
00:00:00 |
|
Kubernetes Architecture |
|
00:00:00 |
|
Kubernetes Services |
|
00:00:00 |
|
How to Design Cluster |
|
00:00:00 |
|
Rolling Updates and Rollbacks |
|
00:00:00 |
|
Configuring applications |
|
00:00:00 |
|
Monitoring and logs |
|
00:00:00 |
|
Scaling and Self Healing |
|
00:00:00 |
|
Implementing Kubernetes in our Bank |
|
00:00:00 |
Labs/Assessments |
|
Run a Job |
|
00:00:00 |
|
Deploy a pod |
|
00:00:00 |
Session 11: Introduction to Configuration Management and programming for acquiring infrastructure |
|
What is Configuration Management |
|
00:00:00 |
|
Importance of Automation : Infrastructure as a Code (IAC) |
|
00:00:00 |
|
CCA : Continuous Configuration Automation |
|
00:00:00 |
|
Idempotent vs Convergence Configuration Management |
|
00:00:00 |
|
Real time case study |
|
00:00:00 |
Labs/Assessments |
|
Theory Session |
|
00:00:00 |
Session 12:TerraForm (Infrastructure Orchestration) |
|
Installation and Configuration Terraform |
|
00:00:00 |
|
Introduction |
|
00:00:00 |
|
TerraForm Alternatives in the market |
|
00:00:00 |
|
Setup |
|
00:00:00 |
|
Variables |
|
00:00:00 |
|
Modules |
|
00:00:00 |
|
Workspaces |
|
00:00:00 |
|
Maps |
|
00:00:00 |
|
TerraForm Apply |
|
00:00:00 |
|
Scripting for creating and modifying infrastructure |
|
00:00:00 |
|
Achiving infrastructure orchestration for our Banks infrastructure |
|
00:00:00 |
Labs/Assessments |
|
Hands-on TerraForm variables, modules, maps |
|
00:00:00 |
Session 13: Ansible for CM and Deployments |
|
Installation and Configuration Ansible |
|
00:00:00 |
|
Introduction of Ansible tool |
|
00:00:00 |
|
Comparison with other CM tools |
|
00:00:00 |
|
Introduction to YAML |
|
00:00:00 |
|
YAML by Example |
|
00:00:00 |
|
Ansible Installation and Configuration |
|
00:00:00 |
|
Playbook : System facts, Sections |
|
00:00:00 |
|
Creating Playbook : Async polling, programming syntax |
|
00:00:00 |
|
Basic: Running Commands |
|
00:00:00 |
|
Ansible Modules |
|
00:00:00 |
|
Roles |
|
00:00:00 |
|
Commandline |
|
00:00:00 |
|
Ansible Vault |
|
00:00:00 |
|
Ansible use cases : WebServer Deployment, NFS Server Deployment, DB Server Deployment |
|
00:00:00 |
|
Manage containers with Ansible |
|
00:00:00 |
|
Ansible: Best Practices |
|
00:00:00 |
|
Implementing best practices in our Bank case study |
|
00:00:00 |
Labs/Assessments |
|
Create a Jenkins jobs to integrate automated application deployment and deploy a simple java webapplication over local tomcat server. |
|
00:00:00 |
|
Configure Test Environment : Security point of view |
|
00:00:00 |
|
Configure Environment |
|
00:00:00 |
|
Building a large playbook |
|
00:00:00 |
|
MySQL DB module |
|
00:00:00 |
|
Ansible Parallism |
|
00:00:00 |
|
Install full stack with Ansible |
|
00:00:00 |
|
Ansible Vault |
|
00:00:00 |
Session 14:Continuous Monitoring with Nagios |
|
Installation and Configuration-Nagios |
|
00:00:00 |
|
Introduction |
|
00:00:00 |
|
Basic components |
|
00:00:00 |
|
Services |
|
00:00:00 |
|
Notifications |
|
00:00:00 |
|
Templates |
|
00:00:00 |
|
Remote Plugin |
|
00:00:00 |
|
NRPE |
|
00:00:00 |
|
What are passive checks |
|
00:00:00 |
|
Event Handlers |
|
00:00:00 |
|
Reports |
|
00:00:00 |
|
Application and cluster monitoring using Prometheus and Grafana |
|
00:00:00 |
|
Implement monitoring using Nagios and generate reports for various stakeholders from Bank |
|
00:00:00 |
Session 15:Summary |
|
Banks new avatar with DevOps : Create the pipeline diagram which summarizes how DevOps implemented in our Bank |
|
00:00:00 |