Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/K-Phoen/dark
(grafana) Dashboards As Resources in Kubernetes
https://github.com/K-Phoen/dark
dashboard dashboard-configuration dashboards grafana grafana-dashboard hacktoberfest kubernetes kubernetes-controller kubernetes-crd yaml
Last synced: about 1 month ago
JSON representation
(grafana) Dashboards As Resources in Kubernetes
- Host: GitHub
- URL: https://github.com/K-Phoen/dark
- Owner: K-Phoen
- License: mit
- Created: 2020-03-21T15:55:55.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-07-31T06:29:52.000Z (4 months ago)
- Last Synced: 2024-10-18T09:07:41.369Z (about 2 months ago)
- Topics: dashboard, dashboard-configuration, dashboards, grafana, grafana-dashboard, hacktoberfest, kubernetes, kubernetes-controller, kubernetes-crd, yaml
- Language: Go
- Homepage:
- Size: 43.1 MB
- Stars: 428
- Watchers: 8
- Forks: 21
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-repositories - K-Phoen/dark - (grafana) Dashboards As Resources in Kubernetes (Go)
- awesome-devops - dark - (grafana) Dashboards As Resources in Kubernetes (Kubernetes / Kubernetes // Grafana)
- awesome-cloud-native - DARK - Dashboards As Resources in Kubernetes. (Observability)
README
# DARK
[![codecov](https://codecov.io/gh/K-Phoen/dark/branch/master/graph/badge.svg)](https://codecov.io/gh/K-Phoen/dark)
**D**ashboards **A**s **R**esources in **K**ubernetes.
DARK provides a way to define and deploy Grafana dashboards via Kubernetes, next to the services they monitor.
If you are looking for a way to version your dashboards and deploy them across all environments, like you would do
with your services, then this project is meant for you.In addition to dashboards, DARK can also manage:
* [data sources](./docs/index.md#data-sources)
* [API keys](./docs/usage/creating-api-keys.md)
* [alert manager configuration](./docs/index.md#alerting-configuration) (alert routing, notification policies, ...)## Design goals
* full description of dashboards via YAML
* integration with `kubectl`
* seamless integration with Grafana
* delegate YAML decoding and dashboard generation to [Grabana](https://github.com/K-Phoen/grabana)## Non-goals
* creation and operation of Grafana instances themselves. For that, check out [`grafana-operator/grafana-operator`](https://github.com/grafana-operator/grafana-operator)
## See also
* [`grafana-foundation-sdk`](https://github.com/grafana/grafana-foundation-sdk/): A set of tools, types and libraries for building and manipulating Grafana objects – built by Grafana Labs
* [`grabana`](https://github.com/K-Phoen/grabana): User-friendly Go library for building Grafana dashboards## Example dashboard
```yaml
apiVersion: k8s.kevingomez.fr/v1
kind: GrafanaDashboard
metadata:
name: example-dashboard
namespace: monitoring
annotations:
dark/folder: "Awesome folder"
spec:
title: Awesome dashboard
shared_crosshair: true
tags: [generated, yaml]
auto_refresh: 10svariables:
- interval:
name: interval
label: interval
default: 1m
values: [30s, 1m, 5m, 10m, 30m, 1h, 6h, 12h]rows:
- name: Prometheus
panels:
- timeseries:
title: HTTP Rate
datasource: prometheus-default
targets:
- prometheus:
query: "rate(promhttp_metric_handler_requests_total[$interval])"
legend: "{{ handler }} - {{ code }}"- graph:
title: Heap allocations
datasource: prometheus-default
targets:
- prometheus:
query: "go_memstats_heap_alloc_bytes"
legend: "{{ job }}"
```More examples can be found in the [`examples/`](./examples) folder
## Installation & usage
Check out [the documentation](docs/index.md) to dig deeper into how to set up and use DARK.
## Adopters
[Companies using DARK](ADOPTERS.md).
## They talk about DARK
* [Creating a Grafana Dashboard with Kubernetes Resource Objects — SoByte](https://www.sobyte.net/post/2021-11/use-crd-create-grafana-dashboard/)
* [How VOI went DARK — VOI Technology](https://medium.com/voi-engineering/how-voi-went-dark-afb43c45f094)## License
This library is under the [MIT](LICENSE) license.