img
img

Course Details!

List Of Diploma Courses

  • LINUX Administration I
  • LINUX Administration II
  • NGINX
  • Prometheus
  • Python programming
  • Kubernetes
  • CI/CD With Jenkins
  • GitHub
  • Git Lab
  • Docker
  • Bit bucket
  • AWS Cloud Practitioner

Description

DevOps Model Defined
DevOps is defined as a combination of processes and tools created to facilitate organizations in delivering services and applications much faster than they can through conventional software development processes. It helps increase customers’ confidence in the applications that an organization offers, thereby allowing the company to flourish and achieve its business goals faster. How DevOps Works?

Under a DevOps model, development and operations teams are no longer “siloed.” Sometimes, these two teams are merged into a single team where the engineers work across the entire application lifecycle, from development and test to deployment to operations, and develop a range of skills not limited to a single function.
In some DevOps models, quality assurance and security teams may also become more tightly integrated with development and operations and throughout the application lifecycle. When security is the focus of everyone on a DevOps team, this is sometimes referred to as DevSecOps.
These teams use practices to automate processes that historically have been manual and slow. They use a technology stack and tooling which help them operate and evolve applications quickly and reliably. These tools also help engineers independently accomplish tasks (for example, deploying code or provisioning infrastructure) that normally would have required help from other teams, and this further increases a team’s velocity

What Will I Learn?

  • 1. Ensures effective collaboration between teams
  • 2. Creates scalable infrastructure platforms
  • 3. Builds on-demand release capabilities
  • 4. Provides faster feedback
  • 5.DevOps helps organizations deliver added value to their customers.
  • 6. Smarter work and faster release
  • 7. Quick resolution of issues
  • 8. Better collaboration between teams
  • 9. Fostering innovative mindsets
  • 10. Faster threat detection
  • 11. Increased customer satisfaction
  • 12. Providing the much-needed edge

Certificates

  • Attendance certificate from IT Gate Academy
  • AinShms accredited certificate

• Get started with Enterprise Linux

  • Describe and define open source, Linux distributions, and Red Hat Enterprise Linux.

• Access the command line

  • Log into a Linux system and run simple commands using the shell.

• Manage files from the command line

  • Copy, move, create, delete, and organize files while working from the bash shell.

• Get help in Linux

  • Resolve problems by using local help systems.

• Create, view, and edit text files

  • Manage text files from command output or in a text editor.

• Manage local users and groups

  • Create, manage, and delete local users and groups, as well as administer local password policies

• Control access to files

  • Set Linux file system permissions on files and interpret the security effects of different permission settings

• Monitor and manage Linux processes

  • Evaluate and control processes running on Linux system.

• Improve command line productivity

  • Run commands more efficiently by using advanced features of the Bash shell, shell scripts, and various utilities provided by Red Hat Enterprise Linux.

• Schedule future tasks

  • Schedule commands to run in the future, either one time or on a repeating schedule.

• Tune system performance

  • Improve system performance by setting tuning parameters and adjusting scheduling priority of processes.

• Control access to files with ACLs

  • Interpret and set access control lists (ACLs) on files to handle situations requiring complex user and group access permissions.

• Manage SE Linux security

  • Protect and manage the security of a server by using SE Linux.

• Manage basic storage

  • Create and manage storage devices, partitions, file systems, and swap spaces from the command line.

• Manage logical volumes

  • Create and manage logical volumes containing file systems and swap spaces from the command line.

• Implement advanced storage features

  • Manage storage using the Stratis local storage management system and use VDO volumes to optimize storage space in use.

• Access network-attached storage

  • Use the NFS protocol to administer network-attached storage.

introduction

  • installation and configuration of NGINX

  • installation and configuration NGINX Plus

Basic Functionality

  • Control NGINX Processes at Runtime

  • Create NGINX Plus and NGINX Configuration Files

Exploring Load Balancer

  • HTTP, TCP, and UDP Load Balancing

  • HTTP, TCP, and UDP Health Checks

  • Configure Dynamic Load Balancing with the NGINX Plus API

  • PROXY Protocol

