Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laupse/kubegraph
An "exporter" that will expose Kubernetes ressources (pod, replicaset, deployment, statefulset, daemonset) as Grafana Node Graph
https://github.com/laupse/kubegraph
grafana kubernetes
Last synced: 24 days ago
JSON representation
An "exporter" that will expose Kubernetes ressources (pod, replicaset, deployment, statefulset, daemonset) as Grafana Node Graph
- Host: GitHub
- URL: https://github.com/laupse/kubegraph
- Owner: laupse
- Created: 2022-07-15T15:05:30.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-18T08:03:25.000Z (almost 2 years ago)
- Last Synced: 2024-10-01T15:15:10.743Z (about 1 month ago)
- Topics: grafana, kubernetes
- Language: Go
- Homepage:
- Size: 220 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kubegraph
This repository contains an "exporter" that will expose Kubernetes ressources (pod, replicaset, deployment, statefulset, daemonset) as [Grafana Node Graph](https://grafana.com/docs/grafana/latest/visualizations/node-graph/) data source using this [Grafana Plugin](https://grafana.com/grafana/plugins/hamedkarbasi93-nodegraphapi-datasource/)
https://user-images.githubusercontent.com/98523125/181767308-9af8dd16-80a6-4b15-b39c-704195312a61.mp4
This utilitary can help visualizing how this ressources interact and link with other in a dynamic way.
Great for demonstrating Kubernetes capabilities like rollout.
# Usage
## Deployment
You need a Kubernetes cluster (it could be something like kind or minkube ofc) with Grafana deploy on it.Grafana also needs this [Grafana Plugin](https://grafana.com/grafana/plugins/hamedkarbasi93-nodegraphapi-datasource/) to be installed
Then you can deploy this using :
``` bash
kubectl apply -f manifests/deploy.yml
```Do not forget to add the Node Graph Api using the service dns created by the kubectl command above
## Querying
You can query this datasource directly inside a node panel. It will then show kubernetes ressources in a graph mode.
You can reduce the scope by adding this query parameter :
* `ns` for querying specific namespace
* `selector` for querying specific resources with this labelExample: `ns=proxy&selector=app=nginx` will make the data source return resources in `proxy` namesapce with `app=nginx` labels