Courses Offered: SCJP SCWCD Design patterns EJB CORE JAVA AJAX Adv. Java XML STRUTS Web services SPRING HIBERNATE  

       

TERRAFORM, JENKINS, DOCKER & KUBERNETES Course Details
 

Subcribe and Access : 5200+ FREE Videos and 21+ Subjects Like CRT, SoftSkills, JAVA, Hadoop, Microsoft .NET, Testing Tools etc..

Batch Date: Dec 1st @7:00AM

Faculty: Mr. Chaitanya (13+ Yrs Of Exp,..)

Duration: 30 Days

Venue :
DURGA SOFTWARE SOLUTIONS,
Flat No : 202, 2nd Floor,
HUDA Maitrivanam,
Ameerpet, Hyderabad - 500038

Ph.No: +91 - 8885252627, 9246212143, 80 96 96 96 96

Syllabus:

Terraform

1. Introduction to Infrastructure as Code (IaC)

  • What is IaC
  • Benefits of IaC
  • Configuration Management vs IaC vs Orchestration
  • Why Terraform? Features & Use Cases
  • Terraform Architecture & Workflow (Write → Plan → Apply)

2. Terraform Installation & Setup

  • Installing Terraform (Windows, Linux, macOS)
  • Terraform CLI basics
  • Terraform Working Directory (.tf files, .tfstate, .terraform/)
  • Providers, Resources, and Data Sources
  • Authentication with Cloud Providers (AWS, Azure, GCP)

3. Terraform Language (HCL2)

  • Terraform Configuration Syntax
  • Variables & Outputs
  • Local Values
  • Terraform Expressions
  • Conditional Expressions
  • Functions (string, numeric, collection, formatting)

4. Providers & Provisioners

  • Provider Configuration
  • Version Constraints
  • Multiple Provider Configurations
  • Provisioners: local-exec, remote-exec
  • Connection blocks
  • Why provisioners should be avoided (best practices)

5. Managing State

  • Purpose of Terraform State
  • State Locking
  • State File Structure
  • terraform show/state/pull
  • Remote State Backends (S3, Azure Blob, GCS)
  • Remote State with DynamoDB state locking
  • Sensitive data protection in state files
  • State Import & State Manipulation
  • terraform import
  • terraform state mv, rm, list, show

6. Terraform Modules

  • What are Modules?
  • Creating Reusable Modules
  • Module Versioning
  • Publishing Modules
  • Using Public Terraform Registry Modules
  • Module Composition & Best Practices
  • Root & Child Modules
  • Complex module structures in real projects

7. Advanced Terraform Configuration

  • Workspaces (dev, qa, prod)
  • Dynamic Blocks
  • Data Sources
  • Resource Meta-Arguments (depends_on, lifecycle, count, for_each)
  • Tainting Resources
  • Null Resources
  • Terraform Graph & Visualization
  • Handling Complex Infrastructure

8. Terraform Cloud & Terraform Enterprise

  • Terraform Cloud Features
  • Workspaces, Projects & Variables
  • Remote Runs
  • VCS Integration
  • Sentinel Policy as Code
  • Terraform Enterprise Architecture
  • Cost Estimation

9. Terraform with Major Cloud Providers

AWS :

  • VPC, Subnets, Route Tables
  • EC2, ALB/NLB, ASG, EKS
  • RDS, DynamoDB, IAM

10. Terraform with On-Prem & Other Providers

  • VMware vSphere
  • Kubernetes Provider
  • Helm Provider
  • GitHub Provider
  • Vault Provider
  • Cloudflare Provider
  • Network Providers (Cisco, Palo Alto, F5)

11. CI/CD Integration

  • Terraform in Jenkins Pipelines
  • Terraform with GitHub Actions
  • Terraform with GitLab CI
  • Pre-Commit Hooks
  • Terratest

12. Testing & Validating Terraform Code

  • Terraform validate, fmt, plan
  • Policy Enforcement (OPA, Sentinel)
  • Terratest
  • Checkov, TFSec, Terrascan, KICS, Snyk IaC

13. Security & Compliance

  • Secrets Management (Vault, SSM, KMS)
  • IAM Best Practices
  • Secure State Management
  • Network Security Controls
  • Compliance as Code
  • Security Scanning Tools

14. Optimization & Best Practices

  • Managing Large Terraform Projects
  • Standard File/Folder Structures
  • State Drift Minimization
  • Using for_each vs count
  • Dependency Optimization
  • Cost Optimization Strategies

Jenkins

1. Introduction to Jenkins

  • What is CI/CD?
  • Role of Jenkins in DevOps
  • Jenkins architecture
  • Master/Agent (Node) concepts
  • Understanding Jenkins distributions (LTS, Weekly)