Introduction to NGINX Content Caching and Web Server Configuring NGINX Plus as a Web Server

  • Virtual Servers Setting Up

  • Locations Configuration

  • Working with Variables

  • Returning Specific Status Code

  • Rewriting URIs in Requests and HTTP Responses

  • Handling Errors

Serving Static Content

  • Overview of Root Directory and Index Files

  • Trying Several Options

  • Optimizing Performance for Serving Content

Introduction to NGINX Reverse Proxy

  • Table of Contents

  • Introduction

  • Passing a Request to a Peroxide Server

  • Passing Request Headers

  • Configuring Buffers

  • Choosing an Outgoing IP Address

Overview of Compression and Decompression

  • Enabling Compression and Decompression Sending Compressed Files

Using NGINX and NGINX Plus as an Application Gateway

  • Basics of uWSGI and Django

  • Configuring NGINX and NGINX Plus for Use with uWSGI and Django

Introduction to Prometheus

  • Prometheus vs Graphite vs InfluxDB

  • Overview of Prometheus features and architecture

  • Prometheus data model and metrics

Prometheus installation & Configuration

  • Installing and configuring Prometheus

  • Basic query operations (PromQL)

  • Use cases and examples

  • Navigating the UI

Monitoring and Alerting

  • Recording and alerting rules

  • Instrumenting codes

  • Pushing metrics (Pushgateway)

  • Node and WMI exporters

  • Configuring Alertmanager

  • Managing alerts

Visualization with Grafana

  • Setting up Grafana

  • Creating a Prometheus data source

  • Using default dashboards

  • Customizing dashboards

Security, Integrations, and Optimization

  • Prometheus security model

  • Authentication, authorization, and encryption

  • API management

  • Federation and HTTP service discovery

  • Remote write tuning parameters

  • Optimizing data and systems usage

OVERVIEW

  • Python History & Features

ENVIRONMENT

  • Local Environment

  • Installing Python Setting up PATH

  • Setting path at Unix

  • Linux - Windows

  • Python Environment Variables

  • Running Python

BASIC SYNTAX 9

  • First Python Program

  • Python Identifiers- Keywords

  • Lines and Indentation

  • Multi-Line Statements

  • Quotation – Comments in Python

  • Using Blank Lines

  • Multiple Statements on a Single Line

  • Multiple Statement Groups as Suites

  • Command Line Arguments

  • Accessing Command-Line Arguments

  • Parsing Command-Line Arguments

VARIABLE TYPES

  • Assigning Values to Variables

  • Multiple Assignment

  • Standard Data Types , Conversion

  • Python Numbers, Strings, Lists

  • Python Tuples, Dictionary

BASIC OPERATORS

  • Types of Operators

  • Python Arithmetic, Comparison Operators

  • Python Assignment, Bitwise Operators

  • Python Logical, Membership Operators

  • Python Identity Operators

  • Python Operators Precedence

DECISION MAKING

  • If Statement

  • If…else Statement

  • Single Statement Suites

LOOPS

  • While Loop

  • The Infinite Loop

  • Using else Statement with Loops

  • Single Statement Suites

  • For Loop

  • Iterating by Sequence Index

  • Using else Statement with Loops

  • Nested Loops

  • Loop Control Statements

  • Break Statement

  • Continue Statement

  • Pass Statement

NUMBERS

  • Number Type Conversion

  • Random Number Functions

  • Trigonometric Functions

  • Mathematical Constants

STRINGS

  • Accessing Values in Strings

  • Updating Strings

  • Escape Characters

  • String Special Operators

  • String Formatting Operator

  • Triple Quotes

  • Unicode String

  • Built-in String Methods

LISTS

  • Python Lists

  • Accessing Values in Lists

  • Updating Lists

  • Deleting List Elements

  • Basic List Operations

  • Indexing, Slicing, and Matrixes

  • Built-in List Functions and Methods

TUPLES

  • Accessing Values in Tuples

  • Updating Tuples

  • Deleting Tuple Elements

  • Basic Tuples Operations

  • Indexing, Slicing, and Matrixes

  • No Enclosing Delimiters

  • Built-in Tuple Functions

