About the Program
At our training institute, we offer a comprehensive DevOps curriculum suitable for developers, system administrators, IT professionals, and even non-IT professionals. Our expert instructors will guide you through the latest tools and methodologies used in DevOps, including Agile, Continuous Integration/Continuous Delivery, Docker, Kubernetes, and Monitoring, among others. By the end of the program, you will have the confidence and expertise to lead DevOps initiatives within your organization and drive innovation in this field.
Course Objective
Our DevOps Master Program aims to provide you with a deep understanding of DevOps engineering and make you proficient in DevOps terminologies, concepts, benefits, and deployment options. Throughout the course, you will gain valuable knowledge and skills in the following areas:
1. Linux for DevOps
– Understanding Linux fundamentals and its importance in the DevOps ecosystem.
– Exploring various Linux tools and commands used for DevOps practices.
2. Cloud Master Training (AWS)
– Learning how to utilize cloud services for DevOps implementation.
– Mastering Amazon Web Services (AWS) and its tools for cloud-based DevOps practices.
3. Version Control Using Git
– Understanding the importance of version control in collaborative software development.
– Learning Git, a widely-used version control system, for efficient code management and collaboration.
4. Docker Container
– Exploring Docker, a popular containerization platform, and its role in DevOps.
– Understanding how to build, deploy, and manage containerized applications using Docker.
5. Kubernetes Container Orchestration
– Learning about Kubernetes, an open-source container orchestration system.
– Understanding how to automate the deployment, scaling, and management of containerized applications using Kubernetes.
6. Continuous Integration & Deployment with Jenkins
– Mastering Jenkins, an open-source automation server, for continuous integration and deployment.
– Learning how to automate the software delivery process and ensure reliable builds.
7. Best Monitoring System: Prometheus & Grafana
– Exploring Prometheus and Grafana, powerful monitoring and alerting tools.
– Understanding how to monitor and analyze the performance and health of your applications and infrastructure.
8. Core Python Programming Language
– Gaining proficiency in Python, a versatile programming language widely used in DevOps.
– Learning how to write scripts and automate tasks using Python.
Program Outcome
Upon completion of this program, you will have the skills and knowledge to excel in cloud and DevOps careers. You will be prepared to tackle real-world challenges and solve complex problems in the following ways:
1. Understanding the fundamentals of DevOps engineering and its role in the software development lifecycle.
2. Delivering change requests from customers rapidly and effectively by adding new features and updating existing ones.
3. Meeting your business requirements by utilizing DevOps deployment options and methodologies.
4. Gaining hands-on experience in real-world scenarios, enabling you to apply your knowledge effectively in practical situations.
Trainer LinkedIn Profile
For this comprehensive DevOps training program, our expert instructor is Janak Thakkar. You can find his LinkedIn profile https://www.linkedin.com/in/janak-thakkar/
Get ready to embark on a transformative journey in the field of DevOps. Enroll in our DevOps Master Program today and take your career to new heights!
- Access the command line
Log in to a Linux system and run simple commands using the shell.
- Manage fiIes from the command Iine
Copy, move, create, delete, and organize files from the bash shell prompt.
- Get heIp in Linux
Resolve problems by using online help systems and Linux support utilities.
- Create, view, and edit text fiIes
Create, view, and edit text files from command output or in an editor.
- Manage IocaI Linux users and groups
Manage local Linux users and groups, and administer local password policies.
- ControI access to fiIes with Linux fiIe system permissions
Set Linux file system permissions on files and interpret the security effects of different permission settings.
- Monitor and manage Linux processes
Obtain information about the system, and control processes running on it.
- ControI services and daemons
Control and monitor network services and system daemons using systemd
- Configure and secure OpenSSH service
Access and provide access to the command line on remote systems securely using OpenSSH
- AnaIyze and store Iogs
Locate and accurately interpret relevant system log files for troubleshooting purposes.
- Manage Red Hat Enterprise Linux networking
Configure basic IPv4 networking on Red Hat Enterprise Linux systems.
- Archive and copy fiIes between systems
Archive files and copy them from one system to another
- InstaII and update software packages
Download, install, update, and manage software packages from Red Hat and yum package repositories.
- Access Linux fiIe systems
Access and inspect existing file systems on a Red Hat Enterprise Linux system.
- Use reguIar expressions with grep
Write regular expressions that, when partnered with grep, will allow you to quickly isolate or locate content within text files.
- Cut and Sed command exampIe in Linux
Very useful command when you are working with Linux System and Scripting.
- Manage partitions and file systems.
Create Partition and make it permanent.
- Create and Edit text fiIes with vim
Introduce the vim text editor, with which you can open, edit, and save textfiles.
- ScheduIe future Linux tasks ControI services and daemons
Review how to manage services and the boot−up process using systemctl
- Manage DNS for servers
Setup DNS Server, Configure DNS records
- Provide Apache HTTPD web service
Configure Apache HTTPD for websites and virtual hosts.
Write Bash scripts
- Write simple shell scripts using Bash
Starting from Basics plus different loop of shell scripting language.
Introduction of Cloud & Amazon Web Service
- Introduction of cloud computing
- What is Virtualization
- Infrastructure as a Service(IaaS), Software as a Service(Saas), Platform as a Service(PaaS)
- Advantages of Cloud
- AWS history
- Dashboard
- AWS Overview, Architecture Discussion
Identity & Access Management
- IAM Overview and Policies
- IAM Users, Groups
- AWS CLI
- IAM Role
- MFA
- IAM Custom Policy
- Report
Elastic Cloud Computing (EC2)
- Amazon EC2 Overview
- Elastic Block Storage(EBS)
- Amazon Machine Image(AMI)
- Instance Purchasing Options
- Introduction to EC2 Instance Types
- Security Group
- Elastic, Public & private IP Overview
- Volume & Snapshot
- Bootstrap Script
- Elastic Load Balancing (ELB)
- Auto Scaling
Virtual Private Cloud (VPC)
- Amazon Virtual Private Cloud (VPC)
- Amazon VPC and Subnets
- Route Table
- Internet Gateway
- NAT Gateway
- VPC Peering
- Security Group & Network ACL
Amazon Simple Storage Service (S3)
- Simple Storage Service (S3)
- S3 Object Storage and Buckets
- Security on bucket
- Web Hosting
- Logging & Event
- Glacier
- Versioning & Lifecycle Policy
- Cross region replication
Route 53
- What is DNS?
- DNS Records
- Website Hosting
- Routing Policy
- Health Check
Databases
- Relation Database System
- DB engine & Instance details
- Security, Parameter group
- Monitoring Resourcing
- Dynamodb
- Elasticache
- Database Migration Service
Cloudwatch Monitoring
- Cloud Watch
- Matrices
- Alarm & notification
- Log & billing Monitoring
- Other AWS monitoring
- SNS
Brief Information & Discussion
- SNS / SQF /SWF
- Cloudtrail
- DynamoDB
- Snowball
- Direct Connect
- Directory Service
- Trusted Advisor
- Consolidated Billing
- Exam Preparation
- AWS white paper
- Introduction
- What is Git?
- Installing Git on Linux
- Configuring Git
- Initializing a repository
- Understanding where Git files are stored
- Performing your first commit
- Writing commit messages
- Viewing the commit log
- Adding files
- Deleting files
- Branching overview
- Viewing and creating branches
- Switching branches
- Creating and switching branches
- Setting up a GitHub account
- Adding a remote repository
- Creating a remote branch
- Cloning a remote repository
- Tracking remote branches
- Pushing changes to a remote repository
- Fetching changes from a remote repository
- Merge Branch
- Merge Conflicts
- Ignoring Files
- Fork
- Pull Request
Managing Container
- Installing Docker
- Docker Control Socket
- Creating a New Container
- Listing Containers
- Viewing Container Operational Details
- Running Commands in an Existing Container
- Interacting with a Running Container
- Stopping, Starting, and Removing Containers
Managing Images
- Docker Images
- Listing and Removing Images
- Searching for Images
- Downloading Images
- Committing Changes
- Uploading Images
- Export/Import Images
- Save/Load Images
- Name and Tag
- Managing Public and Private Image in Dockerhub
- Events
- Logs
- Image History
Creating Images with Docker File
- Docker file
- Caching
- docker build
- Dockerfile Instructions
- ENV and WORKDIR Directive
- CMD and Entrypoint Directive
- User and Expose Directive
- Running Commands
- Order of Execution
- Getting Files into the Image
- Defining ContainerExecutable
- Container Memory & CPU Limitation
Docker Networking
- Overview
- Hostnames and DNS
- Local Host <–> Container
- Container <–> Container
- Container <–> Container: Links
- Remote Host <–> Container
Docker Volume
- Volume Concepts
- Creating and Using Volumes
- Changing Data in Volumes
- Removing Volumes
- Backing up Volumes
- Volume mapping to host
Docker Compose
- Introduction
- Docker Compose example using yml file
Introduction to Kubernetes
- Understanding the need for a system like Kubernetes
- Understanding what containers are
- Comparing virtual machines to containers
- Introducing the Docker container platform
- Understanding docker concepts
- Understanding the architecture of a Kubernetes cluster
- Understanding the benefits of using Kubernetes
Core Concepts
- ETCD in Kubernetes
- Kube-API Server
- Kube Controller Manager
- Kube Scheduler
- Kubelet
- Kube Proxy
- Introduction to PODS
- Understanding why we need pods
- Accessing your web application
- PODs with YAML
- Organizing pods with labels
- Modifying labels of existing pods
- ReplicaSets
- Deployments
- Namespaces
- What is a Service?
- Creating a Service
- Understand ClusterIP, NodePort, LoadBalancer service types and endpoints
Scheduling
- Manual Scheduling
- Labels and Selectors
- Labels and Selectors
- Taints and Tolerations
- Node Selectors
- Node Affinity
- Taints and Tolerations vs Node Affinity
- Resource Requirements and Limits
- DaemonSets
- Practice Test – DaemonSets
- Static Pods
Application Lifecycle & Management
- Rolling Updates and Rollbacks
- Configure Applications
- Commands
- Commands and Arguments
- Configure Environment Variables in Applications
- Configuring ConfigMaps in Applications
- Configure Secrets in Applications
- Scale Applications
- Multi Container PODs
- InitContainers
Cluster Maintenance
- OS Upgrades
- Kubernetes Software Versions
- Cluster Upgrade Process
- Backup and Restore Methods Security
- Kubernetes Security Primitives
- Authentication
- Article on Setting up Basic Authentication
- View Certificates
- KubeConfig
- Authorization
- Role Based Access Controls
- Cluster Roles and Role Bindings
- Service Accounts
- Security Contexts
Storage
- Preview
- Introduction to Docker Storage
- Storage in Docker
- Container Storage Interface (CSI)
- Volumes
- Persistent Volumes
- Persistent Volume Claims
- Using PVCs in PODs
- Storage Class
Networking
- Cluster Networking
- Pod Networking
- CNI in kubernetes
- CNI weave
- IP Address Management – Weave
- Service Networking
- Know how to use Ingress controllers and Ingress resources
Other Topics
- Installation of Kubernetes
- Logging
INTRODUCTION TO CONTINUOUS INTEGRATION, CONTINUOUS DEPOLOYMENT AND JENKINS-CI
- What is Continuous Integration
- Typical Setup for Continuous Integration
- Continuous Deployment
- DevOps and Continuous Deployment
- Continuous Deployment Challenges
- Jenkins Continuous Integration
- Jenkins Features
- Running Jenkins
INSTALLING AND RUNNING JENKINS
- Downloading and Installing Jenkins
- Running Jenkins as a Stand-Alone Application
- Running Jenkins on an Application Server
- The Jenkins Home Folder
- Installing Jenkins as a Windows Service
- Initial Configuration
- Configuration Wizard
- Configuring Tools
- Configuring Tools – Best Practices
JOB TYPES IN JENKINS
- Introduction
- Different types of Jenkins Items
- Configuring Source Code Management(SCM)
- Working with Subversion
- Working with Git
- Storing Credentials
- Build Triggers
- Schedule Build Jobs
- Polling the SCM
- Maven Build Steps
SECURING JENKINS
- Jenkins Security – Overview
- Jenkins Security
- Authentication
- Authorization
- Confidentiality
- Activating Security
- Configure Authentication
- Using Jenkins’s Internal User Database
- Creating Users
- Authorization
- Matrix-Based Security
- Note – Create the Administrative User
- Project-based Matrix Authorization
- Project-Based Authentication
JENKINS PLUGIN
- Introduction
- Jenkins Plugins – SCM
- Jenkins Plugins – Build and Test
- Jenkins Plugins – Analyzers
- Jenkins for Teams
- Installing Jenkins Plugins
DISTRIBUTED BUILDS WITH JENKINS
- Distributed Builds – Overview
- Distributed Builds – How?
- Slave Machines
- Configure Jenkins Master
- Configure Projects
CONTINUOUS DEPLOYMENT AND THE JENKINS PIPELINE
- Continuous Deployment
- DevOps and Continuous Deployment
- Continuous Deployment Challenges
- Continuous Deployment with Jenkins
- The Pipeline Plugin
- Defining a Pipeline
- A Pipeline Example
- Parallel Execution
- Creating a Pipeline
- Invoking the Pipeline
- Interacting with the Pipeline
BEST PRACTICES FOR JENKINS
- Best Practices – Secure Jenkins
- Best Practices – Backups
- Best Practices – Reproducible Builds
- Best Practices – Testing and Reports
- Best Practices – Large Systems
- Best Practices – Distributed Jenkins
Introduction – Prometheus
- Introduction to Prometheus
- Prometheus installation
- Grafana with Prometheus Installation
Collecting Metrics
- Overview of Scraping
- Node Exporter platform
- Running Node Exporter as a Service
Monitoring
- Introduction to Monitoring
- Client Libraries
- Pushing Metrics
- Querying
- Service Discovery
- Exporter
Alerting
- Introduction to Alerting
- What is Alert Manager?
- Installing Alert Manager
- Defining Alert Rules
- Setting up Alerts
- Integrating Alert Manager with Google Chat
Service Discovery
- Service Discovery Options in Prometheus
- Service Discovery in AWS
Push Gateway
- Installing Push Gateway
- Sending Metrics to Push Gateway
- Push Gateway Authentication
Security in Prometheus
- Introduction to Authentication Methods in Prometheus
- Basic Authentication in Prometheus
- Enabling HTTPS for Improved Security
Grafana
- Introduction and Overview
- What is Grafana?
- Why do we need it?
- Grafana Installation
- Configuring Grafana
- Connect Grafana to Prometheus
- Creating Your First Grafana Dashboard
- Data Source in Grafana – Prometheus – AWS Cloudwatch
- Explore Grafana Dashboard
- Grafana Authentication
- Manage Users
- Install Plugins
Introduction – Python
- History
- Features
- Setting up path
- Working with Python
- Basic Syntax
- Variable and Data Types
- Operator
Conditional Statements
- If
- If- else
- Nested if-else
Looping
- For
- While
- Nested loops
Looping
- Break
- Continue
- Pass
String Manilpulation
- Accessing Strings
- Basic Operations
- String slices
- Function and Methods
Lists
- Introduction
- Accessing list
- Operations
- Working with lists
- Function and Methods
Tuple
- Introduction
- Accessing tuples
- Operations
- Working
- Functions and Methods
Dictionaries
- Introduction
- Accessing values in dictionaries
- Working with dictionaries
- Properties
- Functions
Functions
- Defining a function
- Calling a function
- Types of functions
- Function Arguments
- Anonymous functions
- Global and local variables
Modules
- Importing module
- Math module
- Random module
- Packages
- Composition
Input – Output
- Printing on screen
- Reading data from keyboard
- Opening and closing file
- Reading and writing files
Exceptions Handling
- Exception
- Exception Handling
- Except clause
- Try ? finally clause
- User Defined Exceptions
Our Docker course is conducted by Janak Thakkar, an experienced professional with extensive expertise in Docker and DevOps. With a solid background in containerization and a strong understanding of industry best practices, Janak brings a wealth of knowledge and practical insights to the training sessions.
You can find more information about Janak Thakkar on his LinkedIn profile here https://www.linkedin.com/in/janak-thakkar/.
At our training institute, we are committed to providing high-quality Docker training that empowers participants to effectively utilize Docker in their application development, deployment, and management processes. Join us to unlock the full potential of Docker and take your skills to new heights!
1. Is this program suitable for beginners with no prior DevOps experience?
Absolutely! Our DevOps Master Program is designed to cater to individuals with varying levels of experience, including beginners. Our expert instructors will guide you step-by-step through the fundamentals and provide hands-on training to ensure you grasp the concepts effectively.
2. Can I take this program if I’m not from an IT background?
Yes, definitely! Our program is open to both IT and non-IT professionals. We believe that anyone with an interest in DevOps can benefit from the program and enhance their career prospects.
3. What kind of support can I expect during the program?
Throughout the program, you will receive dedicated support from our instructors. They will be available to clarify your doubts, provide additional guidance, and ensure your learning experience is smooth and productive.
4. Is there any certification offered upon completion of the program?
Upon successfully completing the DevOps Master Program, you will receive a certification that validates your skills and knowledge in DevOps. This certification can be a valuable addition to your professional portfolio.
5. How can I enroll in the DevOps Master Program?
Enrolling in the program is simple. Just visit our website and follow the enrollment process outlined there. Once enrolled, you will gain access to our comprehensive curriculum and begin your journey towards becoming a DevOps expert.