How to install Devtron Over MiniKube Cluster

Written by abhinavd26 | Published 2021/06/25
Tech Story Tags: kubernetes | devtron | minikube | k8s | kubernetes-cluster | kubernetes-cluster-install | devops | minikube-cluster

TLDRvia the TL;DR App

Yes! You read it right. Devtron can also be installed over the Minikube cluster, now!  We have been receiving multiple requests from the community to access Devtron on Minikube. In this blog, we will discuss Minikube, its usage and also walk you through the complete installation process of Devtron over the Minikube cluster.
Minikube is a tool that helps you run Kubernetes on your local server over a single node cluster. It is platform-agnostic and can be easily installed in your local systems (Windows, MacOS, Linux). 

Prerequisites

System Requirements

  • 2 CPUs+ cores
  • 4GB+ of free memory
  • 20GB+ free disk space

Cluster Setup in Local System

To install Devtron, the prerequisite is to have a Kubernetes cluster. We can set up a Kubernetes cluster in our local system using minikube and then manage the pods using kubectl or other Kubernetes command-line tools. Please refer to the documentation for detailed instructions to install minikube in your respective systems.
After installation, please execute the following command - 
minikube start --cpus 4 --memory 8192
The command will start a minikube cluster with 4 CPUs and 8192 memory. We need to provide the extra flags because by default it only takes 2 CPUs and 2048 memory which can be seen from here and it is not sufficient for Devtron installation.

Devtron Installation

As we have successfully installed a minikube cluster in our system, we are ready to install Devtron over it. The installation of Devtron is pretty straightforward. We can use helm3, helm2, and kubectl to install Devtron. I will be using helm3 for installation. You can refer to the documentation for more details of installation.
Installation using helm3
Before getting started with Devtron installation, please make sure helm3 is successfully installed on your system. If it is successfully installed, please follow the following steps to install Devtron.
helm repo add devtron https://helm.devtron.ai
helm install devtron devtron/devtron-operator --create-namespace --namespace devtroncd --set installer.modules={cicd}
The above install command might take around 30 minutes to complete the installation. It will download the inception pod, which in the background will trigger the installation of Devtron.
To confirm the installation has started or not, please use the following command - 
kubectl get pod -n devtroncd
The expected output should resemble the following pod name - 
Inception-654db887f5-hdnbb
The above pod is responsible for installing Devtron over the cluster. It will launch multiple other pods within 20-30 minutes of the time interval.
To check the installation status please run the following command -
kubectl -n devtroncd get installers installer-devtron -o jsonpath='{.status.sync.status}'
If the installation is still in progress, it will print
Downloaded
, and if it is completed,
Applied
is printed.
After the successful completion of installation, we can move ahead to activate the dashboard URL and retrieve login credentials, to begin with, Devtron. For the dashboard URL, we have to use the concept of tunneling. In a separate terminal, please run the following command - 
minikube tunnel
It will provide a temporary External IP address to access the
devtron-service
, which can be seen from the following command - 
kubectl get svc -n devtroncd
Now as we have got the External IP, we can use that IP to access the Devtron dashboard. Please copy and paste the IP in your preferred browser.
As we are able to access the dashboard, we need to find the credentials to login into the dashboard and start using it. For admin login use username as
admin
and for password run the following command -
kubectl -n devtroncd get secret devtron-secret -o jsonpath='{.data.ADMIN_PASSWORD}' | base64 -d
The above command will print a string that can be used as a password to login into the application.
Tada! We have successfully installed Devtron in our local system over the minikube cluster. Feel free to leave your doubts, thoughts in the comment section.
For more detailed information about the installation of Devtron in the Kubernetes cluster please refer to the official documentation.

Written by abhinavd26 | Democratizing kubernetes adoption 🚀 | DevOps & Cloud 👨🏻‍💻 | Django ❤️ | Tech Blogger 🔥| 🏡 in containers 🐳 at ☁️
Published by HackerNoon on 2021/06/25