Thanish InfoTech: Linux -- DevOps -- AWS -Python...
Transcript of Thanish InfoTech: Linux -- DevOps -- AWS -Python...
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
DevOps Course Content
Introduction to DevOps
What is DevOps?
History of DevOps
Dev and Ops
DevOps definitions
DevOps and Software Development Life Cycle
DevOps main objectives
Infrastructure As A Code
Prerequisites for DevOps
Tools (Jenkins, Chef, Docker, Vagrant and so on.)
Continuous Integration and Development
Linux Concepts
Linux Installation
Booting Process
Run Levels
Linux Administration Roles
Linux Essential Commands
Vi/Vim
File Management
File Systems
User Management
Jobs
Package Management
Networking
Automation Concepts
OS Basics
Scripting Introduction
Learn Shell Scripting
Database Concepts
Shell Variable
Shell Decision Making
Shell Test Conditions
Shell Loops
Shell Redirectors
Shell Exit status
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Git Training Course Syllabus
Introduction
What is a Version Control System (VCS)?
Distributed Vs Non-distributed VCS
What is Git and where did it come from?` Alternatives to Git
Cloud-based solutions (Github, Gitlab, BitBucket etc)
Installation and Configuration
Obtaining Git
Installing Git
Common configuration options
GUI tools
Key Terminology
Clone
Working Tree
Checkout
Staging area
Add
Commit
Push
Pull
Stash
Git - Local Repository Actions
Creating a repository (git init)
Checking status (git status)
Adding files to a repository (git add)
Committing files (git commit)
Removing staged files (git reset)
Removing committed files (git rm)
Checking logs (git log)
Git - Remote Repository Actions
Creating a remote repository (git init)
Cloning repositories (git clone)
Updating the remote repository from the local (git push)
Updating the local repository from the remote (git pull)
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Tagging in Git
What are Git Tags?
Listing tags
Lightweight tags
Displaying tag details (tag show)
Annotated tags
Checking out tags
Pushing tags
Pulling tags
Branching in Git
What is a branch
A note about <HEAD>
Listing branches
Create new branch
Checkout branch
Pushing branches
Pulling branches
Merging in Git
Fetching Changes (git fetch)
Rebasing (git rebase)
Git Pull
Git Workflows
Different ways of using Git
Centralised
Feature Branch
Gitflow Workflow
Forking Workflow
Git - Stashing Changes
What is Stashing?
Using Stash
Creating a branch from a Stash
Advanced Repository Actions
Removing untracked files (git clean)
Remove staged changes (git reset)
Revert a commit (git revert)
Checkout a previous commit (git checkout)
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Advanced Branching & Merging
Deleting a Branch
Fast forward merge
Three way merge
Resolving merge conflicts
Cherry-Picking (git cherry-pick)
Jenkins Training Syllabus
Overview of Continuous Integration (CI)
What it means Continuous Integration?
Fundamental of CI
How CI helps to Agile Development
History of Jenkins
Where Jenkins Fit in Organization
Overview of Jenkins community
Setup and Running Jenkins
Prerequisites
Preparing Environment
Installing Git
Setup Account
Install Jenkins on Ubuntu / Windows
Configuring a Node
Running Jenkins as Stand-Alone/ Apache Server
Backup Jenkins data
Configuring Jenkins server
Configure Dashboard
Configure System Environment
Global Properties
Configure Build Tools
Configure Proxy
Working with Jenkins Build Job
Create and Configure a job
Run a job manually
Triggering a Build
Scheduled Build job
Manual Build job
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Polling SCM
Maven and ANT Build Step
Execute a Shell
Post-Build Actions
Archiving Build Results
Notifications
Working with Automate Testing
Introduction of Automate
Automate unit test
Configure Test Reports
Automate Performance Test
Advanced Jenkins
Working with Maven Build
Monitoring External jobs
Distributed builds
File fingerprint tracking
Parameterized Build Job
Parameterized Trigger
Automated Deployment and Continuous Delivery
Jenkins Plugins
Change reporting
Code coverage
Static Analysis
Performance reporting
Style checking
Secure and Notification in Jenkins
Overview of Security
Activating Security
Simple Security
Security Realms
Authorization
Auditing
Overview of Notification
Email Notification
Other Notification
Best Practices on Jenkins
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
MySQL Database
Working with Database
Introduction to MySQL Database
Configuration
User management
Permission management
Creating Database
Data insertion/update
MySQL Data Backup
MySQL Hands-on
MySQL GUI Tools
Build Automation
Introduction with Maven
Maven structure
Maven Phases
Installation of Maven
Configuration
jar/war project structure
Tomcat Web Server
Installation and Configuration
Tomcat Manager
Application Management
App Deployment Methods
Nexus Artifacts/Proxy Tool
Introduction to Nexus
Installation and Configuration
Repository Management
Proxy Management
Integration with Maven
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Docker Training Course Syllabus
Introduction
What is Docker?
Alternatives to Docker
The evolution of containers
How containers work
Containers and Micro Service Architecture
Getting started
Installing Docker
Configuring Docker
Running your first container
Docker Components
Docker Client
Docker Daemon
Docker Images
What is an image?
What does an image contain?
Repositories
Versioning & Tags
Docker images
Docker Hub
What is the Docker Hub?
Creating an account
Docker run
Overview
Terminal Access
Detached mode
Processes
Process Ids
Within a container
PID
Docker ps
Logging
Docker logs
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Port mapping
Overview
Simple port mapping
Building Images with Container Commits
Read only and Write layers, Copy on write
Docker commit
Dockerfile
Introduction
Instructions and images
FROM
RUN
Docker build
Obuild contexts
CMD
EXEC
ENTRYPOINT
Starting and Stopping Containers
Docker ps
Docker start
Docker stop
Getting terminal access
Docker exec
Removing Images
Docker rmi
Docker Hub Repositories
Docker tag
Docker push
Docker pull
Volumes
Docker run /v
VOLUME
Do’s and Don’ts
Port Mapping
Docker run -P
Docker run -p
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
EXPOSE
Linking
Introduction
Docker --link
Continuous Integration
Building Images
Docker Hub Auto Build
Debugging Containers
Using a volume for logging
Docker inspect
Docker Daemon
Starting and Stopping the Daemon
Configuration
Logging Level
Chef Training Syllabus
Chef Introduction
Overview of Chef
Overview of Recipes
Overview of Cookbooks
Overview of Runlists
Overview of Roles
Overview of Search
Installation and Configuration
Basic architecture of chef
Setup of chef server , node and workstation
Standalone Chef/ chef-solo
Running cookbook with knife and chef -solo
Public Chef : client/server
Managing Hosted and on premises chef
Workstation Setup
Managing multi workstation setup
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Knife Client
How to use chef client
Test Node/Client Setup
Testing node with the cookbook
Converge
Various phase of cookbook compilation
Managing variable in convergence phase
Node Object
OHAI manipulation
Cookbooks, Recipes Resources
Managing recipes
Packages, Cookbook Files, Services
Inbuilt resource in chef
Run list
How to manage run list
Cookbook Attributes
How to use ATTRIBUTES
ERB Templates
How to manage data in templates files
Cookbook Dependencies
Managing cookbook sequence and dependencies
Data Bags
Managing data in data bags and safe transfer of certificates
Attribute Precedence
Precedence of attribute variables in chefs
Cookbook Metadata
How to manage cookbook metadata
Execute Resource
What are resource
Various resource available
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Not if/ Only if conditionals
Controlling resource in chef using condition
Notifications
How to use notification to control resource
Template Variables
managing template variables
Using Community Cookbooks
Community cookbook available in supermarket
Ansible Training Syllabus
Introduction to Ansible
What is Configuration Management?
Automation of manual work on IT orchestration
What is Continuous Integration?
What is DevOps?
How CM is important for DevOps
Overview of Ansible
What issues Solving by Ansible?
Strengths of Ansible
Concept and terminology on Ansible
Architecture of Ansible
Different from Chef and Puppet
Getting start with Ansible
Infrastructure Management
Some prerequisites
Set up on Windows / Linux
Create basic inventory file
Run Ansible Ad-Hoc command
Testing with Vagrant
Connect to your target nodes with SSH.
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Inventory
Basic inventory example
Hosts and groups
Inventory file for Multiple Servers
Configure groups of servers or individual servers
Manage users and groups
Manage packages
Manage files and directories
Ansible Playbooks
Overview of Playbooks
Power Plays
Handlers
Variables
Loops
Asynchronous Actions
Error Handler
Manage Ansible code using git
Task
Module
Running Playbook
Docker containers with Ansible
Introduction to Docker
Docker application lifecycle
Create Docker image with Ansible
Synergy of containerization and automation
Staring MySQL containers
Data storage containers
Highly available infrastructure with Ansible
Spec up our inventory and host groups
Using roles
Configure our database backend
Configure our web server front-end
Configure a replicated filesystem
Configure centralized logging
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Deployments with Ansible
Deploying Application to local Vagrant environment
Promote code to higher environment
Alternative to Ansible compares
Troubleshooting
Best Practices on Ansible
Nagios Monitoring
Module
Nagios XI Installation
Linux OS Level Dependencies
Nagios XI installation Process
File Locations and Directory Structure
Nagios XI Basics
Overall Nagios Architecture
Basic Approach to Configuration in Nagios
Monitoring Engine Overview
Monitoring Linux Machines
Using NRPE Agent to Monitor Linux Machines
Using SSH to monitoring Linux Machines
Using SNMP to Monitor Linux Machines
RAM, CPU, Processes, and Disk Space Monitoring
Monitoring Windows Machines
Using NSClient++ Agent to Monitor Windows Machines
RAM, CPU, Processes, and Disk Space Monitoring
Using WMI for Windows Monitoring
Using SNMP for Windows Monitoring
Monitoring Network Devices
Using Basic SNMP for network monitoring
Router, Switches, Firewall and Storage Devices.
Performance Charts, Graphs and Dashboards
Using Performance Charts in Nagios XI
Graph Explorer in Nagios XI
Thanish InfoTech: Linux -- DevOps -- AWS -Python Contact 9160207373 | 8383 040 43461415 DevOps Course Content
Thanish InfoTech Linux --DevOps--AWS --Python Contact:040 43451415 9160207373|8383 [email protected]
Simple Dashboards in Nagios XI
Core Configuration Manager
Advanced Configuration with Core Configuration Manager
Alerts, Notifications and Escalations
Creating On-Screen Alerts and email notifications
Defining escalation flow for issues in Nagios
Additional Tools
BBMap
Minemap
Network Status Map
Google Map Component
Reports
Standard Executive Summary Reports
Host and Service Availability Reports
Backup and Restore
Creating Backups for Nagios
Restoring Nagios from an old Backup
Enterprise Feature Overview
Feature Comparison between Standard and Enterprise Edition
Nagios Core Overview
Differences between Nagios XI and Nagios Core
Hands On Lab Exercises
Build a fully functional Nagios XI monitoring prototype