DICTIONARY

  • Accessing Values in Dictionary

  • Updating Dictionary

  • Delete Dictionary Elements

  • Properties of Dictionary Keys

  • Built-in Dictionary Functions and Methods

DATE AND TIME

  • What is Tick?

  • What is Time Tuple

  • Getting Current Time

  • Getting Formatted Time

  • Getting Calendar for a Month

  • The time Module

  • The calendar Module

  • Other Modules and Functions

FUNCTIONS

  • Defining a Function

  • Calling a Function

  • Passing by Reference Versus Passing by Value

  • Function Arguments

  • Required Arguments

  • Keyword Arguments

  • Default Arguments

  • Variable Length Arguments

  • The Anonymous Functions

  • The return Statement

  • Scope of Variables

  • Global vs. Local variables

MODULES

  • The import Statement

  • The from...import Statement

  • The from...import * Statement:

  • Locating Modules:

  • The PYTHONPATH Variable

  • Namespaces and Scoping

  • The dir( ) Function

  • The globals() and locals() Functions

  • The reload() Function

  • Packages in Python

FILES I/O

  • Printing to the Screen

  • Reading Keyboard Input

  • The raw_input Function

  • The input Function

  • Opening and Closing Files

  • The open Function

  • The file Object Attributes

  • The close() Method

  • Reading and Writing Files

  • The write() Method

  • The read() Method File Positions

  • Renaming and Deleting Files

  • The rename() Method

  • The remove() Method

  • Directories in Python

  • The mkdir() Method

  • The chdir() Method

  • The getcwd() Method

  • The rmdir() Method

  • File and Directory Related Methods

EXCEPTIONS

  • What is Exception?

  • Handling an Exception

  • The except Clause with No Exceptions

  • The except Clause with Multiple Exceptions

  • The try-finally Clause

  • Argument of an Exception

  • Raising an Exception

  • User-Defined Exceptions

CLASSES AND OOP

  • Overview of OOP Terminology

  • Creating Classes

  • Creating Instance Objects

  • Accessing Attributes

  • Built-In Class Attributes

  • Destroying Objects (Garbage Collection)

  • Class Inheritance

  • Overriding Methods

  • Base Overloading Methods

  • Overloading Operators

  • Data Hiding

  • Polymorphism, Abstraction, Constructor, Destructor

Intro to Kubernetes

  • What is Kubernetes

  • Orchestration and scheduling

  • Declarative vs imperative

  • Kubernetes Architecture - Nodes, API, Scheduler, Control manager

  • Kubernetes network model

  • Install

  • Setup

  • minikube

  • kubeadm, kubectl, etcd

  • Running our first containers on Kubernetes

  • Kubernetes Objects and terminology

  • Pods , Services , Deployments

  • Namespaces , Replicas , Config

Deployment and security

  • Running containers with & Docker files

  • compose

  • Exposing containers

  • Deploying a self-hosted registry

  • Exposing services internally

  • Exposing services for external access

  • The Kubernetes dashboard

  • Security implications of kubectl apply

  • Exposing containers

Micro services

  • Micro service Architecture Overview Micro services and Containers Micro service Architecture Overview

Application Lifecycle

  • Scaling a deployment

  • Updating a service through labels and selectors

  • Daemon sets

  • Rolling updates

  • Using Helm

Networking

  • Calico

  • Profiles

  • Network Policies

  • Request lifecycle

  • Communication between services

Kubernetes Advanced Features

  • 12-factor app Managing Resources Horizontal Pod Autoscaler Secrets Configuration

  • ConfigMaps Security , Ingress API Client API

  • Addons Logging

  • Metrics

  • Prometheus Volumes Configure Liveness and Readiness Probes Azure AKS , DRP

  • Backups , Taints and Tolerations Proxies - kubectl , apiserver proxy , kube proxy

Project

  • Full scale project , build deploy and manage multiple containers (micro services)

