kdash 0.0.7

A fast and simple dashboard for Kubernetes
kdash-0.0.7 is not a library.

KDash - A fast and simple dashboard for Kubernetes

Note: This is a beta version and is being actively developed. Feedback, feature requests and contributions are welcome

 _  __ ___             _
| |/ /|   \  __ _  ___| |_
| ' < | |) |/ _` |(_-<| ' \
|_|\_\|___/ \__,_|/__/|_||_|

A simple terminal dashboard for Kubernetes built with Rust

UI

Installation

Homebrew (Mac & Linux)

brew tap kdash-rs/kdash
brew install kdash

# If you need to be more specific, use:
brew install kdash-rs/kdash/kdash

Chocolatey

TODO

Install script

TODO

Manual

Binaries for macOS, Linux and Windows are available on the releases page

Docker

Run KDash as a Docker container by mounting your KUBECONFIG. For example the below for default path

docker run --rm -it -v ~/.kube/config:/root/.kube/config deepu105/kdash

You can also clone this repo and run make docker to build a docker image locally and run it using above command

Note: This may not work properly if you run Kubernetes locally using Minikube or Kind

Cargo

If you have Cargo installed then you install KDash from crates.io

cargo install kdash

You can also clone the repo and run cargo run or make to build and run the app

Note:: On Linux you might need to have package xorg-dev (Debian/Ubuntu) or xorg-x11-server-devel (Fedora) or equivalent installed for the copy to clipboard features to work

USAGE:

Press ? while running the app to see keybindings

FLAGS:

  • -h, --help: Prints help information
  • -V, --version: Prints version information
  • -t, --tick-rate <tick-rate>: Set the tick rate (milliseconds): the lower the number the higher the FPS.
  • -p, --poll-rate <poll-rate>: Set the network call polling rate (milliseconds, should be multiples of tick-rate): the lower the number the higher the network calls.

Features & Todos

  • CLI Info
  • Resource Watch (configurable polling interval with -p flag)
    • Pods
    • Nodes
    • Namespace
    • Services
    • Containers
    • ConfigMaps
    • StatefulSets
    • ReplicaSets
    • Deployments
  • Describe resources
    • Pods
    • Nodes
    • Services
    • Deployments
    • ConfigMaps
    • StatefulSets
    • ReplicaSets
    • select/copy output
    • as YAML
  • Stream logs/events
    • Containers
    • Services
    • Deployments
    • StatefulSets
    • select/copy output
  • Context
    • Context info
    • Node metrics
    • Context watch
    • Change namespace?
    • Context switch
  • Resources utilizations for nodes, pods and namespaces based on metrics server
  • Dark/Light themes
  • Custom keymap
  • Custom theme
  • Tests, a lot of them :)

Screenshots

Overview screen

UI

Container logs screen (light theme)

UI

Pod describe screen (light theme)

UI

Contexts screen

UI

Utilization screen

UI

Libraries used

How does this compare to K9S?

K9S is a beast compared to this as it offers way more features including CRUD actions.

KDash only offers a view of most used resources with a focus on speed and UX. Hence the UI/UX is designed to be more user friendly and easier to navigate with contextual help everywhere and a tab system to switch between different resources easily.

At least for now there are no plans to add CRUD for resources

Licence

MIT

Authors