2. Jenkins Installation & Setup

  • Install Jenkins on Windows, Linux, Docker, Kubernetes
  • Java installation & configuration
  • Setting up Jenkins as a service
  • Initial admin setup & unlocking Jenkins

3. Jenkins UI Overview

  • Dashboard overview
  • Managing jobs
  • Build history
  • Plugin manager
  • User management & credentials
  • Global tools configuration (JDK, Git, Maven, Docker, Node, Python)

4. Jenkins Jobs / Projects

  • Freestyle jobs
  • Parameterized jobs (String, Choice, Boolean, File)
  • Upstream & downstream jobs
  • Distributed builds

5. Jenkins Plugins

  • Git plugin, Pipeline plugin, Blue Ocean, SSH plugin, Docker plugin
  • Credentials Binding, Email-ext, Slack Notification
  • GitHub/GitLab Integration, SonarQube, Nexus, Artifactory
  • Kubernetes plugin, Config File Provider, RBAC plugin
  • OWASP Dependency Check plugin

6. Jenkins Pipelines

Declarative Pipeline

  • Syntax & structure, Stages/Agent/Options
  • Tools section, Parameters, When conditions
  • Matrix pipeline, Retry, Timeout, Timestamps
  • Parallel stages, Input approvals

Jenkinsfile

  • Creating Jenkinsfile
  • Pipeline-as-Code
  • Storing Jenkinsfile in Git repo
  • Library functions

7. Source Code Management (SCM)

  • Git basics
  • GitHub, GitLab, Bitbucket integration
  • Webhooks & polling
  • Multi-branch pipelines
  • Organization folders

8. CI/CD Pipeline with Build Tools

  • Maven/Gradle integration
  • Snapshot vs release build
  • Test reports

9. Continuous Deployment (CD)

  • Deploy to servers using SSH
  • File transfers, service restarts
  • Rolling deployments
  • Deploy to AWS, Azure, GCP

10. Jenkins Security

  • RBAC
  • Matrix permissions
  • Credentials management
  • Vault integration
  • Enabling HTTPS
  • Hardening Jenkins

11. Advanced Concepts

  • Shared Libraries
  • Groovy scripts
  • Custom pipeline functions
  • Jenkins REST API
  • Blue Ocean
  • GitHub PR build triggers

DOCKER

Docker & Docker Swarm Orchestration

  • Introduction to Containers & Docker
  • Docker architecture & Docker repositories
  • Pull, Create & Upload Docker images
  • Using Dockerfile and Docker Compose
  • Understanding Docker Networks
  • Understanding Docker Volumes
  • Creating Docker cluster using Docker Swarm
  • Docker Swarm Stacks and Container Placement
  • Docker Swarm Node Availability
  • Docker Swarm Rolling Updates
  • Docker Swarm secrets and Container healthcheck
  • Introduction to Kubernetes
  • Deploying PODS, Services, Deployments.

KUBERNETES

Introduction to Kubernetes

  • Understanding Container Runtime Environments.
  • Working with YAML files for creating manifests.
  • Deploying Docker and understanding Docker components like Engine, Networks, Images & Registries.
  • Creating custom container images with Dockerfile
  • Why Kubernetes & Understanding Kubernetes architecture and Components.
  • Understanding the Kubernetes Component Connectivity.
  • Studying significance of API-Server, ETCD, Kube-Scheduler, Controllers, Kubelet & Kube-Proxy.
  • Understanding Kubernetes High Availability.

Deploying & Managing Kubernetes using KOPS

  • What is Kubernetes Operations (KOPS)?
  • Deploying Kubernetes Production Grade Kubernetes Cluster with on AWS with KOPS.
  • Understanding components of KOPS.
  • Scaling the Kubernetes Cluster using KOPS.
  • Manipulating KOPS configuration for reducing the bill.
  • Accessing Kubernetes cluster with Kubeconfig
  • Running Kubernetes basic cluster commands.

Working with Kubernetes POD’s & Deployments

  • Running Kubectl Commands vs. Deploying Manifests
  • Overview about POD, Deployment, ReplicaSet, Service & Namespaces.
  • Deploying, Managing & Troubleshooting PODs.
  • Deep dive through POD, POD Components, POD-Sidecar, kube-scheduler life cycle.
  • Managing PODs with EXEC, port-forwarding, POD Metadata &PODEnvironment variables.
  • Disadvantages of running PODS and Intro to Deployments.
  • Deep dive with Deployments, Replica Set & Replication Controller.
  • Differences and use cases of Replica Set & Daemonset.

