AWS DevOps Course Syllabus
AWS Course Syllabus
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
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,
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.
- Open AWS free tier account.
- Setup payment methods and billing preferences.
- Set alarm for free tier usage
Virtual Private Cloud
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
- 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.
- Create and configure VPC, Subnets, Internet gateway, and Route Tables.
- Create NAT Gateway, NAT instances, VPC Peering, Endpoints.
- Different between NACL and Security groups
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,
- 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.
- 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.
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 Infrequent Access
- Standard Intelligent Tier
- S3 Glacier
- S3 Glacier Deep
- 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
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.
- 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 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
- Register your Domain name
- Create recordset and apply a routing policy
- Configure Health check for your Load balancer or instance.
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
- Create distribution for your website. Block a few country users viewing your website. Invalidate the previous cache and create a new one.
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,
- 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
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,
- 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 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
- Create and insert contents into the DynamoDB table. Configure and manage multi-region replication.
Monitoring (Cloud Trail & Cloud Watch)
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 is monitoring to fetch the logs and perform some action accordingly. There are two types of monitoring options available. Basic and detailed monitoring. You will learn to create logs and metrics and events. It triggers some action when an event occurs. Topics involved in cloud watch are,
- Create a cloud watch event to start a new instance when CPU utilization is high.
- Set alarm for the events and send notification
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
- Create and send a notification to the users
- Create and send messages using standard and FIFO messaging queue
Design and Architecture
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
- Cost optimization
- Performance efficiency
DevOps Course Syllabus
Introduction to DevOps (Duration: 1Hr)
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
- 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
A brainstorming session on the trends in current IT industries
DevOps on Cloud (Duration: 2Hrs)
This session will help you understand how DevOps is currently being used on cloud infrastructure by automating the entire setup. Learn cloud setup helps faster releases, fewer software failures and how trendy it is.
- 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
- How to a setup AWS account
- Various AWS services for DevOps – An overview
- DevOps using AWS – Demo
GIT – A version control tool (Duration: 5Hrs)
This session will help you understand why the version control system streamlines the development of working with different people and makes very easy to collaborate on projects.
- Knowing about Version control
- Git – A CLI
- Essentials of GIT in industry
- How to setup GIT
- Working with various commands in GIT
- 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
- Viewing the Commit History
- Limiting Log Output
- Using a GUI to Visualize History
- Undoing Things
- Changing Your Last Commit
- Unstaging a Staged File
- Unmodifying a Modified File
- 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
- 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
- Git workflows
- Git cheat sheet
- Recording Changes to the Repository
- 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 (Duration: 8 Hrs)
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.
- 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
- Jenkins own database user creation
- Options to enable integration with LDAP
- Matrix-based authorization
- Project-based authorization
- 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
- 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.
- Adding a slave node to Jenkins
- Building Delivery Pipeline
- Notification settings in Jenkins
- Plugin management in Jenkins
- Installing Jenkins
- Post-installation setup wizard
- Unlocking Jenkins
- Customizing Jenkins with plugins
- 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 (Duration: 8Hrs)
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.
- Real-world Shipping Transportation Challenges
- Introducing Docker and its technology
- Understanding of Docker images and containers
- Working with container
- How to Share and copy a container
- Container Life Cycle
- How to use Base Image and customize
- Creation of Docker File
- How to Publish Image on Docker Hub
- Introduction to Docker Networking
- Network Types in docker technology
- Docker Container Networking
- Docker Compose – An introduction
- Docker Swarm – An introduction
- Use Docker Compose to create PHP, WordPress, MySQL
- How to Start Containers on a Cluster with Docker Swarm
- Creating and Scaling an application in Docker swarm
- 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 (Duration: 4 Hrs)
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.
- 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
- 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 (Duration: 9Hrs)
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.
- Introducing Ansible – A configuration management tool
- Basics / What Will Be Installed
- Understanding Ansible architecture
- Control Machine Requirements
- Managed Node Requirements
- Hosts and Groups
- Host Variables
- Group Variables
- Learn various Ansible Modules
- How to use Adhoc commands
- Parallelism and Shell Commands
- File Transfer
- Managing Packages
- Users and Groups
- Deploying From Source Control
- Managing Services
- Introduction to YAML script
- About Playbooks
- Playbook Language Example – YAML
- How to Write Playbooks
- Tasks in Playbooks
- Understanding about various tasks in the playbook
- Introduction to Handlers and variables
- Learn about using handlers, variables in the playbook
- Become (Privilege Escalation)
- Role of Directory Structure
- Using Roles
- Role Duplication and Execution
- Role Default Variables
- Role Dependencies
- Role Search Path
- Ansible Galaxy
- Including and Importing
- Includes vs. Imports
- Importing Playbooks
- Including and Importing Task Files
- Including and Importing Roles
- 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