Introduction to CI/CD and Jenkins-CI

  • Foundation of Agile App Dev

  • XP Flow

  • Extreme Programming

  • Agile Development

  • What is Continuous Integration

  • What is Continuous Integration (cont'd)

  • Typical Setup for Continuous Integration

  • Setup Notes for Continuous Integration

  • CI with Artifact Management

  • What is Continuous Delivery?

  • Why Continuous Delivery?

  • DevOps and Continuous Delivery

  • Continuous Delivery Challenges

  • Continuous Delivery vs Continuous Deployment

  • Jenkins Continuous Integration

  • Jenkins Features

  • Running Jenkins

Installing and Running Jenkins

  • 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

  • Configuration Wizard (cont'd)

  • Configuring Tools

  • Configuring Tools

  • Logging in Jenkins

  • Custom Log Recorders

Job Types in Jenkins

  • Different types of Jenkins Items

  • Configuring Source Code Management(SCM)

  • Working with Subversion

  • Working with Subversion (cont'd)

  • Working with Git

  • Storing Credentials

  • Service Accounts

  • Storing Credentials (cont'd)

  • Build Triggers

  • Schedule Build Jobs

  • Polling the SCM

  • Polling vs Triggers

  • Maven Build Steps

Advanced Jobs

  • Parameterized Jobs

  • Built-in Environment Variables

  • Parameter Types

  • Defining Parameters

  • Using Parameters

  • Environment Variables

  • Parameters in the config.xml File

  • Launching a Build with Parameters

  • Configuration Matrix

  • Configuration Matrix – Example

  • Defining Configuration Matrix

  • Monitoring External Jobs

Non-Java Jenkins Jobs

  • Jenkins Jobs

  • Non-Java Jobs

  • Building .NET Projects with Jenkins

  • Installing MSTest Plugin in Jenkins

  • Configuring the MSBuild Plugin

  • Creating a Jenkins Job and Specify a Build Step

  • Specifying a Step for Running Unit Tests

  • Adding a Step for Deploying the .NET Project

  • Building a Node.js Application with Jenkins

  • Node.js Plugin

  • Provides direct Pipeline supportBuilding a C++ Project with Jenkins

  • Executing PowerShell Scripts with Jenkins

Continuous Delivery and the Jenkins Pipeline

  • Continuous Delivery

  • Continuous Delivery (cont'd)

  • DevOps and Continuous Delivery

  • Continuous Delivery Challenges

  • Continuous Delivery with Jenkins

  • The Pipeline Plugin

  • The Pipeline Plugin (cont'd)

  • Defining a Pipeline

  • A Pipeline Example

  • Pipeline Example (cont'd)

  • Parallel Execution

  • Creating a Pipeline

  • Invoking the Pipeline

  • Interacting with the Pipeline

  • Pipeline vs Traditional Jobs

Groovy DSL

  • What is Groovy

  • Groovy in Jenkins

  • Comments in Groovy

  • Data Types

  • Identifiers

  • Variables

  • def

  • String Interpolation

  • Operators

  • Ranges

  • Conditional Statements

  • Loops

  • Lists

  • Maps

  • Exception Handling

  • Methods

  • Closures

  • this Keyword

  • Classes

  • Static Methods

  • Inheritance

  • Abstract Classes

  • Interfaces

  • Generics

  • Jenkins Script Console

  • Extending with Shared Libraries

  • Directory Structure

  • Sample Groovy Code

  • Defining Shared Libraries

  • Using Shared Libraries

  • Same Shared Library Usage Code

  • Defining Global Variables

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

  • Role Based Access Control

Jenkins Plugins

  • 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?

  • Agent Machines

  • Configure Jenkins Master

  • Configure Projects

  • Conclusion

Containerized Builds

  • Containers vs. Virtual Machines

  • Running Jenkins in a Docker Container

  • Delete Jenkins Container and Image

  • Configuring Command Prompt to Connect to Docker

  • Creating Docker Container from Jenkins Job

  • Test Custom Image Created by a Jenkins Job

  • The Jenkins Docker Build Step Plugin

  • Ephemeral Build Agents

The Jenkins API

  • Remote Access API What you can do with the Jenkins Remote API Remote API and CSRF Protection – API Token Remote API and CSRF Protection – Crumb Configure Jobs to Support the Jenkins Remote API Making Remote API Calls Example - Advanced REST Client Example – Curl

Jenkins CLI

  • Configure Jenkins to use CLI

  • Download and Use Jenkins CLI

Getting Started With Collaboration

  • What is GitHub?

  • The GitHub Ecosystem

  • What is Git?

  • Exploring a GitHub Repository

  • Using GitHub Issues

  • Activity: Creating A GitHub Issue

  • Using Markdown

Understanding the GitHub Flow

  • The Essential GitHub Workflow

Branching with Git

  • Branching Defined

  • Activity: Creating A Branch with GitHub

Local Git Configuration

  • Checking Your Git Version

  • Git Configuration Levels

  • Viewing Your Configurations

  • Configuring Your User Name and Email

  • Configuring autocrlf

Working Locally with Git

  • Creating a Local Copy of the repo

  • Our Favorite Git command: git status

  • Using Branches locally

  • Switching Branches

  • Activity: Creating a New File

  • The Two Stage Commit

Collaborating on Your Code

  • Pushing Your Changes to GitHub

  • Activity: Creating a Pull Request

  • Exploring a Pull Request

  • Activity: Code Review

Editing Files on GitHub

  • Editing a File on GitHub

  • Committing Changes on GitHub

Merging Pull Requests

  • Merge Explained

  • Merging Your Pull Request

  • Updating Your Local Repository

  • Cleaning Up the Unneeded Branches

Viewing Local Project History

  • Using Git Log

Streamlining Your Workflow with Aliases

  • Creating Custom Aliases

Workflow Review Project: GitHub Games

  • User Accounts vs. Organization Accounts

  • Introduction to GitHub Pages

  • What is a Fork?

  • Creating a Fork

  • Workflow Review: Updating the README.md

Resolving Merge Conflicts

  • Local Merge Conflicts

Working with Multiple Remotes

  • Remote Merge Conflicts

  • Exploring

Searching for Events in Your Code

  • What is git bisect?

  • Finding the Bug in Our Project

Reverting Commits

  • How Commits Are Made

  • Safe Operations

  • Reverting Commits

Helpful Git Commands

  • Moving and Renaming Files with Git

  • Staging Hunks of Changes

Viewing Local Changes

  • Comparing Changes within the Repository

Creating a New Local Repository

  • Initializing a New Local Repository

Fixing Commit Mistakes

  • Revising Your Last Commit

Rewriting History with Git Reset

  • Understanding Reset

  • Reset Modes

  • Reset Soft

  • Reset Mixed

  • Reset Hard

  • Does Gone Really Mean Gone?

Getting it Back

  • You Just Want That One Commit

  • Oops, I Didn’t Mean to Reset

Merge Strategies: Rebase

  • About Git rebase

  • Understanding Git Merge Strategies

  • Creating a Linear History

Appendix A: Talking About Workflows

  • Discussion Guide: Team Workflows

  • Introduction to Gitlab

  • Gitlab Architecture

  • What is CI

  • CD

  • Introduction to Gitlab Runner

  • Installing and Configuring Gitlab Runner

  • Building a CI-CD Pipeline Using Gitlab

  • Managing Environment Variables in Gitlab

Learning Docker (install, configure and manage)

  • Getting Started with Docker

  • Up and Running

  • Container Image Storage

  • Working with Docker containers and images

  • Publishing Images

  • Running Your Private Docker Infrastructure

  • Running Services in a Container

  • Sharing Data with Containers

  • Docker Machine

  • Docker Compose

  • Docker Swarm

  • Testing with Docker

  • Debugging Containers

Networking Docker

  • Docker Networking Primer

  • Docker Networking Internals

  • Building Your First Docker Network

  • Networking in a Docker Cluster

Security and Docker

  • Docker Security Architecture

  • Linux Kernel Security and Docker Daemons

  • Docker Container Capabilities

  • Docker Content Trust Verification

  • Secure Use of Docker

DevOps and Docker

  • What is DevOps

  • Identify Friction and Overlap points in Development

  • Anatomy of a Pipeline

  • DevOps Evolution

  • DevOps Tools

  • Docker and DevOps

  • Jenkins

  • Ansible

  • Introduction

  • Overview of version control systems

  • Overview of Git

  • Understanding Bitbucket teams

  • Setting up a project

  • Managing accounts

  • Administering repositories

  • Using the repository

  • Add-ons, integrations and services

  • Working with pipelines

  • Using the issue tracker

  • Setting up a wiki

Introduction to Amazon Web Services

  • Summarize the benefits of AWS

  • Describe differences between on-demand delivery and cloud deployments

  • Summarize the pay-as-you-go pricing model

Compute in the Cloud

  • Describe the benefits of Amazon Elastic Compute Cloud (Amazon EC2) at a basic level

  • Identify the different Amazon EC2 instance types

  • Differentiate between the various billing options for Amazon EC2

  • Describe the benefits of Amazon EC2 Auto Scaling

  • Summarize the benefits of Elastic Load Balancing

  • Give an example of the uses for Elastic Load Balancing

  • Summarize the differences between Amazon Simple Notification Service (Amazon SNS) and Amazon Simple Queue Services (Amazon SQS)

  • Summarize additional AWS compute options

Global Infrastructure and Reliability

  • Summarize the benefits of the AWS Global Infrastructure

  • Describe the basic concept of Availability Zones

  • Describe the benefits of Amazon CloudFront and Edge locations

  • Compare different methods for provisioning AWS services

Networking

  • Describe the basic concepts of networking

  • Describe the difference between public and private networking resources

  • Explain a virtual private gateway using a real life scenario

  • Explain a virtual private network (VPN) using a real life scenario

  • Describe the benefit of AWS Direct Connect

  • Describe the benefit of hybrid deployments

  • Describe the layers of security used in an IT strategy

  • Describe which services are used to interact with the AWS global network

Storage and Databases

  • Summarize the basic concept of storage and databases

  • Describe benefits of Amazon Elastic Block Store (Amazon EBS)

  • Describe benefits of Amazon Simple Storage Service (Amazon S3)

  • Describe the benefits of Amazon Elastic File System (Amazon EFS)

  • Summarize various storage solutions

  • Describe the benefits of Amazon Relational Database Service (Amazon RDS)

  • Describe the benefits of Amazon DynamoDB

  • Summarize various database services

Security

  • Explain the benefits of the shared responsibility model

  • Describe multi-factor authentication (MFA)

  • Differentiate between the AWS Identity and Access Management (IAM) security levels

  • Describe security policies at a basic level

  • Explain the benefits of AWS Organizations

  • Summarize the benefits of compliance with AWS

  • Explain primary AWS security services at a basic level

Monitoring and Analytics

  • Summarize approaches to monitoring your AWS environment

  • Describe the benefits of Amazon Cloud Watch

  • Describe the benefits of AWS Cloud Trail

  • Describe the benefits of AWS Trusted Advisor

Pricing and Support

  • Understand AWS pricing and support models

  • Describe the AWS Free Tier

  • Describe key benefits of AWS Organizations and consolidated billing

  • Explain the benefits of AWS Budgets

  • Explain the benefits of AWS Cost Explorer

  • Explain the primary benefits of the AWS Pricing Calculator

  • Distinguish between the various AWS Support Plans

  • Describe the benefits of AWS Marketplace

Migration and Innovation

  • Understand migration and innovation in the AWS Cloud

  • Summarize the AWS Cloud Adoption Framework (AWS CAF)

  • Summarize six key factors of a cloud migration strategy

  • Describe the benefits of various AWS data migration solutions, such as AWS Snowcone, AWS Snowball, and AWS Snowmobile

  • Summarize the broad scope of innovative solutions that AWS offers

The Cloud Journey

  • Summarize the five pillars of the AWS Well-Architected Framework

  • Explain the six benefits of cloud computing

AWS Certified Cloud Practitioner Basics

  • Determine resources for preparing for the AWS Certified Cloud Practitioner examination

  • Describe benefits of becoming AWS Certified

Comments

12000EGP 12000

Diploma Instructors