DevOps Learning Hub | KodeKloud Labs | Prashant Gohel
Day 07 Change EC2 Instance Type
Initializing search
Kodekloud-Task-Tracker
KodeKloud Tasks
About
100 Days of Cloud (AWS)
100 Days of DevOps KodeKloud
Ansible
Cloud (AWS)
Docker
Git
Jenkins
Kubernetes
Linux
Terraform
DevOps Learning Hub | KodeKloud Labs | Prashant Gohel
Kodekloud-Task-Tracker
KodeKloud Tasks
About
100 Days of Cloud (AWS)
100 Days of Cloud (AWS)
AWS Day 01: Creating a Key Pair for Secure EC2 Access
AWS Day 02: Creating a Security Group for Controlled Network Access
AWS Day 03: Creating a Subnet Inside the Default VPC
Cloud (AWS) Day 04: Enable Versioning for S3 Bucket
Cloud (AWS) Day 05: Create GP3 Volume
Cloud (AWS) Day 06: Launch EC2 Instance
Cloud (AWS) Day 07: Change EC2 Instance Type
100 Days of DevOps KodeKloud
100 Days of DevOps KodeKloud
The Ultimate DevOps Command Reference (from 50 Days of DevOps)
DevOps Day 01: Creating a User with a Non-Interactive Shell
Day 002 Temporary User Setup with Expiry
Day 003 Secure Root SSH Access
Day 004 Script Execution Permissions
Day 005 SElinux Installation and Configuration
Day 006 Create a Cron Job
Day 007 Linux SSH Authentication
Day 008 Install Ansible
Day 009 MariaDB Troubleshooting
Day 010 Linux Bash Scripts
DevOps Day 11: Deploying a Java Application on Tomcat
DevOps Day 12: The Port Conflict Detective Story
DevOps Day 13: Securing Servers with an iptables Firewall
DevOps Day 14: The Multi-Server Troubleshooting and Standardization Challenge
DevOps Day 15: Deploying a Secure Nginx Web Server with SSL
DevOps Day 16: Building a High-Availability Stack with an Nginx Load Balancer
DevOps Day 17: PostgreSQL Database and User Management
DevOps Day 18: Graduating to Automation with Ansible for a LAMP Stack Deployment
DevOps Day 19: Hosting Multiple Websites on a Single Apache Server
DevOps Day 20: Mastering the Nginx + PHP-FPM Stack
DevOps Day 21: Creating a Central Git Repository
DevOps Day 22: Mastering the git clone Command
DevOps Day 23: Collaborative Git Workflows with Forks
DevOps Day 24: Managing Development with Git Branches
DevOps Day 25: The Complete Git Feature Branch Workflow
DevOps Day 26: Managing Multiple Git Remotes
DevOps Day 27: Safely Undoing Changes with git revert
DevOps Day 28: Targeted Code Integration with git cherry-pick
DevOps Day 29: Mastering the Pull Request Workflow
DevOps Day 30: Rewriting History with git reset --hard
DevOps Day 31: Managing Work-in-Progress with git stash
DevOps Day 32: Keeping History Clean with git rebase
DevOps Day 33: Resolving a Real-World Merge Conflict
DevOps Day 34: Automating Releases with Server-Side Git Hooks
DevOps Day 35: Setting Up a Docker Environment
DevOps Day 36: Deploying a Simple Nginx Container
DevOps Day 37: Transferring Files into a Running Docker Container
DevOps Day 38: Docker Image Management and Tagging
DevOps Day 39: Creating a Docker Image from a Running Container
DevOps Day 40: Modifying a Live Container with docker exec
DevOps Day 41: Creating a Custom Apache Image with a Dockerfile
DevOps Day 42: Creating Custom Docker Networks
DevOps Day 43: Deploying a Container and Exposing a Service
DevOps Day 44: Declarative Container Management with Docker Compose
DevOps Day 45: Debugging a Dockerfile with COPY Path Errors
DevOps Day 46: Deploying a Two-Tier Application with Docker Compose
DevOps Day 47: "Dockerizing" a Python Application from Scratch
DevOps Day 48: My First Pod in Kubernetes
DevOps Day 49: From Pods to Deployments - My First Kubernetes Application
DevOps Day 50: Managing Container Resources in Kubernetes
DevOps Day 51: Zero-Downtime Updates with Kubernetes Deployments
DevOps Day 52: Zero-Downtime Rollbacks in Kubernetes
DevOps Day 53: Troubleshooting a Multi-Container Pod in Kubernetes
DevOps Day 54: Shared Volumes in Multi-Container Pods
DevOps Day 55: Implementing the Kubernetes Sidecar Pattern
DevOps Day 56: Deploying a Scalable and Accessible Application in Kubernetes
DevOps Day 57: One-Off Tasks and Environment Variables in Kubernetes
DevOps Day 58: Deploying a Grafana Instance on Kubernetes
DevOps Day 59: Troubleshooting a Failing Kubernetes Deployment
DevOps Day 60: Deploying a Stateful Application with Persistent Storage
DevOps Day 61: Pre-requisite Tasks with Kubernetes Init Containers
DevOps Day 62: Managing Secrets in Kubernetes
DevOps Day 63: Deploying a Full Two-Tier Application on Kubernetes
DevOps Day 64: Troubleshooting a Failing Kubernetes Deployment
DevOps Day 65: Deploying a Configured Redis Cache on Kubernetes
DevOps Day 66: Deploying a Stateful Database on Kubernetes
DevOps Day 67: Deploying a Three-Tier Microservices App on Kubernetes
DevOps Day 68: Installing and Configuring a Jenkins CI/CD Server
DevOps Day 69: Managing Plugins and Conquering "Dependency Hell"
DevOps Day 70: Granular User Permissions with Matrix Authorization
DevOps Day 71: The CI/CD "Remote Control"
DevOps Day 72: Creating a Parameterized Build
DevOps Day 73: Automating a Multi-Server Log Collection Job
DevOps Day 74: Automating a Multi-Server Database Backup
DevOps Day 75: Distributed Builds with Jenkins Agent Nodes
DevOps Day 76: Configuring Job-Level Security
DevOps Day 77: Deploying a Static Website with a Jenkins Pipeline
DevOps Day 78: Conditional Deployments with Jenkins Pipelines
DevOps Day 79: Automating Deployment with Jenkins, Git Triggers & SCP Deployment
DevOps Day 80: Chained Builds and Downstream Jobs
DevOps Day 81: CI/CD Pipeline with Deployment and Test Stages
DevOps Day 82: Ansible Playbooks & Inventories - Testing on App Server 1
DevOps Day 83: Ansible Playbooks & File Management
DevOps Day 84: Copy Data to App Servers using Ansible
DevOps Day 85: Create Files on App Servers using Ansible
DevOps Day 86: Ansible Ping Module Usage (Password-less SSH)
DevOps Day 87: Ansible Install Package & Troubleshooting
DevOps Day 88: Ansible Blockinfile Module
DevOps Day 89: Ansible Manage Services
DevOps Day 90: Managing ACLs using Ansible
DevOps Day 91: Ansible Lineinfile Module & Web Server Automation
DevOps Day 92: Managing Jinja2 Templates Using Ansible
DevOps Day 93: Using Ansible Conditionals
DevOps Day 94: Create VPC Using Terraform
DevOps Day 95: Create Security Group Using Terraform
DevOps Day 96: Create EC2 Instance Using Terraform
DevOps Day 97: Create IAM Policy Using Terraform
DevOps Day 98: Launch EC2 in Private VPC Subnet Using Terraform
DevOps Day 99: Attach IAM Policy for DynamoDB Access Using Terraform
DevOps Day 100: Create and Configure Alarm Using CloudWatch Using Terraform
The Ultimate DevOps Terminology Guide (from 50 Days of DevOps)
Ansible
Ansible
Level 01
Level 01
Ansible Level 01 – Day 01: Troubleshoot and Create Ansible Playbook
Ansible Level 01 – Day 02: Create Ansible Inventory for App Server Testing
Ansible Level 01 – Day 03: Configure Default SSH User for Ansible
Ansible Level 01 – Day 04: Copy Data to App Servers using Ansible
Ansible Level 01 – Day 05: Create Files on App Servers using Ansible
Level 02
Level 02
Ansible Level 02 Day 01: Ansible Ping Module Usage
Ansible Level 02 Day 02: Ansible Install Package
Ansible Level 02 Day 03: Ansible Archive Module
Ansible Level 02 Day 04: Ansible Unarchive Module
Ansible Level 02 Day 05: Ansible Blockinfile Module
Level 03
Level 03
Ansible Level 03 Day 01: Creating Soft Links Using Ansible
Ansible Level 03 Day 02: Managing ACLs using Ansible
Ansible Level 03 Day 03: Ansible Manage Services
Ansible Level 03 Day 04: Ansible Lineinfile Module
Ansible Level 03 Day 05: Ansible Replace Module
Level 04
Level 04
Ansible Level 04 Day 01: Ansible Facts Gathering
Ansible Level 04 Day 02: Create Users and Groups
Ansible Level 04 Day 03: Managing Jinja2 Templates using Ansible
Ansible Level 04 Day 04: Setup HTTPD and PHP
Ansible Level 04 Day 05: Using Ansible Conditionals
Cloud (AWS)
Cloud (AWS)
Level 01
Level 01
Cloud (AWS) Level 1, Task 1: Creating an EC2 Key Pair
Cloud (AWS) Level 1, Task 2: Creating a Security Group
Cloud (AWS) Level 1, Task 3: Creating a GP3 EBS Volume
Cloud (AWS) Level 1, Task 4: Creating a VPC Subnet
Cloud (AWS) Level 1, Task 5: Allocating an Elastic IP
Day 06 Launch EC2 Instance
Day 07 Change EC2 Instance Type
Docker
Docker
Docker Level 1
Docker Level 1
Docker Certification: A Complete Walkthrough
Docker Day 1: Setting Up the Docker Environment
Docker Day 2: Running Your First Nginx Container
Docker Day 3: Deleting a Container
Docker Day 4: Copying Files and Diagnosing a Broken Host
Docker Day 5: The Case of the Connection Refused
Docker Level 2
Docker Level 2
Docker Level 2, Task 1: Image Management - Pulling and Tagging
Docker Level 2, Task 2: Granting Sudo-less Docker Access
Docker Level 2, Task 3: Creating an Image from a Container
Docker Level 2, Task 4: Modifying a Live Container with docker exec
Docker Level 2, Task 5: Building Custom Images with a Dockerfile
Docker Level 3
Docker Level 3
Docker Level 3, Task 1: Creating Custom Networks
Docker Level 3, Task 2: Persisting Data with Bind Mounts
Docker Level 3, Task 3: Exposing Container Services with Port Mapping
Docker Level 3, Task 4: Moving Images Between Hosts Without a Registry
Docker Level 3, Task 5: Graduating to Docker Compose
Docker Level 4
Docker Level 4
Docker Level 4, Task 1: Debugging a Broken Dockerfile
Docker Level 4, Task 2: Debugging a Broken docker-compose.yml File
Docker Level 4, Task 3: Deploying a Two-Tier Application with Docker Compose
Docker Level 4, Task 4: "Dockerizing" a Node.js Application from Scratch
Docker Level 4, Task 5: "Dockerizing" a Python Application from Scratch
Git
Git
Level 01
Level 01
Git Day 1: Creating a Central Bare Repository
Git Day 2: Cloning a Repository and Navigating Permissions
Git Day 3: Collaborative Development with Forks
Git Day 4: The Real World of Permissions
Git Day 5: Repository Cleanup with Branch Deletion
Git Certification: Passed with 100%
Level 02
Level 02
Git Level 2, Task 1: Initializing a Non-Bare Repository
Git Level 2, Task 2: Managing Development with Git Branches
Git Level 2, Task 3: The Complete Git Feature Branch Workflow
Git Level 2, Task 4: Managing Multiple Git Remotes
Git Level 2, Task 5: Safely Undoing Changes with git revert
Level 03
Level 03
Git Level 3, Task 1: Targeted Code Integration with git cherry-pick
Git Level 3, Task 2: Mastering the Pull Request Workflow
Git Level 3, Task 3: Rewriting History with git reset --hard
Git Level 3, Task 4: Cleaning the Working Directory with git clean
Git Level 3, Task 5: Managing Work-in-Progress with git stash
Level 04
Level 04
Git Level 4, Task 1: Clean History with git rebase
Git Level 04 Day 02: Repository Initialization and Controlled Branch Workflow
Git Level 04 Day 03: Resolving Merge Conflicts in a Shared Repository
Git Level 04 Day 04: Automating Release Tag Creation Using a Server-Side Hook
Git Level 04 Day 05: Setting Up a Central Git Repository with Master Branch Protection
Jenkins
Jenkins
Level 01
Level 01
Jenkins Level 1, Task 1: My First Jenkins Server Installation
Jenkins Level 1, Task 2: Managing Plugins and Conquering "Dependency Hell"
Jenkins Level 1, Task 3: Granular User Permissions with Matrix Authorization
Jenkins Level 1, Task 4: Organizing Jobs with Folders
Jenkins Level 1, Task 5: The CI/CD "Remote Control"
Level 02
Level 02
Jenkins Level 2, Task 1: Job Scheduling and Dashboard Organization with Views
Jenkins Level 2, Task 2: Creating a Parameterized Build
Jenkins Level 2, Task 3: The Multi-Branch Deployment Challenge
Jenkins Level 2, Task 4: Automating a Multi-Server Database Backup
Jenkins Level 2, Task 5: Automating a Multi-Server Log Collection Job
Kubernetes
Kubernetes
Level 01
Level 01
Kubernetes Level 01 Day 01: Deploying a Pod Using a Declarative Manifest
Kubernetes Level 01 Day 02: Managing Applications Using Deployments
Kubernetes Level 01 Day 03: Resource Isolation Using Namespaces and Targeted Pod Deployment
Kubernetes Level 01 Day 04: Controlling Resource Usage with Requests and Limits
Kubernetes Level 01 Day 05: Performing Zero-Downtime Rolling Updates on a Deployment
Kubernetes Level 01 – Day 06: Revert Deployment to Previous Version
Kubernetes Level 01 – Day 07: Deploy ReplicaSet in Kubernetes Cluster
Kubernetes Level 01 – Day 08: Schedule CronJobs in Kubernetes
Kubernetes Level 01 – Day 09: Run Jobs in Kubernetes
Kubernetes Level 01 – Day 10: Set Up Time Check Pod
Kubernetes Level 01 – Day 11: Resolve Pod Deployment Issue
Kubernetes Level 01 – Day 12: Update Deployment and Service In-Place
Kubernetes Level 01 – Day 13: Deploy Highly Available Pods with ReplicationController
Kubernetes Level 01 – Day 14: Resolve VolumeMounts Issue
Level 02
Level 02
Kubernetes Level 02 – Day 01: Kubernetes Shared Volumes
Kubernetes Level 02 – Day 02: Kubernetes Sidecar Containers
Kubernetes Level 02 Day 03: Deploy Nginx Web Server on Kubernetes Cluster
Kubernetes Level 02 Day 04: Print Environment Variables
Kubernetes Level 02 Day 05: Rolling Updates and Rolling Back Deployments
Kubernetes Level 02 Day 06: Deploy Jenkins on Kubernetes
Kubernetes Level 02 Day 07: Deploy Grafana on Kubernetes Cluster
Kubernetes Level 02 Day 08: Deploy Tomcat App on Kubernetes
Kubernetes Level 02 Day 09: Deploy Node App on Kubernetes
Kubernetes Level 02 Day 10: Troubleshoot Deployment Issues
Kubernetes Level 02 Day 11: Fix Issue with LAMP Environment
Level 03
Level 03
Kubernetes Level 03 Day 01: Deploy Apache Web Server
Kubernetes Level 03 Day 02: Deploy LAMP Stack on Kubernetes Cluster
Linux
Linux
Level 01
Level 01
Linux Level 1, Task 1: Creating a Custom User
Linux Level 1, Task 2: Managing Users and Groups Across Multiple Servers
Linux Level 1, Task 3: Creating a Secure Non-Interactive User
Linux Level 1, Task 4: Creating a User Without a Home Directory
Linux Level 1, Task 5: Managing Temporary User Accounts
Linux Level 1, Task 6: Targeted File Migration with find
Linux Level 1, Task 7: Disabling Direct Root SSH Login
Linux Level 1, Task 8: Creating Compressed Archives with tar
Linux Level 1, Task 9: Understanding and Setting File Permissions
Linux Level 1, Task 10: Advanced Permissions with Access Control Lists (ACLs)
Linux Level 1, Task 11: Automated Find and Replace with sed
Linux Level 1, Task 12: Secure File Transfer Between Servers with scp
Linux Level 1, Task 13: Securing cron with Access Control Files
Linux Level 1, Task 14: Changing the Default Boot Target
Linux Level 1, Task 15: Synchronizing Server Timezones
Linux Level 1, Task 16: Configuring the firewalld Firewall
Linux Level 1, Task 17: Setting User Resource Limits
Linux Level 1, Task 18: Permanently Disabling SELinux
Level 02
Level 02
Linux Level 2, Task 1: Automation with Cron Jobs
Linux Level 2, Task 2: Updating the Message of the Day (MOTD)
Linux Level 2, Task 3: Creating a Secure Collaborative Directory
Linux Level 02 Day 04: Modifying Text Safely with sed
Linux Level 02 Task 06: Using find to Identify and Quarantine Specific Files Safely
Linux Level 02 – Day 07: Install a Package
Linux Labs
Linux Labs
Linux Lab 1: Securing Infrastructure with IPTables
Linux Lab 2: Working With The Shell
Linux Lab 3: Linux Bash Prompt
Linux Lab 4: Exploring the Linux Kernel
Linux Lab 5: Linux Kernel, Boot & Filetypes
Linux Lab 8: Working With Shell 2 - Advanced Operations
Linux Lab 9: VI Editor
Linux Lab 10: Configuring DNS Resolution
Linux Lab 11: Network Basics & Troubleshooting
Linux Lab 12: User and Group Management
Linux Lab 13: Permissions and Ownership
Linux Lab 14: SSH and SCP - Secure Remote Access
Linux Lab 15: Cronjobs - Automating Tasks
Linux Lab 16: Systemd Services
Linux Lab 18: Filesystem Management
Terraform
Terraform
Terraform Level 1, Task 1: My First Step into Infrastructure as Code
Terraform Level 1, Task 2: Building a Virtual Firewall with Code
Terraform Level 1, Task 3: Building My First Cloud Network (VPC)
Terraform Level 1, Task 4: Defining a VPC with a Specific Network Range
Terraform Level 1, Task 5: Building a Dual-Stack (IPv4/IPv6) VPC
Terraform Level 1, Task 6: Provisioning a Static Public IP (Elastic IP)
Terraform Level 1, Task 7: Launching My First EC2 Instance
Terraform Level 1, Task 8: Creating Custom Server Templates (AMIs)
Terraform Level 1, Task 9: Provisioning Persistent Storage (EBS Volumes)
Terraform Level 1, Task 10: Data Protection with EBS Snapshots
Terraform Level 1, Task 11: Automated Monitoring with CloudWatch Alarms
Terraform Level 1, Task 12: Creating a Public S3 Bucket (The Modern Way)
Terraform Level 1, Task 13: Creating a Secure, Private S3 Bucket
Terraform Level 1, Task 14: Creating an AWS IAM User
Terraform Level 1, Task 15: Managing Permissions at Scale with IAM Groups
Terraform Level 1, Task 16: Defining Permissions as Code with IAM Policies
Terraform Level 1, Task 17: Provisioning a NoSQL Database (DynamoDB)
Terraform Level 1, Task 18: Creating a Real-Time Data Stream (Kinesis)
Terraform Level 1, Task 19: Creating a Messaging Hub (SNS Topic)
Terraform Level 1, Task 20: Centralized Configuration with AWS SSM Parameter Store
Terraform Level 1, Task 21: Centralized Logging with CloudWatch
Terraform Level 1, Task 22: Managing CloudFormation Stacks with Terraform
Terraform Level 1, Task 23: Provisioning an AWS OpenSearch Domain
Terraform Level 1, Task 24: Managing Secrets with AWS Secrets Manager
Terraform Level 1, Task 25: Modifying Live Infrastructure with Terraform
Terraform Level 1, Task 26: Linking Resources with aws_eip_association
Terraform Level 1, Task 27: Attaching an IAM Policy to a User
Terraform Level 1, Task 28: Modifying Infrastructure with Terraform (S3 Versioning)
Terraform Level 1, Task 29: Running AWS CLI Commands with Terraform
Terraform Level 1, Task 30: Safely Destroying Infrastructure
Terraform Level 1, Task 31: Safely Destroying Infrastructure
Terraform Level 1, Task 32: Safely Destroying Infrastructure (IAM Role)
Terraform Level 1, Task 33: Safely Destroying Infrastructure (AWS VPC)
Terraform Level 1, Task 34: Managing Data with aws_s3_bucket_object
Terraform Level 1, Task 35: Reusable Code with Input Variables
Terraform Level 1, Task 36: Provisioning a Security Group with Variables
Terraform Level 1, Task 37: Provisioning an Elastic IP with Variables
Terraform Level 1, Task 38: Provisioning an IAM User with Variables
Terraform Level 1, Task 39: Provisioning an IAM Role with Variables
Terraform Level 1, Task 40: Provisioning an IAM Policy with Variables
Day 07 Change EC2 Instance Type
Back to top