Skip to content

A simple tool to monitor jobs/pods in kubernetes, TUI version.

License

Notifications You must be signed in to change notification settings

vios-s/kubmonitor_cli

Repository files navigation

KubMonitor Logo

KubMonitor CLI

A beautiful, nvitop-style Kubernetes monitor for your terminal.

PyPI Version Python Version License Build Status


✨ Overview

KubMonitor provides a real-time, high-fidelity dashboard for your Kubernetes clusters directly in your terminal. Inspired by tools like nvitop and btop, it combines cluster quotas with local machine metrics in a slick, responsive TUI (Terminal User Interface).

KubMonitor Demo

🚀 Features

  • 📊 Real-time Dashboard: Live updates of CPU, Memory, and GPU usage.
  • ☸️ Namespace Scoped: Monitor specific Kubernetes namespaces with ease.
  • 💻 Hybrid Metrics: View both K8s Cluster Quotas and Local Machine stats side-by-side.
  • ⚡ Reactive TUI: Built with Refreshed layouts using Rich.
  • 🖥️ Cross-Platform: Works seamlessly on Linux, macOS, and Windows.

📦 Installation

Install via pip:

pip install kubmonitor-cli

Or install from source:

git clone https://github.com/vios-s/kubmonitor-cli.git
cd kubmonitor-cli
pip install .

🎮 Usage

Getting Help

View all available options and usage information:

kubmonitor --help
# or
kubmonitor -h

Check the version:

kubmonitor --version
# or
kubmonitor -V

Monitor a Namespace

Simply run the command followed by the target namespace:

kubmonitor <namespace>

Example:

kubmonitor eidf098ns

If no namespace is specified, it defaults to default:

kubmonitor

Mock Mode (Testing/Debug)

For testing or debugging purposes without requiring access to a Kubernetes cluster, you can use the --mock flag to run KubMonitor with simulated data:

kubmonitor --mock

Note: When using --mock, you cannot specify a namespace. Mock mode uses generated test data and doesn't connect to a real cluster.

This will generate realistic mock data including:

  • Simulated resource quotas (CPU, Memory, GPU)
  • Mock Kubernetes jobs with various states (running, completed, failed)
  • Mock pods with realistic resource usage patterns
  • Generated timestamps and durations

Keyboard Shortcuts

Key Description
/ Navigate up and down
q Quit the application
Ctrl+C Force Exit

🛠️ Technology Stack

  • Rich: For beautiful terminal formatting and layout.
  • Psutil: For retrieving local system metrics.
  • Kubectl: Under the hood, it uses your local kubectl configuration to fetch cluster data.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❤️ by yyx

About

A simple tool to monitor jobs/pods in kubernetes, TUI version.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages