Kubernautics: Kubernetes Monitoring for React Apps

Kubernautics

Kubernautics is an open-source cluster monitoring solution that looks to prioritize ease of deployment, ease of use, and a low resource footprint. The program is placed directly into the cluster it is meant to monitor, and interfaces with your Prometheus deployment to provide detailed, reliable metric data. When you arrive at the UI, at your disposal are two dynamic tools to shape your monitoring experience; the dashboard of prometheus-fed cluster and application metrics, and the kubernetes cluster visualizer.

Built with

Kubernetes Docker Prometheus ChartJS ReactRouter Express React Jest MUI Webpack Helm Javascript npm Node.JS HTML5

Features

1. Realtime Monitoring Dashboard

  • Kubernautics compiles all metrics you want to track and constantly pulls information based off of the custom metric scrape rate

2. Customizable Metrics

  • Kubernautics simplifies the Prometheus scraping tasks and provides additional information to each query task
    homepage

3. Cluster Visualization

  • Kubernautics depicts the interdependencies within your cluster but also employs a color-coded system for ease of navigation
    visualizer

Getting Started with Kubernautics

Building the Container Image

The Kubernautics container image must currently be built from source. Download a copy of this repo, and once inside run --

docker build . -t kubernautics:latest

-- to yield an image that can be deployed into your cluster.

Deploying to your cluster

Kubernautics currently assumes it can communicate with prometheus at the following address --

http://prometheus-kube-prometheus-prometheus:9090

-- which is the default configuration when Prometheus is deployed via the Community Helm Chart. We plan to make this configurable in the future.

For a reference deployment, you can run npm run cluster:prod up from inside the repository. You will need minikube and devspace installed locally on your machine; see the setup guide for developers for more info.

How to Contribute

  1. Fork the Project
  2. Create your Feature Branch based off of Dev
  • git checkout -b feature/NewFeature

Setup/enter the development environment

Commit your Changes

  • git commit -m 'What was changed: Description of the NewFeature'
  1. Push to the Branch
  • git push origin feature/NewFeature
  1. Open a Pull Request (from feature/NewFeature to dev)
  • make sure newest dev branch has been merged

Progress

FeatureStatus
Customizable Cluster Visualizer⏳
Additional Chart Typing⏳
Automate Prometheus Configs/Deployment⏳
Increase Test CoverageπŸ™πŸ»
Reduce Resource UsageπŸ™πŸ»
Deployment with cloud-hosting providersπŸ™πŸ»
  • βœ… = Ready to use
  • ⏳ = In progress
  • πŸ™πŸ» = Looking for contributors

Download details:

Author: oslabs-beta
Source: https://github.com/oslabs-beta/Kubernautics

License: MIT license

#react #reactjs #kubernetes 

Kubernautics: Kubernetes Monitoring for React Apps
1.40 GEEK