Multi-Cloud with DevOps
What is DevOps
- Introduction
- Stakeholders of DevOps
- What is SDLC
- Phases of SDLC
- Role Of Dev in SDLC
- Role of Ops in SDLC
SDLC (Software Development Lifecycle)
- What is SDLC?
- SDLC Methodologies
- Waterfall Model
- Advantages of Waterfall
- Dis-Advantages of Waterfall
What is Agile and Scrum
- Agile Development Process
- Agile Manifesto
- Agile Scrum Work Flow
- Agile Analysis Estimation Techniques
- Types of Roles and Responsibilities
- Problem That DevOps Solves
DevOps Life Cycle
- Introduction
- Tools
- DevOps Technology Categories
- Collaboration
- Planning
- Configuration Management
- Source Control
- Dev Environments
- Continuous Integration
- Continuous Testing
- Continuous Deployment
Linux
- Linux Overview
- What is Operating system
- What is Unix, Linux
- Linux vs Windows
- Linux flavors
- Linux Architecture
- Linux commands
- Reading files
- User management
- Group management
- File system management
- Editors
Shell Scripting
- Shell history and introduction
- Types of shells
- Shebang line in shell
- Command line arguments
- Types of Operators
- Loops
- Case statement
- Functions
GIT (Source Code Management)
- 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
- Git Hub Account Setup
- Obtaining Git Installing Git
- Key Terminology
- Staging Vs Un-Staging
- Adding Files to Staging Ares
- Removing Files from Staging Area
- Commit to Local Repository
- Push to Central Repository
- Repository Cloning
- Stashes & Stash Apply
- Branching in Git
- Why We need Branches
- Cloning & Switching Branches
- Fetching Changes (git fetch) Rebasing (git rebase)
- Git Pull
- Git Conflicts
- Branch Merging
- Pull Request
- Merging & Re Basing
- Deleting a Branch
MAVEN (Build Tool)
- What is Build Tool
- Automated build process
- Maven Introduction & Objectives
- Maven Installation
- Maven Terminology
- Maven Archetypes
- Maven Project Creation
- Maven Dependencies
- Maven Repositories
- o Local Repo
o Central Repo
o Remote Repo - Maven Goals
Continuous Integration Tool (Jenkins)
- Introduction
- How to achieve Continuous Integration with Jenkins
- JENKINS Server Setup
- Jenkins Jobs
- How to integrate Jenkins with Maven
- Jenkins dashboard
- Jenkins plugins – how to download and
- use Setup and Running Jenkins Jobs
- Configure Dashboard Configure System Environment Global Properties
- Create and configure a job Run a job manually Triggering a Build Scheduled Build job Manual Build job
- Polling SCM
- Post-Build Actions Archiving Build Results Notifications
- Jenkins Plugins
- Jenkins Master Slave Architecture
- Jenkins Pipeline Introduction
- Multi Stage Pipeline
- Jenkins with Maven & Git Integration
- Jenkins with Sonar Integration
DOCKER (Containerization Tool)
Introduction
- What is Docker
- Life without Docker
- Life with Docker
- Installing Docker on Linux
- What is container
JFROG
- JFROG Configurations
- Artifacts Managements
Configuration Management (ANSIBLE)
- What is Configuration Management
- What is Ansible
- Introduction
- Installing Ansible
- Testing with First Ansible Commands
- Introduction to Play Books
- YML File
- Writing Play Books
- Play Books Execution
- Tags
- Handlers
- Introduction to Roles
- Role Basics
- Creating Role
- Ansible Galaxy
- Ansible Tower
- Docker run command
- Working with images
- Container Life cycle
- Docker File
- Docker Network
- Docker Volumes
- Docker Compose
- Docker Swarm
KUBERNETES
- What is Kubernetes
- Docker Swarm Vs Kubernetes
- Kubernetes Architecture
- Control Plane
- Worker Nodes
- Namespaces
- Pods
- Pod Life cycle
- Services
o Cluster IP
o Node Port
o Load Balancer - Replication Controller
- Replication Set
- Daemon Set
- Stateful Set
- Deployment
o Recreate
o Rolling Update
o Blue Green Deployment - Config Map
- Secrets
- Ingress Controller
- HELM Charts
- EKS setup
Monitoring Tools
- Grafana
- Prometheus
INFRASTRUCTURE AS CODE (IAC)
TERRAFORM
- Introduction to Terraform
- Terraform Vs Ansible
- Terraform installation
- Terraform Architecture
- Terraform Scripts
- Infrastructure Creation
- Credentials Management
- Terraform Variables
- Terraform Graph
- Terraform Count & Count Index
AWS (AMAZON WEB SERVICES)
Introduction to Cloud Computing
- What is Cloud Computing?
- Why Cloud?
- Types of Cloud Deployment Models
- Types of Cloud Services
- IaaS Vs. SaaS Vs. PaaS
- Future of Cloud Technologies
- Advantages and Disadvantages of Cloud
- Cloud Providers
Introduction to Amazon Web Services (AWS)
- What is AWS?
- How to Subscribe for AWS account
- What is the AWS Free Usage Tier
- AWS Certification
- Introduction to the AWS management Console
- List of services given by AWS
VM Creation in AWS
- Creating Windows VM
- Connecting to Windows VM using RDP
- Creating Linux VM
- Pem file & Ppk File
- Putty & Putty Gen
- MobaXterm
- Connecting to Linux VM using Putty
- Linux Introduction
- Linux Commands
Elastic Compute Cloud (EC2)
- What is Amazon EC2?
- Features of Amazon EC2
- Managing the EC2 infrastructure
- EC2 Dashboard
- Pricing for Amazon EC2
- EC2 instance Types
- EC2 Families
AWS Regions and Availability Zones
- Describing Regions
- Availability Zones, and Endpoints
Amazon Machine Images (AMI)
- Managing AMIs
- Working with Windows, Linux AMIs
- Shared and Paid AMI
- Making an AMI Public
EC2 Instances
- Instance Type
- Instance life cycle
- Differences between reboot, stop, and terminate
- Building an EC2 windows and linux instances
- To install instance in public and private subnet
- Security via Key Pairs
- EC2 Class and VPC Security Groups
- Managing Elastic IP’s
- Pricing model in EC2 instances
- EC2 with Amazon command line interface
Amazon Elastic Block Store (EBS)
- Features of Amazon EBS
- Amazon EBS volumes
- Managing EBS volumes
- Increasing the volume size
- Volume Mounting
- Amazon EBS snapshots
- Life Cycle Manager
Load Balancing (ELB)
- Creating a load balancer
- Internal and external load balancer
- Load balancing protocols
- Security groups for the load balancer
- Health check for the load balancer
- Cross-zone load balancing
- Target Groups
- Microservices Load Balancing
Auto Scaling
- What is auto scaling?
- Auto scaling components
- Creation of launch configuration
- Configuration of auto scaling policies
- Advantages of using auto scaling with ELB
Network & Security
- Security Groups
- Inbound Rules
- Outbound Rules
- Elastic IPs
- Placement Groups
- Key Pairs
- Network Interfaces
Amazon Virtual Private Cloud (VPC)
- What is Amazon VPC?
- VPC Essentials
- Default and Non Default VPC
- VPC Networking and ACL
- Security Groups
- DNS and DHCP Options Sets
- VPC Peering and Endpoints
- Subnet Routing
- VPC Internet Gateway
- Elastic IP addresses and network interfaces
- VPC integration with many other AWS services
- Creating a NAT instance in a VPC
- Configuring a Web application in VPC
- Pricing for Amazon VPC
Amazon Route 53
- Route 53 as your DNS service
- Using Traffic Flow
- Route 53 Health Checks
- Configuring DNS Failover
- Latency Based Routing
- Weighted Routing Policies
- Hosting web portal using Route53
- Bucket Policies
Security & Identity Services Identity Access Management (IAM)
- IAM Features
- Getting Started With IAM
- Creation of user, groups, roles
- Managing & Writing policies
- Credential Report
- IAM Console and the Sign-in Page
Amazon S3
- What is object Storage?
- Data as objects
- Lifecycles of S3
- Managing Buckets
- Versioning
- Pre-Signed URL
- Bucket Policies
- Accessing S3 storage via tools
- Creation of a static website using S3 storage
Relational Database Service (RDS)
- RDS Essentials
- Launching RDS instance
- Selecting the Engine
- Configuring the Database Engine
- Managing RDS Database
- Setting up automatic backups
- Authorizing access to the DB
- SQL Vs No SQL Databases
Amazon Cloud Watch
- Amazon CloudWatch Architecture
- List of services monitored by CloudWatch
- Collect and track metrics
- Monitoring memory and disk Metrics
- Monitoring logs, Graphs
- Set Alarms
Cloud Formation
- Building AWS infrastructure as a code
- Design a template
- Create a Stack
- Create a Template from your Existing Resources
- Introduction to JSON
Amazon Simple Email Service (SES)
- Simple email service overview
- Configuring Amazon email service
- Amazon SES and Deliverability
- Amazon SES Email-Sending Process
- Email format and Limits of SES
Amazon Simple Queue Service (SQS)
- Simple Queue service overview
- SQS for background work task
- Creating a Queue
- Confirming the Queue exists
- Add a permission to the Queue
Amazon Simple Notification Service (SNS)
- Simple Notification Service overview
- SNS architecture
- Publishers and subscribers
- Creation of a topic
- Subscribing to topic via Email
- Setting notification for EC2 instance changes
Elastic Bean Stalk
- What is Platform as a Service
- Bean Stack Advantages
- EC2 vs Bean Stack
- EC2 Pricing
- Deploy Web Application using BeanStack
AWS Lambdas
- What is Serverless Computing
- Advantages of Serverless Computing
- What is Lambda
- How to Create Lambda
- How to invoke Lambda
- Java App with Lambdas
AWS Backups
- What is Backup ?
- What is AWS Backup ?
- Types of Backups
Daily Backups
Weekly Backups
Monthly Backups
On-Demand Backups - Backup Vaults & Containers
- Backup Archive/ Restore
Interview Guide
- Resume Preparation
- Frequently Asked Interview Questions
- Interview Tips & Tricks
- Certification Overview
Microsoft Azure
Cloud Computing Introduction
- What is Cloud Computing
- Cloud Characteristics
- Cloud Computing Service Models
- Deployment Models in Cloud Computing
- Advantages and Disadvantages of Cloud Computing
- Cloud Computing Job Roles.
- Cloud Computing Platforms and Certifications
Getting Starting with Azure
- Introduction to Azure
- Why, What and Benefits of Azure
- Azure Hosting Models
- Azure Services
- Subscribing to Microsoft Azure
- Azure Portals
- Azure Key Concepts
- Azure Resource Group
- Installing Microsoft Azure SDK
Configure & Manage Azure Virtual Networks
- Overview of Azure Networking
- Virtual Network Benefits
- Understanding Network Resources
- Implement and manage virtual networking
- Create a VNet using Azure Portal
- Create a Subnet
- Configure private and public IP addresses
- Create Network Interface Card with public, and private IP addresses
- Create a Virtual Machine
Setup Network Security Group
- Create security rules Associate NSG to a subnet or network interface
- Identify required ports Evaluate effective security rules
Load Balancer
- Configure external and internal Azure Load balancer
- Load Balancing Rules Implement front end IP configuration Configure NAT rules
Azure Firewall Understanding Azure DNS
- Configure Azure DNS
- Public and Private DNS Zones
- Understanding and Creating Availability Set
- Understanding Availability Zones
- Azure Front Door Service
- Monitoring and Troubleshooting Network Connectivity
Implement Advanced Virtual Networking
- Azure Application Gateway
- Azure Traffic Manager
- Create connectivity between virtual networks
- Verify virtual network connectivity
Integrate on-premises network with Azure virtual network
- Azure Application Gateway
- Azure Traffic Manager
- Create connectivity between virtual networks
- Site-to-Site VPN
- Express Route Solution
Monitor and Manage Networking
- Azure Application Gateway
- Azure Traffic Manager
- Create connectivity between virtual networks
- Verify, Manage and Monitor on-premises connectivity;
- Use network resource monitoring and Network Watcher
- Manage external networking and virtual network connectivity
Managing Azure with Windows PowerShell and Azure CLI
- Installing the required modules
- Login to Azure Portal
- Managing Resource Group
- Managing App Service Plans and App Service Web Apps
- Create and Configure a Storage Account
- Managing Storage Accounts using PowerShell
- Azure CLI Introduction and Setup
- Creating Resources
- Listing and Formatting output
- Connect a Web App to SQL Database
- Deleting Resources
- Interactive Mode
Manage resource groups
- Use Azure policies for resource groups
- Configure resource locks
- Configure resource policies
- Implement and set tagging on resource groups
- Move resources across resource groups
- Remove resource groups
Managing ARM Templates
- Understanding Azure Resource Manager (ARM)
- Exporting and Importing ARM templates.
- ARM Resource Providers
- Deploy ARM Templates
- Using PowerShell
- Azure CLI
- Azure Portal
5. Incremental and Complete Deployments
Azure Storage Service
- About Storage Service and Account
- Creating a Storage Account
- Working with Blob Storage
- Types of Blobs (Block, Append, Page)
- Container and Metadata
- Soft Copy
- Azure Storage Explorer
- Transfer Data using AzCopy
- Programming Blob Storage
- Async Blob Copy
- Import and Export Service
- Implement and Configure CDN
- Configure Custom Domain
- Scale Blob Storage
- Storage Service Encryption
Manage Access / Securing Storage
- Create and Manage Shared Access Signature
- Account SAS vs Service SAS
- Using Stored Access Policies
- Regenerating Keys
- Encrypt Keys using Azure Key Vault integration
Working with Table Storage
- Understanding NoSQL Database
- Creating Table and Entities using Storage Explorer
- Entities and Properties
- Table storage vs COSMOS DB Table API
Azure Queues Storage
- Understanding Async Communication using Queues
- Comparing Azure Queues and Service Bus Queues
Azure SMB File Storage
- Common usage of File Storage
- Shares, Directory and File
- Managing Using Azure Portal
- Azure File Sync
Azure Virtual Machine
- Introduction
- About Virtual Machine Workloads
- Create a Windows Virtual Machine using Portal / PowerShell / ARM Templates
- Deploy popular application frameworks by using Azure Resource Manager templates
- Virtual Machine Disk
- Convert Unmanaged Disk to Managed Disk
- Generalizing VM and Capture VM Images
- Upload an on-premise VHD to Storage Account and attach to VM as Data Disk
- Working with Disk Snapshot
- VM Disk Types
- VM Sizes in Azure
- Configuring VM Disk Encryption
- Perform configuration management
- VM Extensions & VM Agents
- Custom Script Extensions
- Desired State Configuration (DSC)
- Access Extension
14. Virtual Machine Scale Sets
15. Configure VM monitoring, configure alerts, diagnostic and monitoring storage location
Implement Azure Backup and Restore
- Overview of Azure Backup
- Configure VM backup
- Create Recovery Services Vault
- Define and Implement backup policies
- Perform VM restore
- Perform backup operation
- Configure and review backup reports
Azure Monitoring and Log Analytics Workspace
- Azure Monitor Overview
- Monitoring Metrics
- Monitoring Logs
- Log Analytic Workspace
- Collect data from an Azure VM / Windows
- computer
- Azure Activity Logs
- Azure Diagnostics Logs
- Configure and Analyze Application Insight
Manage Azure Subscriptions and Azure
- Understanding Azure Subscriptions
- Configuring Role Based Access Control
- RBAC using Portal
- RBAC using PowerShell and CLI
- Custom Roles for RBAC
- Managing Subscription Policies
- Locking Resources
- Checking Resources Limits
- Resource Tags
Managing and Securing Identities using Azure Active Directory
- Azure AD Introduction
- Azure AD Editions
- Managing Active Directories
- Adding a custom domain name to Azure AD
- Managing Azure AD Users, Groups and Devices
- Adding Partner Users from other organization
- Configure Windows 10 with Azure AD domain join Synchronizing On-Premise AD Identities with Azure AD
- Azure AD Connect
- Azure AD User Sign-In Options
- Password Synchronization
- Passthrough Authentication
- Federated SSO
Managing and Securing Identities using Azure Active Directory
- Multi Factory Authentication
- Conditional Access Policy
- Access Reviews
- Privilege Identity Management
- Add Users and Groups to Application
- Revoke access to SaaS Applications
5. Managed Identities
6. Multi-Tenant vs Single-Tenant Applications
Google Cloud Platform
GCP Introduction
- WHAT IS THE GOOGLE CLOUD PLATFORM.
- WHY WE NEED GOOGLE CLOUD PLATFORM.
- SERVICES OVERVIEW.
- INTRODUCTION TO THE DEVOPS WITH GCP.
- GCP ROLES OFFERED
- GCP CERTIFICATIONS OFFERED
GCP Locations
- INTRODUCTION TO THE GCP CONSOLE.
- NAVIGATING THE GCP CONSOLE.
- MANAGING RESOURCES AND SERVICES THROUGH THE CONSOLE.
- CUSTOMIZING THE CONSOLE FOR YOURWORKFLOW.
- COLLABORATION AND ACCESS CONTROL USING THE CONSOLE.
- TIPS AND TRICKS FOR EFFECTIVE USE OF THE CONSOLE.
- USING BUILT-IN TOOLS AND UTILITIES
Google Compute Engine (GCE)
- WHAT IS GCE AND ITS ROLE IN GCP
- KEY FEATURES AND BENEFITS OF GCE
- USE CASES AND SCENARIOS FOR GCE
- CREATING A VIRTUAL MACHINE INSTANCE
- CHOOSING MACHINE TYPES, OPERATING SYSTEMS, AND IMAGES
- CONFIGURING BOOT DISKS AND PERSISTENT STORAGE
- NETWORK SETTINGS AND IP ADDRESSES
- SSH ACCESS AND CONNECTING TO VMS
- INSTANCE TEMPLATES AND GROUPS
- USING INSTANCE TEMPLATES FOR CONSISTENCY
- CREATING MANAGED INSTANCE GROUPS
- CREATING CUSTOM MACHINE IMAGES
- IMPORTING AND EXPORTING IMAGES
- SNAPSHOT MANAGEMENT FOR DATA BACKUPS
- BEST PRACTICES FOR IMAGE AND SNAPSHOT MANAGEMENT
- VIRTUAL PRIVATE CLOUD (VPC) NETWORK SETUP
- FIREWALL RULES AND NETWORK POLICIES
- INTERNAL AND EXTERNAL IP ADDRESSES
IAM and Admin
- UNDERSTANDING THE IMPORTANCE OF IAM IN GCP
- CORE CONCEPTS: PRINCIPALS, ROLES, AND PERMISSIONS
- THE PRINCIPLE OF LEAST PRIVILEGE
- IAM HIERARCHY IN GCP: ORGANIZATION, PROJECT, AND RESOURCE LEVELS
- EXPLORING PREDEFINED IAM ROLES
- CUSTOM ROLES AND THEIR USE CASES
- ASSIGNING ROLES TO MEMBERS AND GROUPS
- PERMISSIONS AND HOW THEY RELATE TO ROLES
- EFFECTIVE PERMISSIONS AND ROLE INHERITANCE
- DEFINING IAM POLICIES FOR RESOURCES
GCP Firewalls
- OVERVIEW OF GOOGLE CLOUD PLATFORM FIREWALLS
- KEY CONCEPTS AND FUNCTIONALITIES
- INGRESS AND EGRESS FIREWALL RULES
- USE CASES FOR FIREWALL RULES
- CREATING AND MANAGING FIREWALL
- CONFIGURING FIREWALL RULES IN THE CLOUD CONSOLE
- USING GCLOUD COMMANDS FOR FIREWALL RULE MANAGEMENT
- IP RANGES, PROTOCOLS, AND PORTS IN FIREWALL RULES
- PRIORITIZING AND ORDERING RULES
- BEST PRACTICES FOR FIREWALL RULE CREATION
Virtual Private Network (VPC)
- OVERVIEW OF VIRTUAL PRIVATE CLOUD IN GCP
- KEY COMPONENTS AND FEATURES OF VPC
- SUBNETS, ROUTES, AND IP ADDRESSING IN VPC
- USE CASES FOR VPC IN CLOUD NETWORKING
- CREATING AND CONFIGURING VPC NETWORKS
- SETTING UP VPC NETWORKS IN THE CLOUD CONSOLE
- CONFIGURING SUBNETS AND IP RANGES FIREWALL RULES AND SECURITY WITHIN VPC
- SHARED VPC FOR RESOURCE ORGANIZATION
- BEST PRACTICES FOR VPC CREATION
Load Balancer
- OVERVIEW OF LOAD BALANCING IN GCP
- KEY TYPES OF LOAD BALANCERS
- USE CASES FOR LOAD BALANCING
- PRICING AND BILLING CONSIDERATIONS
- CREATING AND CONFIGURING LOAD BALANCERS
- BACKEND SERVICES AND HEALTH CHECKS
- IP ADDRESSING AND GLOBAL LOAD BALANCING
- BEST PRACTICES FOR LOAD BALANCER SETUP
- MANAGING IAM POLICIES FOR A PROJECT
- POLICY HIERARCHY AND OVERRIDING
- CONDITIONAL ROLE BINDINGS
- POLICY BEST PRACTICES AND OPTIMIZATION
- ASSIGNING ROLES TO SERVICE ACCOUNTS
- USING SERVICE ACCOUNTS FOR APPLICATION AUTHENTICATION
- SECURITY BEST PRACTICES FOR SERVICE ACCOUNTS
- DELEGATING ACCESS TO MANAGE IAM
- CREATING CUSTOM ROLES FOR ADMINISTRATORS
- BEST PRACTICES FOR ROLE DELEGATION
- MONITORING AND AUDITING IAM CHANGES
- TROUBLESHOOTING IAM DELEGATION ISSUES
Google App Engine
- OVERVIEW OF GOOGLE APP ENGINE AND ITS ROLE IN GCP, KEY FEATURES AND BENEFITS OF APP ENGINE
- USE CASES AND SCENARIOS FOR APP ENGINE
- PRICING AND BILLING CONSIDERATIONS
- GETTING STARTED WITH APP ENGINE RESOURCES
- APP ENGINE STANDARD ENVIRONMENT VS FLEXIBLE ENVIRONMENT
- UNDERSTANDING THE TWO APP ENGINE ENVIRONMENTS
- CHOOSING THE RIGHT ENVIRONMENT FOR YOUR APPLICATION
- CREATING YOUR FIRST APP ENGINE APPLICATION
- DEFINING THE APPLICATION’S STRUCTURE AND FILES
- CAPACITY PLANNING AND PERFORMANCE OPTIMIZATION
Google Cloud Storage
- OVERVIEW OF GOOGLE CLOUD STORAGE AND ITS ROLE IN GCP
- KEY FEATURES AND BENEFITS OF CLOUD STORAGE
- USE CASES AND SCENARIOS FOR CLOUD STORAGE
- PRICING AND BILLING CONSIDERATIONS
- GETTING STARTED WITH CLOUD STORAGE RESOURCES
- UNDERSTANDING GCS STORAGE CLASSES (STANDARD, NEARLINE, COLDLINE, ARCHIVE)
- CREATING AND MANAGING BUCKETS IN GCS
- CHOOSING THE RIGHT STORAGE CLASS FOR YOUR DATA
- CONFIGURING STORAGE CLASS TRANSITION POLICIES
- ACCESS CONTROL AND PERMISSIONS FOR BUCKETS
- STORING AND RETRIEVING OBJECTS IN GCS
- USING THE CLOUD STORAGE BROWSER
- MANAGING METADATA FOR OBJECTS
- OBJECT VERSIONING AND RETENTION POLICIES
- OBJECT LIFECYCLE MANAGEMENT
- UPLOADING AND DOWNLOADING DATA TO AND FROM GCS
- TRANSFERRING DATA BETWEEN GCS BUCKETS
- BUCKET-LEVEL AND OBJECT-LEVEL ACCESS CONTROL
Instructor
