https://github.com/syswe/ntop
ntop is an open source tool that allows you to visually and clearly see the status of all your nodes and filtered pods on Kubernetes stages.
https://github.com/syswe/ntop
go golang kubectl kubectl-plugins kubernetes kubernetes-cluster monitoring monitoring-tool
Last synced: about 1 year ago
JSON representation
ntop is an open source tool that allows you to visually and clearly see the status of all your nodes and filtered pods on Kubernetes stages.
- Host: GitHub
- URL: https://github.com/syswe/ntop
- Owner: syswe
- License: apache-2.0
- Created: 2023-06-25T22:39:11.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-03T22:13:22.000Z (about 2 years ago)
- Last Synced: 2025-01-25T17:29:31.252Z (over 1 year ago)
- Topics: go, golang, kubectl, kubectl-plugins, kubernetes, kubernetes-cluster, monitoring, monitoring-tool
- Language: Go
- Homepage:
- Size: 15.3 MB
- Stars: 28
- Watchers: 2
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🚀 ntop - Kubernetes Node & Pod Metrics Tool

**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.
  
---
## 📚 Table of Contents
1. [Installation](#installation)
2. [Usage](#usage)
3. [Features](#features)
4. [What's New in 0.2.0](#whats-new)
5. [Development](#development)
6. [Roadmap](#roadmap)
7. [Contributing](#contributing)
8. [License](#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:
```bash
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:
```bash
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:
```bash
./ntop-linux-64-0.2.0 --kubeconfig=path/to/your/kubeconfig
```
Optional flags:
- `--pods`: Switch to pods view.
- `--countpods=`: Specify the number of pods to display (default is 10).
### Listing Nodes Example:

### Listing Top Pods Example:

## ⭐ 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](https://github.com/dbtek) and [@faruktoptas](https://github.com/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](LICENSE) file for details.
---
Enhance your Kubernetes monitoring with **ntop**. Try it out and let us know your thoughts!