The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
grafana/pkg/services/grafana-apiserver
Todd Treece 4203a83538
K8s: Prevent user impersonation (#78555)
2 years ago
..
auth/authorizer K8s: Prevent user impersonation (#78555) 2 years ago
endpoints/request K8s: Move the namespace mapper to the same package that resolves them (#77101) 2 years ago
registry/generic K8s/Playlist: Support full CRUD from k8s to existing storage (#75709) 2 years ago
rest K8s: Add etcd tests for dual write (local) (#78161) 2 years ago
storage/file K8s: Add etcd tests for dual write (local) (#78161) 2 years ago
utils K8s: Improve table converter (support non runtime.Object values) (#77816) 2 years ago
README.md K8s: JSON file storage (#75759) 2 years ago
common.go K8s: Add subresource to the example apiserver (#78030) 2 years ago
config.go FeatureToggles: Add context and and an explicit global check (#78081) 2 years ago
config_test.go Settings: Actually deprecate access to feature flags (#78073) 2 years ago
log.go K8s: Remove duplicate listener in production (#76583) 2 years ago
openapi.go Chore: Upgrade Go to 1.21.3 (#77304) 2 years ago
request_handler.go K8s: Add subresource to the example apiserver (#78030) 2 years ago
service.go K8s: Add etcd tests for dual write (local) (#78161) 2 years ago
wireset.go K8s: Implement playlist api with k8s client (#77405) 2 years ago

README.md

Grafana Kubernetes compatible API Server

Basic Setup

app_mode = development

[feature_toggles]
grafanaAPIServer = true
kubernetesPlaylists = true

Start Grafana:

make run

Enable dual write to etcd

Start etcd:

make devenv sources=etcd

Set storage type and etcd server address in custom.ini:

[grafana-apiserver]
storage_type = etcd
etcd_servers = 127.0.0.1:2379

Enable dual write to JSON files:

Set storage type:

[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

kubectl access

From the root of the Grafanaa repository, run the following:

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.