Cloud Computing Master Program (1) (1)
Cloud Computing Master Program (1) (1)
1. Linux
2. AWS
3. Python
4. DevOps
5. Azure
6. Terraform
✓ Project
✓ Aptitude
✓ Spoken English
Automating Programs
• Run Levels
• /etc/rc.d Files
• Customization of Run Levels
• cron and anacron
• at and batch
Login Options
• Console Logon
• Controlling Console Login
• Virtual Consoles
• Serial Login
• Remote Login
• ssh Login
Building a Custom Linux Kernel
• Kernel Versions
• Kernel Source Files
• Kernel Patch Files
• Kernel Configuration
• Kernel Building
• Testing a New Kernel
The GNU/Linux Filesystem
• Partition Types
• Filesystem Types
• Mounting
• Automount
• File Types
• File Security
Key Filesystem Locations
• Boot Files
• User Files
• Administrator Files
• Configuration Files
• Log Files
The /proc Pseudo Filesystem
• Process Info
• Kernel Config Info
• Hardware Info
• Changing /proc Info
• Sysctl
BASH – Borne Again Shell
• tar Files
• Patch Files
• RPM
Hardware Management
• Types of Devices
• /dev Namespace
• Modules
Network Management
• FTP
• NFS
• Samba
Network Services – Part III
• Sendmail
• Apache
• Squid Proxy Server
The X Window System
Cloud Basics
This session deals with the basics of cloud computing. Significant features of the cloud when
compared with on-premises. You will get a good understanding of the difference between
public, private and hybrid cloud environments. Discuss various cloud services like
• IAAS(Infrastructure As A Service)
• PAAS(Platform As A Service)
• SAAS(Software As A Service)
Introduction to AWS
Learning Objective:
Amazon web service is one of the leading cloud providers available in the market. AWS
provides a variety of services for your business and helps you get through digital
transformation for the future. You will be learning the AWS global infrastructure like
Regions, Availability Zones and Edge Locations. Overview of services provided by AWS such
as,
• Compute
• Storage
• Database
• Networking
• Security
• Applications
End of this session you will be having a good understanding of cloud concepts and its
services and the Impact of AWS in a cloud environment.
Hands-on:
• Open AWS free tier account.
• Setup payment methods and billing preferences.
• Set alarm for free tier usage
Virtual Private Cloud
Learning Objective:
Logically isolated network devices (instances) from other AWS resources called VPC. You can
provide your own private IPs for your instances. Your instances inside VPC will be
interconnected together through VPC. Basic components of VPC to create a basic
infrastructure is follows
• VPC
• Subnets
• Route Tables
• Internet gateway
End of this session you will have clarity of AWS regions, Availability Zones, and Edge
locations. Also, you will learn CIDR concepts to get a better understanding of IP ranges.
Hands-on:
• Create and configure VPC, Subnets, Internet gateway, and Route Tables.
• Create NAT Gateway, NAT instances, VPC Peering, Endpoints.
• Different between NACL and Security groups
EC2
Learning Objective: EC2 provides a scalable computing capacity for your business. AWS has a
wide range of instance family (type) include Memory-optimized, CPU optimized,
Networking, etc. You can create instances using Amazon Machine Images, which is
preconfigured by Amazon. AWS lets you create your own AMI and you can choose from any
AMI available in Amazon Marketplace as well. Instances are available in many options,
• On-demand
• Reserved
• Spot Instance
• Scheduled instance
As a solution Architect, you will be able to give a solution for your client to choose the
perfect compute service for their business needs.
Hands-on:
• Create and launch different types of operating systems like Linux, Windows and
connect them.
• Create AMIs and Snapshots and launch instances using them.
• Create additional Volume and attach it with your instance.
Storage
Learning Objective:
There are many storage options available in AWS as per your needs from short term to long
term. In Amazon S3 you can store an unlimited amount of data. S3, EBS, EFS, FSx, Glacier,
and DeepGlacier are some major storage options available in AWS. In this session, you will
be learning storage classes available in S3 and its features, cost, etc. You will get a brief
knowledge of storage classes so that you can suggest your client more cost-effective.
Storage classes are,
• Standard
• Standard Infrequent Access
• Standard Intelligent Tier
• S3 Glacier
• S3 Glacier Deep
Hands-on:
• Create and attach EFS with instances
• Create S3 and apply lifecycle policy and replicate the bucket into another bucket.
• Create static Webhosting
Load balancing and Autoscaling
Learning Objective:
Load balancing and Autoscaling are the significant features available in a cloud environment.
A load balancer is to split the traffic between servers and trigger the auto-scaling when
needed. The load balancer keeps checking the server’s health in a proper time interval and
takes the action according to it. There are three types of load balancers available,
• Classic Load balancer
• Application Load balancer
• Network Load balancer
End of this session you will understand the load balancer concept. You will have an idea to
use a suited load balancer for your application.
Hands-on:
• Create a Load balancer and attach targeted instances into it.
• Create an auto-scaling group and increase the instances when CPU utilization is high,
and decrease the instances when CPU utilization is low.
Route 53
Learning Objective:
Route 53 is a DNS service available in AWS. You can register your domain here. Create a
recordset to host your website or application. Understand the routing policies available in
AWS and apply which is suitable for your environment. Routing policies are
• Simple
• Weighted
• Geological
• Latency
• Failover
Hands-on:
• Register your Domain name
• Create recordset and apply a routing policy
• Configure Health check for your Load balancer or instance.
Cloud Front
Learning Objective:
Cloud front is also called Content Delivery Network. Cloud front creates a distribution
(cache) for your website or Application at your nearest edge location. So the latency would
be less for the next time user. You can block a particular country people to view your
website. Analyze your website views from which OS, Browser, and users.in this session you
will be engaged into the following topics,
• Origins and Origin groups
• Behaviors
• Restrictions
• Invalidations
Hands-on:
• Create distribution for your website. Block a few country users viewing your website.
Invalidate the previous cache and create a new one.
IAM
Learning Objective: IAM is to control your AWS resources most securely by limiting AWS
users and other Services. You will be learning policies and the role and their major impact on
the resources. Configure password policies and activate MFA. In this session, you will have
knowledge on,
• Users
• Groups
• Roles
• Polices
Hands-on:
• Create users and add a user to the group. Attach the customized policy to that
group.
• Perform cross-account access using STS
Relational Database Service
Learning Objective:
RDS is a SQL based fully managed Database service. Users don’t need to worry about
storage scaling, patching, backups, and maintenance. Replication costs you less and
implementation is simple. RDS supports the following database engine,
• Aurora
• MySQL
• MsSQL
• MariaDB
• PostgreSQL
• Oracle
Hands-on:
• Create a database with replication on another Availability zone. Configure auto-
scaling, daily backup, and auto-upgrade.
• Connect your database through database client and insert tables and contents into
it. Apply some quires to retrieve data.
DynamoDB
Learning Objective:
DynamoDB is a NoSQL database service available in AWS. It is a replacement for MongoDB.
It can handle 20 million requests per second and also can handle over 10 trillion requests
per day. In-memory caching, Backup and restore are the significant features of DynamoDB.
They are mainly used for gaming applications and IoT Applications. You will be learning the
following topics,
• Scaling through performance
• Server less environment
• Microservices
Hands-on:
• Create and insert contents into the DynamoDB table. Configure and manage multi-
region replication.
Monitoring (Cloud Trail & Cloud Watch)
Learning Objective:
Cloud trail keeps the logs for every activity happening into your AWS account. It does have
the last 90 days activity by default. In this session, you will be learning the different types of
events available in the cloud trail and its example.
• Management event
• Data event
• Insight event
Cloud Watch
Cloud Watch is monitoring to fetch the logs and perform some action accordingly. There are
two types of monitoring optionss available. Basic and detailed monitoring. You will learn to
create logs and metrics and events. It triggers some action when event occurs. Topics
involved in cloud watch are,
• Events
• Logs
• Metrics
• Alarms
Hands on:
• Create a cloud watch event to start a new instance when CPU utilization is high.
• Set alarm for the events and send notifivation
Application Services
Learning Objective : There are many application services available in AWS. SNS is the most
commonly used application service. Simple Notification Services is to generate email
notification and send it to the subscribers. Another application service we use is SQS. It is a
replacement for the Microsoft queuing service. Application services covered in this session
are as follows,
• Simple E-mail Service
• Simple Queue Services
• Simple Notification Service
Hands on:
• Create and send notification to the users
• Create and send messages using standard and FIFO messaging queue
Design and Architecture
Learning Objective:
As a solution Architect you will be able to give a solution for your client to create,
implement and improve your cloud infrastructure by using the five pillars of well architect
tools.
• Operational excellence
• Reliability
• Security
• Cost optimization
• Performance efficiency
DevOps
Introduction to DevOps
Learning Objective:
This session will help you understand the purpose and the scope of DevOps in the current
market, tools and the skills the market is looking for and how the culture is applied in the
industries
Topics:
• DevOps Principles in detail
• DevOps Engineer Skills in the market
• Knowing DevOps Delivery Pipeline
• The market trend of DevOps
• DevOps Technical Challenges
• Tools we use in DevOps
Hands-On:
A brainstorming session on the trends in current IT industries
DevOps on Cloud
Learning Objective:
This session will help you understand how DevOps is currently being used on cloud
infrastructure by automating entire setup. Learn cloud setup helps faster releases, fewer
software failures and how trendy it is.
Topics:
• Essentials of Cloud computing?
• Cloud and virtualization architecture
• Cloud deployment architecture
• Cloud providers – An overview
• Why we need DevOps on Cloud?
• Introducing to Amazon web services
Hands-on:
• How to setup AWS account
• Various AWS services for Devops – An overview
• DevOps using AWS – Demo
GIT – A version control tool
Learning Objective:
This session will help you understand why version control system streamlines the
development of working with different people and makes very easy to collaborate on
projects.
Topics:
• Knowing about Version control
• Git – A CLI
• Essentials of GIT in industry
• How to setup GIT
• Working with various commands in GIT
o Recording Changes to the Repository
▪ How to check the Status of Your Files
▪ How to track New Files
▪ Staging our modified files
▪ Ignoring Files from GIT
▪ Viewing Your Unstaged and Staged Changes
▪ How to commit Your Changes
▪ Skipping the Staging Area and commit
▪ Removing Files from GIT
o Viewing the Commit History
▪ Limiting Log Output
▪ Using a GUI to Visualize History
o Undoing Things
▪ Changing Your Last Commit
▪ Unstaging a Staged File
▪ Unmodifying a Modified File
o Working with Remotes
▪ Showing Your Remotes
▪ Adding Remote Repositories
▪ Fetching and Pulling from Your Remotes
▪ Pushing to Your Remotes
▪ Inspecting a Remote
▪ Removing and Renaming Remotes
o Branching and Merging in Git
▪ What a Branch Is
▪ Basic in Branching and Merging
▪ Branch Management in GIT
▪ Branching Workflows and its usage
▪ Remote Branches – create and delete
▪ Rebasing
o Git workflows
o Git cheat sheet
Hands-on exercises:
• Installing Git
• First-Time Git Setup
• Getting a Git Repository
• Working with various git commands
• Working with Local repository vs remote repository
• Managing remote repository
• Stashing operations and various local repository operations
• Branching and merging operations
• Resolving conflicts during merges
• Managing access on repository managements
Jenkins – Continuous integration
Learning Objective:
This session will help you understand why Jenkins is evolving as a must tool in the current
DevOps practices. Understanding how Jenkins allowing current industries to set up their
build pipelines with a more quickly and sophisticated build process by drastically reducing
the risks in the software development lifecycles.
Topics:
• Essentials of Continuous Integration
• An example scenario where CI is used
• Know about Jenkins and its architecture in detail
• Jenkins tool Management in detail
• Know about User management in Jenkins
o Authentication
▪ Jenkins own database user creation
▪ Options to enable integration with LDAP
o Authorization
▪ Matrix-based authorization
▪ Project-based authorization
o Overview of Maven
▪ Maven project structure
▪ Maven plugins
▪ Project Object Model (POM) – the fundamental unit of work in Maven
project
▪ Maven build lifecycle
▪ Adding external dependencies to maven pom.xml
▪ Maven build and test project
o Creating jobs and automatic build settings
▪ What is Jenkins Pipeline?
▪ Why Pipeline?
▪ Integration with GIT
▪ How to enable project-based authorization for a job
▪ Source code management while creating jobs
▪ Triggering automated build
▪ Maven job setup
▪ Know about post-build options for jobs like notifications, trigger
another build, publishing reports, etc.
o Adding a slave node to Jenkins
o Building Delivery Pipeline
o Notification settings in Jenkins
o Plugin management in Jenkins
Hands-on Lab:
• Installing Jenkins
• Post-installation setup wizard
o Unlocking Jenkins
o Customizing Jenkins with plugins
o Creating the first administrator user
• Administration of Jenkins
• User management – Authentication and Authorization
• Master-slave set up on Jenkins
• Creating basic jobs to pull code from GitHub
• Jobs to perform individual operations
• Setup build pipeline
• Understanding build triggers, build and post-build operations
• Deploying an application to a container using Jenkins
Docker – A containerization technology
Learning Objective:
This session will help you understand why Docker knowledge is required in order to master
DevOps cultures in the current IT industry Understanding containerizing the application is
also isolating that into a completely separated environment.
Topics:
• Introduction
o Real-world Shipping Transportation Challenges
o Introducing Docker and its technology
o Understanding of Docker images and containers
• Working with container
o How to Share and copy a container
o Container Life Cycle
o How to use Base Image and customize
o Creation of Docker File
o How to Publish Image on Docker Hub
• Introduction to Docker Networking
o Network Types in docker technology
o Docker Container Networking
o Docker Compose – An introduction
• Docker Swarm – An introduction
o Use Docker Compose to create PHP, WordPress, MySQL
o How to Start Containers on a Cluster with Docker Swarm
o Creating and Scaling an application in Docker swarm
Hands-on:
• How to setup docker-engine
• How to run docker container from pulling image from public repo
• How do we create a docker file
• Creating different docker files for different application
• Creating a docker-compose file to deploy multi-container
• Creating docker custom bridge networks
• Creating docker swarm cluster
• Orchestration of container using swarm cluster
Kubernetes
Learning Objective:
This session will help you understand how Kubernetes helps to orchestrate the Docker
containers. How the opensource system helps to automate the deployment, scaling and
managing the containers.
Topics:
• Introduction to Kubernetes
• Kubernetes Cluster Architecture – An overview
• Understanding concepts of Pods, Replica sets, deployments and namespaces
• Understanding the concepts of services and networking
• Persistent volumes and persistent volume claims – an overview
• Design of Pods
• Understanding labels, selectors, jobs, and schedulers
Hands-on:
• Setting up the Kubernetes Cluster
• Deploying an app through Kubernetes Dashboard
• Accessing the application through service
• Rolling updates in Kubernetes
• Creating and adding volumes
Ansible – A configuration Management
Learning Objective:
This session will help you understand how significantly Ansible reduces your coding hours
with the configuration management tool. Understanding most popular configuration
management tool to set up easily, configure easily and deploy IT infrastructure easily.
Topics:
• Introducing Ansible – A configuration management tool
o Basics / What Will Be Installed
o Understanding Ansible architecture
o Control Machine Requirements
o Managed Node Requirements
• Inventory
o Hosts and Groups
o Host Variables
o Group Variables
• Learn various Ansible Modules
• How to use Adhoc commands
o Parallelism and Shell Commands
o File Transfer
o Managing Packages
o Users and Groups
o Deploying From Source Control
o Managing Services
• Introduction to YAML script
• Playbook
o About Playbooks
o Playbook Language Example – YAML
o How to Write Playbooks
o Tasks in Playbooks
o Understanding about various tasks in the playbook
o Introduction to Handlers and variables
o Learn about using handlers, variables in the playbook
o Become (Privilege Escalation)
• Roles
o Role of Directory Structure
o Using Roles
o Role Duplication and Execution
o Role Default Variables
o Role Dependencies
o Role Search Path
o Ansible Galaxy
• Including and Importing
o Includes vs. Imports
o Importing Playbooks
o Including and Importing Task Files
o Including and Importing Roles
Hands-on:
• How to setup Ansible server and target servers
• Writing Adhoc commands to install and configure the servers
• Writing a playbook to install and configure webservers and deplo0y an application
• How to create Ansible Role and use it
• Using an ansible role in a playbook
• How to use Ansible Galaxy to download roles.
• Example – Install and use Jenkins roles from ansible-galaxy
Python
Introduction to Python:
Objective:
In this module, you will get a basic understanding of python programming, Virtual
environment, Package manager, version differences of python programming and detailed
knowledge about the python installation and environment setup for working with python.
Topic:
• Python programming history & features
• Python compiler and IDE installation
• Virtual Environment
• Pip – Package Manager
Hands-on:
How to set up an environment for python development.
Basics of Python:
Objective:
In this module, you will get a basic understanding of python Syntax and a detailed
understanding of Input/Output [I/O] operations, Variables, Operators Datatypes and Data
structure.
Topic:
• Python Syntax Overview, Indentation, comments
• Variable declaration
• Datatypes and data structure
o Primitive
o Non-primitive
• Operators in python
Hands-on:
How to write a basic Python code, variable declaration datatypes, and operators usage.
Program flow/ Data flow of Python:
Objective:
In this module, you will get a detailed understanding of conditional statements, looping,
control statements of python.
Topics:
• Conditional Statements
o if statement
o if … else statement
o if … elif… else statement
• Looping
o for loop
o for with else statement
o while loop
o while with else statement
• Control Statements
o break
o Continue
o pass
• Assert Statement
Hands-on:
How to use conditional, looping and control statements in python.
Function in Python:
Objective:
In this module, you will get a detailed understanding of writing function, the scope of
variables, function with arguments, keyword arguments, lambda functions and Modules in
python.
Topics:
• Syntax of Function
• Function with *args & **kwargs
• Scope of variables
• Lambda function with map, filter, reduce method
• DocString
• Modules and standard Modules
Hands-on:
How to create and use functions and different types of argument, lambda function, and
modules in python.
File Handling in Python:
Objective:
In this module, you will get a detailed understanding of file concepts like create, read, write,
update, delete operation of file with python.
Topic:
• File Opening modes
• Context Manager in python
• File Operations
o Open
o Create
o Read
o Write
o Update
o Delete
Hands-on:
How to create and use file operation in python.
Exception Handling in Python:
Objective:
In this module, you will get a detailed understanding of exception handling and creating
your own exception classes in python.
Topic:
• Types of Errors in python
• Exception handling with
o try … except
o try … except… finally
o try … except… else
• Multiple Exception
• Raising Exception
• User-defined Exception
Hands-on:
How to create and use built-in and user-defined exception handling in python.
Oops in Python:
Objective:
In this module, you will get a detailed understanding of Object-Oriented Programming
Concepts in python.
Topics:
• Oops Concepts with programming syntax
o Class
o Object
o Polymorphism
o Encapsulation
o Inheritance
• Types of Methods in python
Hands-on:
How to use Object-oriented programming concepts in python.
Core Concepts in Python:
Objective:
In this module, you will get a detailed understanding of iterators, generators, decorators, in
python.
Topics:
• Iterator
• Generator
• Decorator
Hands-on:
How to use core concepts and application of core concepts in python.
Comprehension in Python:
Objective:
In this module, you will get a detailed understanding of List, Dictionary comprehension and
specialized sorts in python.
Topics:
• Comprehensions
o List
o Nested List
▪ if statement
▪ if … else statement
▪ Nested if … else statement
• Dictionary
• Sorting
o List
o Dictionary
Hands-on:
How to use comprehensions and sorting in python.
Thread and DateTime in Python:
Objective:
In this module, you will get a detailed understanding of multi-threading concepts, datetime
module alone with sleep and execution of code in python.
Topics:
• Terms in threading
o process
o thread
o multithreading
o Time complexity
• Thread Life cycle
• Programming with Threading & Multithreading
• Synchronization
• Sleep and execution time of code
• DateTime module
Hands-on:
How to use threading and data time concepts in python.
Advanced data Structure/ collections in Python:
Objective:
In this module, you will get a detailed understanding of advanced data structures in python.
Topics:
• Deque
• namedtuple
• ChainMap
• Counter
• Ordered Dictionary
• Default Dictionary
Hands-on:
How to use advanced data structure in python.
MySQL with Python:
Objective:
In this module, you will get a detailed understanding of SQL statements and database
connection along with CRUD operation using python.
Topics:
• SQL statements & Operations
o Create
o Read
o Update
o Delete
• Python – SQL connector package installation
• Python with CRUD Operations
• Commit & Rollback
• SQL Related Exception Handling
Hands-on:
How to use and manipulate data in a database using python.
Network programming with Python:
Objective:
In this module, you will get a detailed understanding of Network programming, Client &
server concepts with python.
Topics:
• Terms and Basics of network programming
• The architecture of data transmission between sender and receiver using python
• Getting data from the remote server
• Client & Server-side programming
Hands-on:
How to use and networking module of python, data transmission between client to server
and server to client python.
Regular Expression with Python:
Objective:
In this module, you will get a detailed understanding of writing Regex with python.
Topics:
• Regex Syntax
o Quantifiers
o Metacharacters
o Special Sequences
o Sets
• Python re module
• Methods with regex usage
Hands-on:
How to use and write regex in python.
GUI programming with Python:
Objective:
In this module, you will get a detailed understanding of developing the GUI application using
the PyQt5 module with python.
Topics:
• Introduction
• Components and Events
• An Example GUI
• Widgets
• Layout Management
• Signals & Slots
• QMessagesBox, QDialog
• Database Handling
Hands-on:
How to develop a GUI application with PyQt5 and python.
API access with Python:
Objective:
In this module, you will get a detailed understanding of accessing open APIs using python.
Topics:
• Google Text to Speech
• Google Speech to Text
• OpenWeatherMap
Hands-on:
How to use open APIs using python.
DataScience with Python:
Objective:
In this module, you will get a Basic understanding of data science modules in python.
Topics:
• Pandas – Series and Dataframe
• Numpy
• Matplotlib
Hands-on:
How to use data science modules of python.
The project with Python:
Objective:
In this module, you are going to develop an application for own scenario.
Topics:
• Creating own application with any one of the frameworks
o Django App
o PyQt5 App
o Console oriented Core app
Azure
Terraform
Introduction to Terraform
• Introduction to terraform
• Infrastructure Automation
• Install Terraform
• Providers
• Resources
• Basic Syntax
Getting started with Terraform
• Introduction to Modules
• Module repositories
• First Basic Module
• The Module codes
• Main Terraform Code
• Using git repositories to save modules
Terraform: Writing in a more organized way
• Remote state
• Data Sources
• Templates
• Conditionals
• Built-in Functions
• Working with state files
• Outputs, count and Join Function
Terraform Integration
• Adding S3 backend
• Integration with Git
• Packer introduction
• Terraform with Packer
• Terraform with Jenkins
• Terraform Formatting and Remote State
• Terraform RandomID and S3 Buckets
Terraform Troubleshooting and Testing