Skip to content

surajstaabi/kubectleNav

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KubectleNav v2.0

A modern, split-pane Kubernetes Pod Health & Log Viewer.

KubectleNav is a lightweight GUI tool for developers and SREs to monitor pod health and stream logs in real-time. It replaces the traditional "dropdown ritual" with a reactive dashboard that provides instant visibility into pod health.


✨ New in v2.0

  • Split-Pane Dashboard: Keep an eye on pod statuses on the left while streaming logs on the right.
  • 1-Click Streaming: Simply click a pod card to immediately populate containers and start logs.
  • Health Indicators: Color-coded status dots and left bars for rapid scanning (Running, Pending, Degraded, CrashLoop).
  • Resource Visualization: Live CPU and Memory usage bars for every pod (using kubectl top).
  • Quick Actions: Context-aware buttons for failure states (View Previous Logs, Filter Events).
  • Auto-Refresh: Status list updates in the background on a configurable interval (30s/60s).

🚀 Quick Start

  1. Clone the repository.
  2. Install dependencies:
    pip install -r requirements.txt
    Note: On Linux, ensure python3-tk is installed.
  3. Run the app:
    python main.py
  4. Build & Install (Linux):
    bash build_executable.sh
    This will bundle the app into a single binary, create a symlink, add it to your PATH, and deploy a Linux Desktop shortcut.

🛠 Features

📋 Pod Status Sidebar

  • Real-time scanning: See which pods are failing without clicking through namespaces.
  • Restart Tracking: Badges highlight pods with frequent restarts (Amber 1-4, Red 5+).
  • Advanced Filtering: Filter by name (text search) or status (e.g., show only "Warning" pods).

📄 Log Viewer

  • Live Streaming: Seamlessly follow logs with auto-scroll.
  • Search (Ctrl+F): Find specific text or errors within the log output.
  • Previous Logs: Recover logs from crashed containers with one click.

📡 Pod Summary Strip

  • System Metrics: View instantaneous CPU/RAM usage relative to pod limits.
  • Collapsible UI: Shrink the summary area to maximize log viewing space.

🏗 Developer Architecture

The project is modularized for easy contribution:

  • main.py: Entry point.
  • app.py: Logic coordinator and threading.
  • ui/: UI components (TopBar, PodList, LogPanel).
  • kubectl/: Subprocess wrappers and JSON parsers.
  • models.py: Data models (PodInfo).
  • config.py: Persistent user settings (~/.kubectlenav_config.json).

📋 Prerequisites

  • Python 3.10+ (tested on 3.12)
  • kubectl (configured in your PATH)
  • metrics-server (optional, required for CPU/MEM bars)

📜 License

MIT


Made by mochiron-desu

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors