Install Modern Kubernetes Dashboard

Prerequisites

Make sure to meet all the requirements for installing Modern Kubernetes Dashboard.


1. Add Helm Repo

Add the Devtron Helm repository to pull the necessary charts

helm repo add devtron https://helm.devtron.ai

2. Update Helm Repo

Update the Helm repo to ensure you are using the latest version.

helm repo update devtron

3. Install Dashboard

Having a Multi-Arch Cluster?

If you wish to install Devtron on clusters with multi-architecture nodes (ARM and AMD), append the below Devtron installation command with --set installer.arch=multi-arch.

For EKS, AKS, GKE Users

helm install devtron devtron/devtron-operator \
--create-namespace --namespace devtroncd

For Minikube, MicroK8s, Kind, K3s Users

Click the relevant tab given below to get the command:

To install on Minikube/MicroK8s/Kind/ cluster, run the following command:

helm install devtron devtron/devtron-operator \
--create-namespace --namespace devtroncd \
--set components.devtron.service.type=NodePort 

For Cloud VM Users (AWS EC2, Azure VM, GCP VM)

It is recommended to use Cloud VM with 2vCPU+, 4GB+ free memory, 20GB+ storage, Compute Optimized VM type, and Ubuntu Flavoured OS.

First, create a MicroK8s Cluster:

sudo snap install microk8s --classic --channel=1.22
sudo usermod -a -G microk8s $USER
sudo chown -f -R $USER ~/.kube
newgrp microk8s
microk8s enable dns storage helm3
echo "alias kubectl='microk8s kubectl '" >> .bashrc
echo "alias helm='microk8s helm3 '" >> .bashrc
source .bashrc

Then use these commands after setting up MicroK8s:

helm install devtron devtron/devtron-operator \
--create-namespace --namespace devtroncd \
--set components.devtron.service.type=NodePort 

4. Get Dashboard URL

For EKS, AKS, GKE Users

Run the following command to get the dashboard URL:

kubectl get svc -n devtroncd devtron-service -o jsonpath='{.status.loadBalancer.ingress}'

Assuming you have an EKS cluster, you might get a similar message as shown below:

[test2@server ~]$ kubectl get svc -n devtroncd devtron-service -o jsonpath='{.status.loadBalancer.ingress}'
[map[hostname:aaff16e9760594a92afa0140dbfd99f7-305259315.us-east-1.elb.amazonaws.com]]

here, hostname aaff16e9760594a92afa0140dbfd99f7-305259315.us-east-1.elb.amazonaws.com is the Loadbalancer URL at which you can access the Devtron dashboard.

For Minikube, MicroK8s, Kind, K3s Users

To access the dashboard on Minikube cluster, run the following command:

minikube service devtron-service --namespace devtroncd

This will directly open the dashboard URL on your browser

For Cloud VM Users (AWS EC2, Azure VM, GCP VM)

Get devtron-service port number using the following command:

kubectl get svc -n devtroncd devtron-service -o jsonpath='{.spec.ports[0].nodePort}'

The dashboard URL will be: http://<HOST_IP>:<nodeport>/dashboard

Note

Make sure that the port on which the devtron-service runs remain open in the VM's security group or network security group.


5. Get Admin Login credentials

By default, the username will be admin. Run the below command to get the admin password.

kubectl -n devtroncd get secret devtron-secret \
-o jsonpath='{.data.ADMIN_PASSWORD}' | base64 -d

When you install Devtron for the first time, it creates a default admin user and password (with unrestricted access to Devtron). You can use it to log in as an administrator.

After the initial login, we recommend you set up any Single Sign-On (SSO) service like Google, GitHub, etc., and then add other users (including yourself). Subsequently, all the users can use the same SSO (let's say, GitHub) to log in to the Dashboard.

Last updated