mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
82 lines
1.6 KiB
Markdown
82 lines
1.6 KiB
Markdown
# Grafana Kubernetes compatible API Server
|
|
|
|
## Basic Setup
|
|
|
|
```ini
|
|
[feature_toggles]
|
|
kubernetesPlaylists = true
|
|
```
|
|
|
|
Start Grafana:
|
|
|
|
```bash
|
|
make run
|
|
```
|
|
|
|
## Enable dual write to `etcd`
|
|
|
|
Start `etcd`:
|
|
```bash
|
|
make devenv sources=etcd
|
|
```
|
|
|
|
Set storage type and etcd server address in `custom.ini`:
|
|
|
|
```ini
|
|
[grafana-apiserver]
|
|
storage_type = etcd
|
|
etcd_servers = 127.0.0.1:2379
|
|
```
|
|
|
|
## Enable dual write to JSON files:
|
|
|
|
Set storage type:
|
|
|
|
```ini
|
|
[grafana-apiserver]
|
|
storage_type = file
|
|
```
|
|
|
|
Objects will be written to disk under the `{data.path}/grafana-apiserver/` directory.
|
|
|
|
For example:
|
|
|
|
```
|
|
data/grafana-apiserver
|
|
├── grafana.kubeconfig
|
|
└── playlist.grafana.app
|
|
└── playlists
|
|
└── default
|
|
└── hi.json
|
|
```
|
|
|
|
## Enable aggregation
|
|
|
|
See [aggregator/README.md](./aggregator/README.md) for more information.
|
|
|
|
### `kubectl` access
|
|
|
|
For kubectl to work, grafana needs to run over https. To simplify development, you can use:
|
|
|
|
```ini
|
|
app_mode = development
|
|
|
|
[feature_toggles]
|
|
grafanaAPIServerEnsureKubectlAccess = true
|
|
kubernetesPlaylists = true
|
|
```
|
|
|
|
This will create a development kubeconfig and start a parallel ssl listener. It can be registered by
|
|
navigating to the root grafana folder, then running:
|
|
```bash
|
|
export KUBECONFIG=$PWD/data/grafana-apiserver/grafana.kubeconfig
|
|
kubectl api-resources
|
|
```
|
|
|
|
### Grafana API Access
|
|
|
|
The Kubernetes compatible API can be accessed using existing Grafana AuthN at: [http://localhost:3000/apis](http://localhost:3000/apis).
|
|
|
|
The equivalent openapi docs can be seen in [http://localhost:3000/swagger](http://localhost:3000/swagger),
|
|
select the relevant API from the dropdown in the upper right.
|