From 0 to Kubernetes, Step 9 – About dashboards and other necessities

I have already talked a bit about managing my K3S instance in a previous post, but I’m going to pick up that topic again now.

After some experimentation I’ve managed to get the kubernetes dashboard to work behind a traefik http router – and so far it has not dropped down into the permanent “CrashLoopBackoff” state that got me to initially give up on it.

What I basically did was to follow the instructions in this blog post, by downloading the yaml file linked therein, and edit it to use the most current released versions of dashboard and metrics scraper. After that I created a traefic router for it, with this yaml file:

---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
entryPoints:
- websecure
routes:
- match: Host(`dashboard.apps.my.lan`)
kind: Rule
services:
- name: kubernetes-dashboard
port: 80
scheme: http
tls: {}

After the initial shock over how complex and uber informative the kubernetes dashboard is I started to investigate to see what other dashboards are there, and came across this article…

After reading it I decided to check out K8dash, deployed it with the instructions from the homepage, and created this traefik router for it:

---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: ingressroutetls
namespace: kube-system
spec:
entryPoints:
- websecure
routes:
- match: Host(`k8dash.apps.my.lan`)
kind: Rule
services:
- name: k8dash
port: 80
tls: {}

And I believe I already talked about deploying portainer.

So all that is left now is to give a very short feedback to the three dashboards I have now.

  • kubernetes-dashboard:
    easily the most powerful of the three but also the most complex – a lot of things lack information about how they are interconnected, you have to create “the big picture” in your head without much help.
    to create something in your cluster you can apply a yaml or json file either from a web form, or from file, or create an app by filling out a form with the details
  • K8dash:
    not as detailed as kubernetes-dashboard, but it seems to be quite usable.
    the only way to create something in your cluster is to apply a yaml file.
  • Portainer:
    this is what I’m used to – I’ve been using portainer to manage “standalone docker” on three hosts for some years by now.
    portainer has user accounts and its own access control model – the other two require a token that you have to get from your cluster on the commandline.
    Drawback of portainer: some but not all ressources have different names in portainer than what has become the standard. For example, namespaces are called “ressource pools” and deployments are called “apps”. Some other things can’t be accessed at all, for example there’s no (obvious) way to see the custom resource definitions in your cluster.
    If your user account is an administrator, the only way to create anything is to apply a yaml file.

Continued here.

1 thought on “From 0 to Kubernetes, Step 9 – About dashboards and other necessities

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: