This commit is contained in:
parent
4ed9ba0d24
commit
a90630ecb6
98 changed files with 2063 additions and 729 deletions
|
|
@ -1,17 +1,30 @@
|
|||
{ config, pkgs, modulesPath, lib, ... }:
|
||||
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
modulesPath,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
services.grafana.enable = true;
|
||||
services.grafana.settings.server = {
|
||||
http_port = 3000;
|
||||
http_addr = "0.0.0.0";
|
||||
# Grafana needs to know on which domain and URL it's running
|
||||
domain = "grafana.lab";
|
||||
# root_url = "https://monitor.local/grafana/"; # Not needed if it is `https://your.domain/`
|
||||
# serve_from_sub_path = true;
|
||||
services.grafana.settings = {
|
||||
server = {
|
||||
http_port = 3000;
|
||||
http_addr = "0.0.0.0";
|
||||
# Grafana needs to know on which domain and URL it's running
|
||||
domain = "grafana.procopius.dk";
|
||||
root_url = "https://grafana.procopius.dk"; # Not needed if it is `https://your.domain/`
|
||||
# serve_from_sub_path = true;
|
||||
oauth_auto_login = false;
|
||||
};
|
||||
"auth.generic_oauth" = {
|
||||
enabled = false;
|
||||
};
|
||||
"auth" = {
|
||||
disable_login_form = false;
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 3000 ];
|
||||
networking.firewall.allowedTCPPorts = [3000];
|
||||
|
||||
services.grafana = {
|
||||
# declarativePlugins = with pkgs.grafanaPlugins; [ ... ];
|
||||
|
|
@ -33,22 +46,32 @@
|
|||
type = "loki";
|
||||
url = "http://127.0.0.1:${toString config.services.loki.configuration.server.http_listen_port}";
|
||||
}
|
||||
# Some plugins also can - c.f. https://grafana.com/docs/plugins/yesoreyeram-infinity-datasource/latest/setup/provisioning/
|
||||
# {
|
||||
# name = "Infinity";
|
||||
# type = "yesoreyeram-infinity-datasource";
|
||||
# }
|
||||
# But not all - c.f. https://github.com/fr-ser/grafana-sqlite-datasource/issues/141
|
||||
{
|
||||
uid = "influxdb";
|
||||
name = "InfluxDB";
|
||||
type = "influxdb";
|
||||
url = "http://127.0.0.1:8086";
|
||||
access = "proxy";
|
||||
jsonData = {
|
||||
dbName = "proxmox";
|
||||
httpHeaderName1 = "Authorization";
|
||||
};
|
||||
secureJsonData = {
|
||||
httpHeaderValue1 = "Token iY4MTuqUAVJbBkDUiMde";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
# Note: removing attributes from the above `datasources.settings.datasources` is not enough for them to be deleted on `grafana`;
|
||||
# One needs to use the following option:
|
||||
# datasources.settings.deleteDatasources = [ { name = "prometheus"; orgId = 1; } { name = "loki"; orgId = 1; } ];
|
||||
|
||||
dashboards.settings.providers = [{
|
||||
name = "my dashboards";
|
||||
options.path = "/etc/grafana-dashboards";
|
||||
}];
|
||||
dashboards.settings.providers = [
|
||||
{
|
||||
name = "my dashboards";
|
||||
options.path = "/etc/grafana-dashboards";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -59,6 +82,13 @@
|
|||
mode = "0644";
|
||||
};
|
||||
|
||||
environment.etc."grafana-dashboards/traefik-access.json" = {
|
||||
source = ./dashboards/traefik-access.json;
|
||||
user = "grafana";
|
||||
group = "grafana";
|
||||
mode = "0644";
|
||||
};
|
||||
|
||||
environment.etc."grafana-dashboards/grafana-traefik.json" = {
|
||||
source = ./dashboards/grafana-traefik.json;
|
||||
user = "grafana";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue