|
|
|
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.
|
|
| |
|
|
|