Setting Up Minikube on an AWS EC2 Instance (t2.medium) - Step by Step Guide

Setting Up Minikube on an AWS EC2 Instance (t2.medium) - Step by Step Guide

Introduction:

Introduction: Minikube is a powerful tool for running Kubernetes clusters locally, allowing developers to easily test and develop applications in a Kubernetes environment. In this guide, we'll walk through the step-by-step process of installing Minikube on an AWS EC2 instance with a t2.medium type.

Note: This minikube has to be settup on t2.medium as it needs 2 VCpu for better performance and it also needs 4 GiB of RAM memory.

Prerequisites:

  • Ubuntu OS

  • sudo privileges

  • Internet access

  • Virtualization support enabled (Check with egrep -c '(vmx|svm)' /proc/cpuinfo, 0=disabled 1=enabled)

Step 1: Update System Packages

Update your package lists to make sure you are getting the latest version and dependencies.

sudo apt update

Step 2: Install Required Packages

Install some basic required packages.

sudo apt install -y curl wget apt-transport-https

Step 3: Install Docker

Minikube can run a Kubernetes cluster either in a VM or locally via Docker. This guide demonstrates the Docker method.

sudo apt install -y docker.io

Start and enable Docker.

sudo systemctl enable --now docker

Add current user to docker group (To use docker without root)

sudo usermod -aG docker $USER && newgrp docker

Now, logout (use exit command) and connect again.

Step 4: Install Minikube

First, download the Minikube binary using curl:

curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

Make it executable and move it into your path:

chmod +x minikube
sudo mv minikube /usr/local/bin/

Step 5: Install kubectl

Download kubectl, which is a Kubernetes command-line tool.

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

Check above image ⬆️ Make it executable and move it into your path:

chmod +x kubectl
sudo mv kubectl /usr/local/bin/

Step 6: Start Minikube

Now, you can start Minikube with the following command:

minikube start --driver=docker

This command will start a single-node Kubernetes cluster inside a Docker container.


Step 7: Check Cluster Status

Check the cluster status with:

minikube status

You can also use kubectl to interact with your cluster:

kubectl get nodes

Step 8: Stop Minikube

When you are done, you can stop the Minikube cluster with:

minikube stop

Optional: Delete Minikube Cluster

If you wish to delete the Minikube cluster entirely, you can do so with:

minikube delete

Conclusion:

Congratulations! You've successfully installed Minikube on an AWS EC2 instance (t2.medium). This setup provides a local Kubernetes environment for testing and development purposes. Feel free to explore Minikube further and start deploying and testing your Kubernetes applications.

Did you find this article valuable?

Support CodeAryan by becoming a sponsor. Any amount is appreciated!