DevOps (a clipped compound of “development” and “operations”) is a software development methodology that combines software development (Dev) with information technology operations (Ops).
DevOps integrates developers and operation teams in order to improve collaboration and productivity by automation infrastructure, automating work flows and continuously application performance.
As rapid delivery of software has become a strategic business asset, progressive IT organizations are pursuing a DevOps culture, where development and operations teams, systems, and tools work in lockstep.
All practical based training with separate hours for Assignments. Below is the course insite.
1. DevOps Essentials
a. Introduction to DevOps
b. Terminologies
i. Iaas
ii. PaaS
iii. SaaS
c. Processes
i. Build Automation
ii. Continuous Integration
iii. Continuous Deployment
iv. Continuous Delivery
d. Tools
i. Jenkins
ii. Chef
iii. Docker
2. Amazon Web Services (AWS)
i. Elastic Compute Cloud (EC2)
ii. Elastic Load Balancer (ELB)
iii. Elastic Block Storage (EBS)
iv. Simple Storage Service (S3)
v. Certificate Manager
vi. Relational Database Service (RDS)
vii. Virtual Private Cloud (VPC)
viii. Route 53
ix. Identity & Access Management (IAM)
x. Cloud Trail
xi. Cloud Watch
xii. Lambda
xiii. Simple Notification Service (SNS)
xiv. CodeDeploy
xv. Command Line Interface (CLI)
xvi. Elastic Container Service (ECS)
xvii. Elastic File System (EFS)
xviii. Auto Scaling
xix. CloudFormation
xx. Directory Service
xxi. Amazon EventBridge
xxii. API Gateway
xxiii. Trusted Advisor
3. Git, Github and Gitlab
a. Installation and Configuration
i. Installing Git
ii. Basic Configuration
b. Git Basics
i. Empty Repositories
ii. Git Basics
iii. Git Ignore
c. Cloning
i. Cloning: Local Repositories
ii. Cloning: Remote Repositories
d. Tagging, Branching and Merging
i. Tags
ii. Branches
iii. Merging
e. Logging and Repository Auditing
i. Git Log
f. Gitlab: Installation, Configuration and Use
i. Prerequisites
ii. Download, Install and Configure
iii. Architecture
iv. User Administration and Secure Access
g. Working with Github
i. Introduction to Github
ii. Secure Communication
iii. Working with Github
4. Ansible
a. Introduction
b. Configuration Management & Orchestration
c. Insatlling Ansible
d. Inventory file
e. The task
f. Playbook
i. Introduction
ii. apt
iii. service
iv. File copy
v. File
vi. Template
vii. Lineinfile
viii. Modules
g. Roles
i. Converting to Roles: tasks, handlers
ii. Converting to Roles: files, templates
iii. Site.yml
vi. Variables
1. facts
2. defaults
3. vars
4. vault
5. Jenkins and Build Automation
a. Introduction to Jenkins
i. Introduction
ii. Best Practices
b. Installation and Configuration
i. Prerequisites
ii. Download and Installation
iii. Configuration Tour
c. Managing Jenkins
i. Securing Jenkins
ii. Managing Credentials
iii. Plugin Management
iv. Jenkins Backup – Using Plugins to Manage Your System
d. Build Details: Setting Up Different Types of Automated Builds
i. Your First Build
ii. Working With Github
iii. Build from Github Project
iv. Scheduling Builds
v. Managing Remote Systems with Jenkins
6. HAproxy
a. What is HAproxy?
b. HAproxy Installtion
c. Configuring HAproxy
d. Creating Frontend
e. Creating Backend
f. URI Base Routing
g. HAproxy Monitoring
h. Reporing
i. Balance Algorithms
7. Docker
a. Learning the Basics of Docker
i. Introduction to Docker
ii. Containers Vs. Virtual Machines
iii. Docker Architecture
iv. The Docker Hub
v. Docker Installation
vi. Creating Our First Image
vii. Working With Multiple Images
viii. Packaging A Customized Container
ix. Running Container Commands With Docker
x. Exposing Our Container With Port Redirects
b. Docker Builds and Deployments
i. Container Snapshots
ii. Attach to a Running Container
iii. Removing Images
iv. Directory Structure
v. Services That Run on Start-up
vi. Dockerfile: Tying It Together
vii. Pushing Images to Docker Hub
viii. Adding External Content
ix. Image Volume Management
x. Advanced Container Network Management
c. Docker Internals
i. Interactive Shell Control
ii. Previous Container Management
iii. Container Routing
iv. Sharing Container Resources
v. Committing a Running Container (Snapshot Images)
vi. Container Linking and Communication
vii. Taking Control of Ports
viii. Five Useful Docker CLI Commands
ix. More Useful Docker CLI Commands
x. Optimizing Our Dockerfile Builds
8. Terraform
a. Introduction To Terraform
i. What Is Terraform?
ii. Infrastructure as Code
iii. Execution Plans
iv. Resource Graph
v. Change Automation
b. Use Cases
c. Terraform Vs Other Software
i. Chef, Puppet, etc.
ii. CloudFormation, Heat, etc.
iii. Boto, Fog, etc.
iv. Custom Solutions
d. Getting Started
i. Install Terraform
ii. Build Infrastructure
iii. Change Infrastructure
iv. Destroy Infrastructure
v. Terraform Remote
vi. Resource Dependencies
vii. Provision
viii. Input Variables
ix. Output Variables
e. Terraform Commands (CLI)
f. Configuration
i. Load Order and Semantics
ii. Configuration Syntax
iii. Interpolation Syntax
iv. Overrides
v. Resources
vi. Data Sources
vii. Providers
viii. Variables
ix. Outputs
x. Environment Variables
g. AWS Provider
i. Data Sources
ii. EC2 Resources
iii. IAM Resources
iv. Route 53 Resources
v. VPC Resources
h. Internals
i. Debugging Terraform
ii. Resource Graph
iii. Resource Lifecycle
i. Assignment
9. Project