Course Outline

  • What DevOps is not / What DevOps is  
  • Core Principles and Practices that make DevOps possible   

  • Understand what Build Process and Release Processes are   
  • Overview of Maven as a build tool   
  • Exercise on executing Maven lifecycle commands   
  • Code Quality using Sonar   
  • Understand code quality and what practices will help in achieving code quality   
  • Understand how Sonar can help with code quality   
  • Exercise on integrating Sonar into the build cycle 
  • Repository Management System    
  • Understand concept of Repository Management   
  • Look at JFrog Artifactory as an example of a Repository Management System  

  • Understand what CI means   
  • Understand what CI recommends   
  • How to use Jenkins as a CI tool   
  • Exercise on using Jenkins    

  • Overview of Cloud Computing and its characteristics   
  • Types of cloud – IaaS, Paas, SaaS and examples   
  • Public, Private and Hybrid clouds   
  • Configuration Management   
  • Overview of Configuration Management   
  • Overview of Ansible as a CM tool   
  • Micro Service Architecture   
  • Overview of Microservice architecture v/s Monolith architecture    
  • Understand how containerization aids in designing and building a Micro Service  
  • Architecture  

  • Overview of Containerization   
  • Overview of Docker as a containerization provider   

  • Understand what CD means   
  • Understand the CD pipeline   
  • Understand how Ansible, and Docker fit into the CD pipeline, for a Cloud solution   
  • Understand the difference between Continuous Delivery and Continuous Deployment   

  • What is Ansible?  
  • Ansible vs other tools  
  • Ansible Architecture  

  • Installation and configuration of Ansible  
  • Managing Ansible Configuration File  
  • Inventory  
  • Dynamic Inventory  
  • Managing Inventory   
  • Hands-on: Installation and configuration of Ansible.  
  • Hands-on: Exploring Ad-Hoc Commands  

  • Introduction to YAML  
  • YAML Examples  
  • Playbook  
  • Implementing Playbook  
  • Hands-on: Implementing Ansible Playbook  
  • Hands-on: Exploring more on Ansible Playbooks  

  • What is a Module  
  • Core Modules  
  • Extra Modules  

  • Variables  
  • Ansible Facts  
  • Hands-on: Implementing Ansible Variables.  
  • Hands-on: Exploring custom facts  

  • Configuring Ansible Vault  
  • Executing Ansible Vault  
  • Hands-on: Implementing Ansible Vault  

  • Loops  
  • Tags  
  • Error Handling  
  • When Statements  
  • Delegate Tasks  
  • Blocks  
  • Hands-on: Working with Ansible Functions  

  • Jinja2 Templates  
  • Implementing Jinja2 Templates using template module  
  • Hands-on: Implementing Jinja2 Templates  

  • Roles  
  • Role Structure  
  • Ansible Galaxy  
  • Hands-on: Implementing Ansible Roles  
  • Hands-on: Installing Java through Ansible Galaxy Roles 
  • Demo: deploy a three-tier infrastructure on AWS using Ansible 

  • What is IAC? 
  • Why do we need IAC? 

  • Terraform HCL 
  • Syntax 
  • Hands on: Creating an EC2 Instance in AWS and Installing Terraform   

  • File extension 
  • Modules 

  • Input variables 
  • Terraform variable type 
  • Outputting Variables 
  • Terraform Local values 
  • Terraform functions 
  • Data Sources 
  • Dynamic Blocks 

  • AWS 
  • Azure 
  • GCP 

  • Terraform init 
  • Terraform plan 
  • Terraform apply 
  • Terraform destroy 
  • Hands on: Launching your first AWS EC2 instance using Terraform   
  • Hands on: AWS EC2 instance creation using Terraform Variables   
  • Hands on: Using Output Feature   
  • Hands on: Understanding local values, terraform functions, data sources 

  • File upload   
  • General provisioners   
  • local-exec Provisioner 
  • remote-exec Provisioner   

  • Configuring Remote State   
  • Backend 
  • State locking 
  • Terraform import 
  • Hands on: Remote State using Amazon Simple Storage Service   

  • Creating VPC 
  • EC2 Instance   
  • Security Groups 
  • Key pairs 
  • Autoscaling   
  • IAM 
  • Hands on: Launching VPC and EC2 Instance 
  • Hands on: Launching autoscaling services  
  • Hands on: Creating IAM users, groups and roles  

  • Terraform modules 
  • Terraform workspaces 
  • Hands on: Creating AWS resources using Terraform Modules 

  • Terraform Cloud 
  • Hands on: Terraform cloud       
Reach Out to Us for Any Details/Enrolment

deepanshib@cloudthat.com