Creating and Integrating Kubernetes Services

  • Understating Kubernetes Service and its importance.
  • Deep dive on Kubernetes Services and understanding Traffic Flow.
  • Creating ClusterIP, NodePort, LoadBalancer & Headless Service.
  • Understanding & Creating Liveness & Readiness Probes.
  • Understanding and Creating Ingress Controllers and Ingress Services.
  • Configure AWS LoadBalancer with Ingress controllers.

Kubernetes Advance Scheduling

  • Understanding Labels & Annotations
  • Configuring Labels & Annotations at Node & PODs.
  • Understanding how Taints and Tolerations work.
  • Configuring Node Taints and POD Tolerations
  • Understanding and Configuring Node Affinity.
  • Understanding and Configuring POD Affinity.

Storage with Kubernetes

  • Understanding Kubernetes Persistence and Non-Persistent Storage.
  • Creating non-persistent volumes - emptydir, gitrepo & host-path.
  • Deep dive in to Kubernetes Persistence Volumes (PV).
  • Creating Persistent Volume Claims (PVC) with Persistence Volumes.
  • Understanding Kubernetes Storage Classes and Dynamic VolumeProvisioning.

Kubernetes ConfigMaps & Secrets

  • Passing command-line variables containers.
  • Setting environment variables for containers.
  • Intro to ConfigMaps.
  • Decoupling configuration with ConfigMap
  • Working with sensitive data in Kubernetes.
  • Creating and using Secrets in Kubernetes.

Securing Kubernetes Cluster

  • How authentication works in Kubernetes.
  • Deepdive into Kubernetes Namespaces.
  • Configuring user access to the cluster.
  • Creating and working with service accounts.
  • Understanding RBAC in Kubernetes.
  • Creating Role and Role Bindings.
  • Creating ClusterRoles and ClusterRoleBindings.
  • Understanding Blue-Green Deployments & Rolling Updates

Troubleshooting & Updating Kubernetes Cluster

  • Working with logs in Kubernetes.
  • Working with Master and Worker Node Failure.
  • Find and retrieve information about the cluster components.
  • Performing Rolling Update with KUBECTL with no downtime
  • challenges with KUBECTL rolling updates.
  • Running KUBECTL cheat sheet commands.

Kubernetes Jobs & Cronjobs

  • Understanding differences between Job & Cronjobs
  • Creating a Job and understanding the attributes.
  • Use cases for Jobs.
  • Scheduling with Cron Jobs.
  • Use cases for Cron Jobs.

Kubernetes with Rancher & K3S

  • Understanding Rancher & Components
  • Deploying Racher and access dashboards.
  • Deploy On-Prem Kubernetes Cluster with Rancher
  • What is K3S?
  • Deploying Kubernetes Cluster with K3S application.
  • Advantages of K3S

POD Level Security with Network Policies

  • Understanding Kubernetes Network Policies.
  • Restricting and Allow Traffic between Pods.
  • Allow & Restrict traffic between Namespaces.
  • Restricting & Allow traffic based on Application Ports.

Service Mesh with Istio

  • What is Istio & What is the purpose?
  • Understanding Istio Architecture.
  • Deploy Istio on Kubernetes Cluster.
  • Enable Istio on namespace and deploy application
  • Checking Sidecars, Kiali, Jaeger
  • Deploying VirtualService & Gateways

Monitoring & Logging & Cluster Maintenance

  • Monitoring Cluster Components.
  • Working with Logs and application logs.
  • Performing cluster upgrade.
  • Backup and Restore of Cluster.
  • Overview about Prometheus monitoring.
  • Deploying Prometheus and Grafana on Kubernetes.
  • Creating dashboards for monitoring.
  • Understanding Alert Manager.

Working with AWS Elastic Kubernetes Services (EKS)

  • Understanding AWS EKS Architecture
  • Deploying workloads on EKS Cluster.
  • Adding & Removing resources to the cluster.
  • RBAC on AWS EKS.

Helm Package Manager

  • Understanding & Installing Helm 3
  • Creating Helm Chart and understanding folder structure.
  • Working with Values.yaml file.
  • Creating custom charts for Nginx & EFS Provisioner.
  • Creating & linting Helm Packages.
  • Understanding Helm Chart Repositories.
  • Downloading & Installing applications for Helm Repositories.

CI/CD Tools & GitOps Kubernetes Applications

  • Jenkins & Azure DevOps Overview
  • Installing Jenkins and installing necessary plugins.
  • Integrating Jenkins with Kubernetes Cluster.
  • CI/CD with Jenkins Pipelines.