Skip to content

Latest commit

 

History

History
109 lines (74 loc) · 3.6 KB

README.md

File metadata and controls

109 lines (74 loc) · 3.6 KB

🚀 ntop - Kubernetes Node & Pod Metrics Tool

ntop-logo

ntop is an open-source tool designed to provide clear and visual insights into the status of nodes and pods in your Kubernetes cluster. Leveraging Kubernetes' metrics server, ntop fetches and displays real-time CPU and memory utilization metrics in an easy-to-consume command-line interface.

GitHub release (with filter) GitHub contributors GitHub Repo stars


📚 Table of Contents

  1. Installation
  2. Usage
  3. Features
  4. What's New in 0.2.0
  5. Development
  6. Roadmap
  7. Contributing
  8. License

🛠 Installation

Prerequisites:

  • Go (1.16 or later)
  • Access to a Kubernetes cluster
  • Kubernetes configuration file (usually at ~/.kube/config)

Build:

Clone the repository and build the tool:

git clone https://github.com/devopswe/ntop
cd ntop
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o ntop-linux-64-0.2.0

🖥 Usage

Ensure the metrics-server is installed on your cluster:

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

Note: If you encounter SSL/TLS errors, modify components.yaml to include the --kubelet-insecure-tls flag.

Run ntop:

./ntop-linux-64-0.2.0 --kubeconfig=path/to/your/kubeconfig

Optional flags:

  • --pods: Switch to pods view.
  • --countpods=<number>: Specify the number of pods to display (default is 10).

Listing Nodes Example:

Example nodes listing of NTOP 0.2.0

Listing Top Pods Example:

Example pods listing of NTOP 0.2.0

⭐ Features

  • Real-time CPU and memory usage metrics for nodes and pods.
  • Toggle between node and pod views with ease.
  • Customize the number of pods displayed.
  • Simple and intuitive command-line interface.

🌟 What's New in 0.2.0

  • New live table display of nodes and pods.
  • --pods flag to easily switch to pod metrics.
  • --countpods flag to specify the number of pods displayed.
  • Improved performance and reduced waiting times.
  • Instantaneous pod data retrieval with the new concurrent structure.
  • Cross-platform availability: Windows, Linux, MacOS (Intel & ARM).

Special thanks to @dbtek and @faruktoptas for their contributions!

🛠 Development

Dependencies:

  • k8s.io/client-go and k8s.io/metrics for Kubernetes interaction.

Use go mod tidy to manage dependencies.

🗺 Roadmap

Our vision for ntop includes:

  1. Modularization: Refactor for maintainability and scalability.
  2. kubectl Plugin: Enhance accessibility and integration.
  3. Enhanced Filtering: Customize data display based on user preferences.
  4. Trend Analysis: Introduce historical data tracking and analysis.
  5. Interactive UI: Develop a terminal-based interactive UI.
  6. Support Additional Resources: Extend monitoring to more Kubernetes resources.

🤝 Contributing

Contributions are welcome! Please follow the standard PR process for your contributions.

📜 License

Licensed under the Apache License, Version 2.0. See the LICENSE file for details.


Enhance your Kubernetes monitoring with ntop. Try it out and let us know your thoughts!