GithubHelp home page GithubHelp logo

kryndex / kubedash Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kubernetes-retired/kubedash

0.0 1.0 0.0 4.07 MB

Analytics dashboard for Kubernetes

License: Apache License 2.0

Makefile 0.87% JavaScript 53.27% Go 8.55% Shell 8.67% HTML 28.56% CSS 0.07%

kubedash's Introduction

Kubedash

Performance analytics UI for Kubernetes Clusters.

The goal of Kubedash is to allow the user or an administrator of a Kubernetes cluster to easily verify and understand the performance of a cluster and jobs running within it through intuitive visualizations of aggregated metrics, derived stats and event patterns. It is not intended to be a general-purpose Kubernetes UI. Instead, kubedash uses multiple sources of information to summarize and provide high-level analytic information to users and to the cluster administrator.

Some of the current features are:

  • Resource utilization views of Cluster, Nodes, Namespaces, Pods and Containers for the past 1 hour.
  • Derived stats for each resource over the past 1 day.
  • Indications of containers with no resource limits.

Future features include the following:

  • Recommendations of resource limits for individual containers.
  • Detecting and highlighting resource starvation in a cluster.
  • Detecting and highlighting crash-looping and misbehaving containers.
  • Support for other cluster management systems like CoreOS, Swarm, etc.

Usage

To use Kubedash, the following are required:

  • A Kubernetes cluster of v1.0 or higher is operational and accessible from kubectl.
  • For Kubernetes <1.2 Heapster v0.18.0 is running as the heapster service on the kube-system namespace.

After cloning this repository, use the following command to create the Kubedash pod:

For Kubernets 1.0 and 1.1:

kubectl create -f deploy/kube-config.yaml

For Kubernetes 1.2 and higher:

kubectl create -f deploy/bundle.yaml

To access the Kubedash UI, visit the following URL: https://<kubernetes-master>/api/v1/proxy/namespaces/kube-system/services/kubedash/ where <kubernetes-master> is the IP address of the kubernetes master node.

Implementation

Kubedash is based on three components-

Heapster provides the data for Kubedash. Heapster runs as a service by default in all kubernetes clusters, collecting metrics and analytics for individual containers. The Heapster Model exposes aggregated metrics and statistics that are relevant for cluster-level analytics through a RESTful API.

Kubedash provides the other two pieces - a web server relaying REST calls, managing sockets and providing additional authentication and, a frontend to provide visualizations for the aggregated metrics and statistics of interest.

Heapster in Kubernetes 1.2 is not compatibile with the current version of Kubedash. For Kubernetes 1.2 we suggest deploying Kubedash with an older Heapster version running inside a single Pod. See this for details.

##License

The work done has been licensed under Apache License 2.0.The license file can be found here. You can find out more about license,at

http://www.apache.org/licenses/LICENSE-2.0

kubedash's People

Contributors

aclisp avatar afein avatar bbigras avatar chris-codaio avatar derekwaynecarr avatar gosharplite avatar mwielgus avatar ramitsurana avatar rjnagal avatar rsmitty avatar vishh avatar vmarmol avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.