Kubernetes UI Dashboard

The Kubernetes Dashboard is a web-based UI for managing Kubernetes clusters and allows users to manage and troubleshoot applications running on Kubernetes

Dependencies

  • None

Installation

You can install kubernetes-dashboard in a few different ways, but we recommend to use the Helmfile.

The Kubernetes dashboard requires heapster to collect and interpret various signals like compute and memory resource usage and lifecycle events.

You can skip heapster installation if there is no need to monitor resources.

Install with Master Helmfile

Run the following commands:

helmfile --selector chart=heapster sync

helmfile --selector chart=kubernetes-dashboard sync

These environment variables are used to configure the service:

Environment variables can be specified in either the Geodesic module’s Dockerfile or with chamber.

Install with Custom Helmfile

Add this code to your Kubernetes Backing Services Helmfile

helmfile

repositories:
- name: "stable"
  url: "https://kubernetes-charts.storage.googleapis.com"

releases:
- name: "kubernetes-dashboard"
  namespace: "kube-system"
  labels:
    chart: "kubernetes-dashboard"
    component: "monitoring"
    namespace: "kube-system"
    vendor: "kubernetes"
    default: "true"
  chart: "stable/kubernetes-dashboard"
  version: "0.6.7"
  set:
    - name: "image.repository"
      value: "k8s.gcr.io/kubernetes-dashboard-amd64"

    - name: "image.tag"
      value: 'v1.8.3'

    - name: "image.pullPolicy"
      value: "IfNotPresent"

    - name: "resources.limits.cpu"
      value: "100m"

    - name: "resources.limits.memory"

      value: "100Mi"

    - name: "resources.requests.cpu"
      value: "50m"

    - name: "resources.requests.memory"
      value: "50Mi"

    - name: "rbac.create"
      value: "false"

    - name: "serviceAccount.create"
      value: "true"

- name: "heapster"
  namespace: "kube-system"
  labels:
    chart: "heapster"
    component: "monitoring"
    namespace: "kube-system"
    vendor: "kubernetes"
    default: "true"
  chart: "stable/heapster"
  version: "0.2.10"
  set:
    - name: "replicaCount"
      value: '1'

    - name: "image.repository"
      value: "k8s.gcr.io/heapster"

    - name: "image.tag"
      value: 'v1.3.0'

    - name: "image.pullPolicy"
      value: "IfNotPresent"

    - name: "resources.limits.cpu"
      value: "100m"

    - name: "resources.limits.memory"
      value: "256Mi"

    - name: "resources.requests.cpu"
      value: "50m"

    - name: "resources.requests.memory"
      value: "128Mi"

Then follow the instructions for running helmfile sync.

Usage

  • Cluster Portal describes usage and how to expose Kubernetes UI Dashboard publicly