Course Overview
Course Content
- Overview of all basic commands
- Vim editor modes
- Filesystem hierarchy – Basic topics
- File and directories creation
- Grep
- Filter commands (head, tail, more, less)
- Creating users and groups
- Important files related
- Modifying, deleting users and group
- Linux permissions
- Basic permissions overview
- Software management
- Yellowdog update modifier(yum)
- Yum commands
- Different run levels
- Services and daemons
- Why Cloud and What is Cloud Computing?
- Identify the features and benefits of cloud computing
- Different types of Cloud Computing deployment model
- Public Cloud, Private Cloud, Hybrid Cloud
- Virtualization – An essential in cloud
- Virtualization in the Cloud model
- Different types of virtualization
- Hypervisor – Benefits
- Different types of services and its difference in Cloud computing
- IaaS, PaaS, SaaS
- Importance of scaling in cloud computing
- Different types of scaling and its applications
- Issues we overcome using cloud and applications
- Cost model that we use in cloud computing
- Describe the features of AWS
- The features of the AWS Marketplace
- Describe the features of Amazon Compute Services
- Describe the features of Amazon Storage Services
- Describe the features of Amazon Network Services
- Describe the features of Amazon Database services
- Describe various services in AWS
- Global Infrastructure – Regions and Availability Zones
- Create a free tier account in AWS and onboarding
- Introduction AWS management console
- Hands-on
- Protect your AWS with the different authentication system
- Password policies set for users
- AWS User Account and Groups in detail
- Creating custom policies in AWS
- Introduction about Roles and their use
- Creating Roles and associating policies
- Creating programmatic access and management console access for users
- Associating policies to the user and groups
- Hands-on
- Describe AMI and AWS Marketplace templates
- Launch a basic EC2 instance
- Different types of Instances Reserved, On-demand, Spot, Dedicated
- Security groups and tags for EC2 instance
- Public key – Private key introduction and protecting EC2 with keys
- Attaching and detaching EBS volumes
- Launch an ec2 instance from an AMI
- Creating custom AMI and working with a different region
- Make use of Amazon EBS volume and create snapshots
- Manage the configuration of your application
- Deploying a new instance from the created AMI
- Hands-on
- Introduction to Amazon Virtual Private Cloud (VPC)
- VPC Advantages and understanding IP addressing CIDR
- Default and Non-default VPC
- Different Components in VPC
- Describe, create, and manage Amazon Virtual Private Cloud
- Amazon VPC, Private Subnet, and Public Subnet
- AWS Networking, Security Groups, and Network ACLs
- Configuration and management of VPN connectivity
- Subnet and Subnet Mask
- Hands-on
- Knowledge of Cloud watch – A monitoring service
- Create and Configuring Monitoring services
- How to perform Setting thresholds and Configuring actions
- Creating a cloud watch alarm
- Getting statistics for ec2 instances
- Monitoring other AWS services
- Configuring Notifications
- Integrating cloud watch with Autoscaling
- Hands-on
- An understanding of DevOps and the modern DevOps toolsets
- The ability to automate all aspects of a modern code delivery and deployment pipeline using:
- Source code management tools – CVS, Git
- Build tools – Apache ant, Maven
- Test automation tools – JUnit
- Continuous Integration Tools – Jenkins, Team City
- Configuration management tools – Chef, Puppet, Ansible
- Hands-on
- Introduction to Virtual machine architecture
- Azure Virtual Machine – an overview
- Understanding different families of virtual machines
- Understanding the plans and costs of virtual machines
- Creating a virtual machine
- Connecting the virtual machine remotely
- Understanding VM Availability
- Understanding and setting virtual machine monitoring
- Virtual Machine scale sets (VMSS)
- Creating Windows and Linux virtual machines
- Hands-on
- Creating an Instance Using the Developers Console
- Accessing an Instance Using the Developers Console
- Deleting an Instance Using the Developers Console
- Creating an Instance Using gcloud
- Instance Attributes
- Accessing an Instance Using gcloud
- Deleting an Instance Using gcloud
- Creating an Instance Programmatically
- Creating an Instance Using a Service Account
- Selecting an Access Mode
- Cleaning Up
- Hands-on
- A Short Networking Primer
- Network Addresses and Routing
- Transport Control Protocol (TCP)
- The Domain Name System (DNS)
- Hypertext Transfer Protocol (HTTP)
- Load Balancing
- Firewalls
- Default Networking
- Configuring Firewall Rules
- Configuring Load Balancing
- Reserving External IP Addresses
- Configuring Networks
- Understanding Networking Costs
- Understanding Routing
- Selecting an Access Mode
- Hands-on
- Startup Scripts
- cloud compute
- Literal-Value Approach
- Local-File Approach
- Cloud-Storage Approach
- Publicly Available Approach
- API Approach
- Custom Images
- Creating a Custom Image
- Using a Custom Image
- Metadata
- Metadata Server
- Metadata Entries
- Project Metadata
- Instance Metadata
- Data Formats
- Default Versus Custom
- Project-Level Custom Metadata
- Instance-Level Custom Metadata
- wait_for_change URL parameter
- Hands-on
- Knowing about Version control
- Git – A CLI
- Essentials of GIT in Industry
- How to setup GIT
- Installing Git
- First-Time Git Setup
- Getting a Git Repository
- 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
- Upstaging a Staged File
- In modifying 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 their Usage
- Remote Branches – create and delete
- Rebasing
- Git workflows
- Git cheat sheet
- Hands-on
- Essentials of Continuous Integration
- An example scenario where CI is used
- Know about Jenkins and its architecture in detail
- Jenkins tool Management in detail
- Installing Jenkins
- Post-installation setup wizard
- Unlocking Jenkins
- Customizing Jenkins with plugins
- Creating the first administrator user
- Know about User management in Jenkins
- Authentication
- Jenkin’s own database user creation
- Options to enable integration with LDAP
- Authorization
- Matrix-based authorization
- Project-based authorization
- Overview of Maven
- Maven project structure
- Maven plugins
- Project Object Model (POM) – the fundamental unit of work in the Maven project
- Maven build lifecycle
- Adding external dependencies to Maven 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, triggering another build, publishing reports, etc.
- Adding a slave node to Jenkins
- Building Delivery Pipeline
- Notification settings in Jenkins
- Plugin management in Jenkins
- Hands-on
- Introduction
- 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 Images 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
- Hands-on
- Introducing Ansible – A configuration management tool
- Basics / What Will Be Installed
- Understanding Ansible architecture
- Control Machine Requirements
- Managed Node Requirements
- Inventory
- Hosts and Groups
- Host Variables
- Group Variables
- Learn various Ansible Modules
- How to use ad-hoc commands
- Parallelism and Shell Commands
- File Transfer
- Managing Packages
- Users and Groups
- Deploying From Source Control
- Managing Services
- Introduction to the YAML script
- Playbook
- About Playbooks
- Playbook Language Example – YAML
- How to Write Playbooks
- Tasks in Playbooks
- Understanding various tasks in the playbook
- Introduction to Handlers and Variables
- Learn about using handlers, variables in the playbook
- Become (Privilege Escalation)
- Roles
- Role 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
- Writing a playbook to install and configure web servers and deplo0y an application
- How to create Ansible Role and use it
- Using an ansible role in the playbook
- How to use Ansible Galaxy to download
- Example – Install and use Jenkins roles from ansible-galaxy
- Hands-on
- Create your own functions
- Functions Parameters
- Variable Arguments
- Scope of a Function
- Function Documentation
- Lambda Functions & map
- Exercise with functions
- Create a Module
- Standard Modules
- Exceptions Handling
- Errors
- Exception handling with try
- Handling Multiple Exceptions
- Writing your own Exception
- Hands-on